:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}body{margin:0;min-width:320px;min-height:100vh;background-color:#f8fafc}*{box-sizing:border-box}:root{color-scheme:light dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #64748b;--border-primary: #e2e8f0;--border-secondary: rgba(229, 231, 235, .8);--accent-primary: #3b82f6;--accent-secondary: #1e40af;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--sidebar-bg: #ffffff;--sidebar-text: #64748b;--card-shadow: 0 1px 3px rgba(0, 0, 0, .1)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--border-primary: #334155;--border-secondary: rgba(51, 65, 85, .8);--accent-primary: #3b82f6;--accent-secondary: #60a5fa;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--sidebar-bg: #0f172a;--sidebar-text: #64748b;--card-shadow: 0 4px 12px rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background-color .3s ease,color .3s ease}#root{width:100%;min-height:100vh}.app{width:100%;min-height:100vh;background-color:var(--bg-primary)}.card{background:var(--bg-secondary);border-radius:16px;padding:1.75rem;box-shadow:var(--card-shadow);border:1px solid var(--border-primary);display:flex;flex-direction:column;gap:.75rem;transition:background-color .3s ease,border-color .3s ease}.card h2{margin:0;font-size:1.4rem;color:var(--text-primary)}.card p{margin:0;color:var(--text-secondary)}.app-footer{text-align:left;color:var(--text-tertiary)}code{font-family:Fira Code,JetBrains Mono,SFMono-Regular,Monaco,Consolas,Liberation Mono,monospace;background:var(--bg-tertiary);border-radius:6px;padding:.15rem .35rem;color:var(--text-primary)}@media (max-width: 600px){#root{padding:2.5rem 1.5rem 3rem}.app-header h1{font-size:2rem}}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--card-bg, #ffffff);border-radius:12px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color, #e0e0e0)}.modal-header h2{margin:0;font-size:24px;color:var(--text-primary, #333)}.modal-close{background:none;border:none;cursor:pointer;color:var(--text-secondary, #666);padding:4px;border-radius:4px;transition:all .2s}.modal-close:hover{background-color:var(--hover-bg, #f5f5f5);color:var(--text-primary, #333)}.modal-form{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary, #333);font-size:14px}.required{color:#e74c3c}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid var(--border-color, #ddd);border-radius:8px;font-size:14px;font-family:inherit;background-color:var(--input-bg, #fff);color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #667eea);box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group textarea:disabled{background-color:var(--disabled-bg, #f5f5f5);cursor:not-allowed;opacity:.6}.form-group textarea{resize:vertical;min-height:80px}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:8px;padding:12px;margin-bottom:16px;color:#c33;font-size:14px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:0;margin-top:24px}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background-color:var(--secondary-bg, #e0e0e0);color:var(--text-primary, #333)}.btn-secondary:hover:not(:disabled){background-color:var(--secondary-hover, #d0d0d0)}.success-content{padding:24px}.success-message{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;padding:16px;border-radius:8px;margin-bottom:24px;text-align:center;font-weight:600}.game-details{background-color:var(--card-bg-secondary, #f8f9fa);border-radius:8px;padding:20px;margin-bottom:20px}.detail-item{margin-bottom:16px}.detail-item:last-child{margin-bottom:0}.detail-item label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.detail-value{display:flex;align-items:center;gap:8px}.detail-value code{flex:1;background-color:var(--code-bg, #2d3748);color:var(--code-text, #68d391);padding:10px 12px;border-radius:6px;font-family:Courier New,monospace;font-size:13px;overflow-x:auto;white-space:nowrap}.detail-value code.api-key{font-size:11px}.detail-value strong{color:var(--text-primary, #333);font-size:16px}.copy-btn{background:none;border:1px solid var(--border-color, #ddd);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s}.copy-btn:hover{background-color:var(--hover-bg, #f0f0f0);border-color:var(--primary-color, #667eea);transform:scale(1.05)}.info-box{background-color:#fff3cd;border:1px solid #ffd666;border-radius:8px;padding:16px;margin-top:16px}.info-box p{margin:0 0 12px;font-size:14px;color:#856404}.info-box p:last-child{margin-bottom:0}.unity-example{background-color:#fff;border-radius:6px;padding:12px;margin-top:12px}.code-block{display:block;background-color:#2d3748;color:#e2e8f0;padding:12px;border-radius:6px;font-family:Courier New,monospace;font-size:12px;line-height:1.6;margin-top:8px;overflow-x:auto}.code-block .highlight{color:#68d391;font-weight:700}@media (prefers-color-scheme: dark){.modal-content{--card-bg: #1a1a1a;--card-bg-secondary: #252525;--text-primary: #ffffff;--text-secondary: #a0a0a0;--border-color: #333;--input-bg: #252525;--hover-bg: #333;--disabled-bg: #2a2a2a;--secondary-bg: #333;--secondary-hover: #444}.copy-btn{background-color:#2a2a2a}.copy-btn:hover{background-color:#333}}@media (max-width: 768px){.modal-content{width:95%;max-height:95vh}.modal-header,.modal-form,.success-content{padding:16px}.modal-header h2{font-size:20px}.code-block{font-size:10px}}.sidebar{position:fixed;top:0;left:0;height:100vh;width:280px;background:var(--sidebar-bg);color:var(--text-primary);display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000;box-shadow:var(--card-shadow);border-right:1px solid var(--border-primary)}.sidebar.collapsed{width:80px}.mobile-menu-btn{display:none;position:fixed;top:20px;left:20px;z-index:1001;background:var(--sidebar-bg);color:var(--text-primary);border:none;border-radius:8px;padding:8px;cursor:pointer;transition:all .2s ease}.mobile-menu-btn:hover{background:var(--bg-tertiary)}.mobile-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:999}.sidebar-header{padding:24px 20px;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between;min-height:80px}.logo-section{display:flex;align-items:center;gap:12px;flex:1}.logo-icon{color:#60a5fa;flex-shrink:0}.logo-text h1{font-size:24px;font-weight:700;margin:0;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-text span{font-size:12px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px}.collapse-btn,.close-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.collapse-btn:hover,.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.desktop-only{display:flex}.mobile-only{display:none}.sidebar .game-info{padding:16px;margin:0 12px 20px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-primary)}[data-theme=light] .sidebar .game-info{background:#e2e8f0;border:1px solid #cbd5e1}[data-theme=dark] .sidebar .game-info{background:#33415580;border:1px solid rgba(148,163,184,.2)}.game-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;min-width:0}.game-icon{background:#3b82f633;padding:8px;border-radius:8px;color:#60a5fa;flex-shrink:0}.game-details{flex:1;min-width:0;background:transparent;overflow:hidden}.game-name{font-size:14px;font-weight:600;color:var(--text-primary);background:transparent;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-id{font-size:10px;color:var(--text-tertiary);margin:0 0 8px;font-family:Monaco,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block}.sidebar.collapsed .game-id{display:none}.game-description{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.4}.games-section{border-top:1px solid var(--border-primary);padding-top:12px}.games-toggle{display:flex;align-items:center;justify-content:space-between;padding:8px 0;cursor:pointer;color:var(--text-tertiary);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;transition:color .2s ease}.games-toggle:hover{color:var(--text-primary)}.games-list{margin-top:8px;display:flex;flex-direction:column;gap:4px}.games-list{display:flex;flex-direction:column;gap:4px;padding:8px 0}.game-item-wrapper{display:flex;align-items:center;gap:4px;position:relative}.game-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:none;border:none;color:var(--text-tertiary);font-size:12px;border-radius:6px;cursor:pointer;transition:all .2s ease;text-align:left;flex:1}.game-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.game-item.active{background:#3b82f633;color:#60a5fa}.game-item-delete{display:flex;align-items:center;justify-content:center;padding:6px;background:#ef44441a;border:none;border-radius:4px;color:#ef4444;cursor:pointer;opacity:0;transition:all .2s ease}.game-item-wrapper:hover .game-item-delete{opacity:1}.game-item-delete:hover{background:#ef444433;transform:scale(1.1)}.game-item.add-game{border-top:1px solid var(--border-primary);margin-top:4px;padding-top:12px;color:#60a5fa}.game-item.add-game:hover{background:#3b82f61a}.game-item-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{flex:1;padding:20px 0;overflow-y:auto}.nav-list{list-style:none;margin:0;padding:0}.nav-item{margin:4px 12px}.nav-link{display:flex;align-items:center;gap:12px;padding:12px 16px;border:none;background:none;color:var(--text-tertiary);text-decoration:none;border-radius:8px;transition:all .2s ease;cursor:pointer;width:100%;text-align:left;font-size:14px;font-weight:500;position:relative;overflow:hidden}.nav-link:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:translate(2px)}.nav-link.active{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 12px #3b82f64d}.nav-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#60a5fa}.nav-icon{flex-shrink:0}.nav-label{font-weight:500}.sidebar.collapsed .nav-link{justify-content:center;padding:12px}.sidebar.collapsed .nav-label{display:none}.sidebar-footer{padding:20px;border-top:1px solid var(--border-primary);margin-top:auto}.footer-content{text-align:center;display:flex;flex-direction:column;gap:12px}.theme-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:var(--bg-tertiary);border:none;border-radius:8px;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .2s ease}.theme-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary);opacity:.8}.theme-toggle-collapsed{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-tertiary);border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;margin:0 auto}.theme-toggle-collapsed:hover{background:var(--bg-tertiary);color:var(--text-primary);opacity:.8}.version{font-size:12px;color:var(--text-tertiary);margin:0}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:280px}.sidebar.mobile-open{transform:translate(0)}.mobile-menu-btn{display:flex}.mobile-overlay{display:block}.desktop-only{display:none}.mobile-only{display:flex}.sidebar.collapsed{width:280px}}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.sidebar.collapsed .nav-link{position:relative}.sidebar.collapsed .nav-link:hover:after{content:attr(title);position:absolute;left:100%;top:50%;transform:translateY(-50%);background:var(--bg-secondary);color:var(--text-primary);padding:8px 12px;border-radius:6px;font-size:12px;white-space:nowrap;z-index:1000;margin-left:8px;box-shadow:var(--card-shadow);opacity:0;animation:tooltip-fade-in .2s ease forwards}@keyframes tooltip-fade-in{to{opacity:1}}.ai-chat-widget{position:fixed;bottom:80px;right:20px;z-index:1000;width:380px;max-width:calc(100vw - 40px);max-height:calc(100vh - 140px);transition:all .3s cubic-bezier(.4,0,.2,1);transform:translateY(100%);opacity:0;pointer-events:none}.ai-chat-widget.open{transform:translateY(0);opacity:1;pointer-events:all}.widget-container{background:var(--card-background, white);border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid var(--border-color, #e2e8f0);overflow:hidden;display:flex;flex-direction:column;height:500px}.widget-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.widget-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.95rem}.widget-actions{display:flex;align-items:center;gap:8px}.examples-toggle{width:24px;height:24px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#fff3;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;font-weight:700;transition:all .2s ease}.examples-toggle:hover{background:#ffffff4d;transform:scale(1.05)}.widget-close{width:24px;height:24px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#fff3;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.widget-close:hover{background:#ffffff4d;transform:scale(1.05)}.widget-examples{background:var(--background-secondary, #f7fafc);border-bottom:1px solid var(--border-color, #e2e8f0);padding:12px;max-height:150px;overflow-y:auto}.examples-title{font-size:.8rem;font-weight:600;color:var(--text-secondary, #4a5568);margin-bottom:8px}.example-group{margin-bottom:8px}.example-category-title{font-size:.75rem;font-weight:500;color:var(--text-secondary, #4a5568);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.example-button{display:block;width:100%;text-align:left;padding:6px 8px;margin:2px 0;background:var(--card-background, white);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;color:var(--text-primary, #1a202c);font-size:.75rem;cursor:pointer;transition:all .2s ease}.example-button:hover:not(:disabled){background:var(--primary-color, #667eea);color:#fff;border-color:var(--primary-color, #667eea);transform:translateY(-1px)}.example-button:disabled{opacity:.6;cursor:not-allowed}.widget-messages{flex:1;overflow-y:auto;padding:12px;background:var(--background-color, #f8fafc);scroll-behavior:smooth}.widget-message{margin-bottom:12px;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.widget-message.user{align-items:flex-end}.widget-message.ai{align-items:flex-start}.widget-message-content{max-width:85%;padding:10px 12px;border-radius:12px;font-size:.85rem;line-height:1.4}.widget-message.user .widget-message-content{background:var(--primary-color, #667eea);color:#fff;border-bottom-right-radius:4px}.widget-message.ai .widget-message-content{background:var(--card-background, white);color:var(--text-primary, #1a202c);border:1px solid var(--border-color, #e2e8f0);border-bottom-left-radius:4px;box-shadow:0 1px 3px #0000001a}.widget-message-text{margin-bottom:6px;white-space:pre-wrap}.widget-message-insights{margin-top:8px;padding:8px;background:#667eea1a;border-left:3px solid var(--primary-color, #667eea);border-radius:0 4px 4px 0}.insights-header{font-size:.75rem;font-weight:600;color:var(--primary-color, #667eea);margin-bottom:4px}.insight-item{font-size:.75rem;color:var(--text-secondary, #4a5568);margin-bottom:2px;padding-left:8px;position:relative}.insight-item:before{content:"•";position:absolute;left:0;color:var(--primary-color, #667eea)}.widget-message-data{margin-top:8px;padding:8px;background:var(--background-secondary, #f7fafc);border-radius:6px;border:1px solid var(--border-color, #e2e8f0)}.data-header{font-size:.75rem;font-weight:600;color:var(--text-primary, #1a202c);margin-bottom:6px}.data-list{display:flex;flex-direction:column;gap:4px}.data-row{display:flex;justify-content:space-between;align-items:center;padding:4px 6px;background:var(--card-background, white);border-radius:4px;border:1px solid var(--border-color, #e2e8f0)}.data-metric{font-size:.75rem;color:var(--text-secondary, #4a5568);text-transform:capitalize}.data-value{font-size:.8rem;font-weight:600;color:var(--primary-color, #667eea)}.widget-message-meta{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:4px;border-top:1px solid rgba(0,0,0,.1);font-size:.65rem;opacity:.7}.widget-message.user .widget-message-meta{border-top-color:#fff3;color:#fffc}.widget-timestamp{font-style:italic}.widget-confidence{font-weight:500}.widget-typing{display:flex;align-items:center;gap:4px;padding:8px 0}.widget-typing span{width:6px;height:6px;border-radius:50%;background:var(--primary-color, #667eea);animation:typingWidget 1.5s infinite}.widget-typing span:nth-child(2){animation-delay:.2s}.widget-typing span:nth-child(3){animation-delay:.4s}@keyframes typingWidget{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.widget-input{display:flex;gap:8px;padding:12px;background:var(--card-background, white);border-top:1px solid var(--border-color, #e2e8f0)}.widget-input textarea{flex:1;min-height:32px;max-height:80px;padding:8px 10px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;font-family:inherit;font-size:.85rem;resize:none;background:var(--background-color, #f8fafc);color:var(--text-primary, #1a202c);transition:border-color .2s ease;outline:none}.widget-input textarea:focus{border-color:var(--primary-color, #667eea);box-shadow:0 0 0 2px #667eea1a}.widget-input textarea:disabled{opacity:.6;cursor:not-allowed}.widget-send{padding:8px;background:var(--primary-color, #667eea);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px}.widget-send:hover:not(:disabled){background:var(--primary-dark, #5a67d8);transform:translateY(-1px)}.widget-send:disabled{opacity:.6;cursor:not-allowed;transform:none}.ai-chat-toggle{position:fixed;bottom:20px;right:20px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px -5px #667eea66;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1001;overflow:hidden}.ai-chat-toggle:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 15px 30px -5px #667eea80}.ai-chat-toggle.open{transform:rotate(0)}.toggle-pulse{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);animation:pulse 2s infinite}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:1}70%{transform:translate(-50%,-50%) scale(1.8);opacity:0}to{transform:translate(-50%,-50%) scale(1.8);opacity:0}}@media (max-width: 768px){.ai-chat-widget{bottom:70px;right:10px;left:10px;width:auto;max-width:none}.widget-container{height:400px;border-radius:12px}.widget-header{padding:12px 16px}.widget-title{font-size:.9rem}.widget-messages{padding:8px}.widget-message-content{max-width:90%;font-size:.8rem}.widget-input{padding:8px}.widget-input textarea{font-size:16px}.ai-chat-toggle{bottom:15px;right:15px;width:48px;height:48px}}@media (prefers-color-scheme: dark){.widget-container{background:#1a202c;border-color:#2d3748}.widget-examples{background:#2d3748;border-color:#4a5568}.widget-messages{background:#2d3748}.widget-message.ai .widget-message-content{background:#1a202c;border-color:#4a5568;color:#e2e8f0}.widget-input{background:#1a202c;border-color:#4a5568}.widget-input textarea{background:#2d3748;color:#e2e8f0;border-color:#4a5568}}.dashboard{padding:32px;background:var(--bg-primary);min-height:100vh;margin-left:280px;transition:margin-left .3s cubic-bezier(.4,0,.2,1),background-color .3s ease}.dashboard.sidebar-collapsed{margin-left:80px}.dashboard-header{margin-bottom:32px;background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-secondary);transition:background-color .3s ease,border-color .3s ease}.header-main{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.header-title h1{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,var(--text-primary),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 8px}.game-badge{display:flex;flex-direction:column;gap:8px}.game-badge-row{display:flex;align-items:center;gap:12px}.game-badge-row.api-key-row{background:var(--bg-tertiary);padding:8px 12px;border-radius:6px;border:1px solid var(--border-primary)}.game-name{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.game-id{font-size:.875rem;color:var(--text-tertiary);font-family:Monaco,Menlo,monospace;background:var(--bg-tertiary);padding:2px 8px;border-radius:4px;display:inline-block}.game-api-key{display:flex;align-items:center;gap:8px;flex:1}.game-api-key code{font-family:Monaco,Menlo,Courier New,monospace;font-size:.75rem;color:var(--text-secondary);background:var(--bg-secondary);padding:4px 8px;border-radius:4px;letter-spacing:.5px}.copy-api-key-btn{background:var(--primary-color);color:#fff;border:none;padding:6px 8px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.copy-api-key-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.copy-api-key-btn:active{transform:translateY(0)}.last-updated{font-size:.875rem;color:var(--text-tertiary);display:flex;align-items:center;gap:8px}.dashboard-controls{display:flex;gap:12px;align-items:center}.date-range-controls{display:flex;align-items:center;gap:12px;position:relative}.custom-date-picker{position:relative}.date-picker-trigger{padding:10px 16px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-secondary);font-size:14px;color:var(--text-primary);cursor:pointer;transition:all .2s ease;min-width:200px;text-align:left}.date-picker-trigger:hover{border-color:var(--accent-primary)}.date-picker-trigger:disabled{opacity:.6;cursor:not-allowed}.date-picker-popup{position:absolute;top:100%;left:0;z-index:1000;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:12px;padding:16px;box-shadow:0 8px 32px #00000026;min-width:300px;margin-top:4px}.date-inputs{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.date-input-group{display:flex;flex-direction:column;gap:4px}.date-input-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.date-picker-actions{display:flex;gap:8px;justify-content:flex-end}.apply-btn{padding:8px 16px;background:var(--accent-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease}.apply-btn:hover:not(:disabled){background:var(--accent-secondary)}.apply-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-btn{padding:8px 16px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease}.cancel-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-secondary)}.date-input{padding:8px 12px;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-secondary);font-size:13px;color:var(--text-primary);cursor:pointer;transition:all .2s ease;min-width:130px}.date-input:hover{border-color:var(--accent-primary)}.date-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.date-input:disabled{opacity:.6;cursor:not-allowed}.date-separator{font-size:13px;color:var(--text-tertiary);font-weight:500;margin:0 4px}.date-range-select{padding:10px 16px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-secondary);font-size:14px;color:var(--text-primary);cursor:pointer;transition:all .2s ease;min-width:140px}.date-range-select:hover{border-color:var(--accent-primary)}.date-range-select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.date-range-select:disabled{opacity:.6;cursor:not-allowed}.refresh-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.refresh-btn.updating{background:var(--accent-secondary);animation:pulse 2s ease-in-out infinite}.refresh-btn:hover:not(:disabled){background:var(--accent-secondary);transform:translateY(-1px)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.refresh-btn.updating:disabled{opacity:.8}@keyframes pulse{0%,to{opacity:.8}50%{opacity:1}}.update-indicator{position:fixed;top:0;left:280px;right:0;height:3px;z-index:1000;pointer-events:none}.dashboard.sidebar-collapsed .update-indicator{left:80px}@media (max-width: 768px){.update-indicator,.dashboard.sidebar-collapsed .update-indicator{left:0}}.update-bar{height:100%;background:var(--accent-primary);animation:loading-bar 2s ease-in-out infinite}@keyframes loading-bar{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px}.metric-card{background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-secondary);transition:all .2s ease;position:relative;overflow:visible;z-index:1}.metric-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026;z-index:2}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary))}.metric-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.metric-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:12px;color:#fff}.metric-title{font-size:.875rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.metric-title-wrapper{display:flex;align-items:center;gap:6px}.metric-info{color:var(--text-tertiary);opacity:.7;cursor:help;transition:opacity .1s ease;position:relative;z-index:1}.metric-info:hover{opacity:1}.metric-info:hover:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%);background:var(--bg-primary);color:var(--text-primary);padding:12px 16px;border-radius:8px;font-size:13px;white-space:normal;max-width:280px;width:max-content;z-index:2147483647;box-shadow:0 8px 32px #00000040;border:1px solid var(--border-primary);pointer-events:none}.metric-info:hover:before{content:"";position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--border-primary);z-index:2147483647;pointer-events:none}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.metric-value{font-size:2rem;font-weight:800;color:var(--text-primary);margin-bottom:8px}.loading-skeleton{background:linear-gradient(90deg,var(--bg-tertiary),var(--border-primary),var(--bg-tertiary));background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:4px;height:2rem;width:80px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.metric-change{font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:4px}.metric-change.positive{color:var(--success)}.metric-change.negative{color:var(--error)}.metric-change.neutral{color:var(--text-tertiary)}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:24px}.chart-container{background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-secondary);transition:all .2s ease}.chart-container:hover{box-shadow:0 4px 12px #00000026}.chart-container .recharts-wrapper,.chart-container .recharts-surface{background:transparent!important}.chart-container .recharts-cartesian-grid line{stroke:var(--border-primary)}.chart-container .recharts-text{fill:var(--text-secondary)!important}.chart-container .recharts-legend-wrapper,.chart-container .recharts-legend-item-text{color:var(--text-secondary)!important}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-primary)}.chart-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}.chart-title-wrapper{display:flex;align-items:center;gap:8px}.chart-info{color:var(--text-secondary);opacity:.7;cursor:help;transition:opacity .1s ease;position:relative}.chart-info:hover{opacity:1}.chart-info:hover:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--bg-primary);color:var(--text-primary);padding:12px 16px;border-radius:8px;font-size:13px;white-space:normal;max-width:400px;min-width:200px;width:max-content;z-index:99999;box-shadow:0 8px 32px #00000040;border:1px solid var(--border-primary);animation:tooltipFadeIn .2s ease-out;pointer-events:none}.chart-info:hover:before{content:"";position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--border-primary);z-index:100000;pointer-events:none}.chart-actions{display:flex;gap:8px}.chart-content{position:relative}.chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:var(--text-tertiary);gap:16px}.chart-large{grid-column:span 2}.chart-medium{grid-column:span 1}.error-container{background:var(--bg-tertiary);border:1px solid var(--error);border-radius:12px;padding:24px;text-align:center;color:var(--error)}.error-container h3{margin:0 0 12px;color:var(--error);font-size:1.125rem;font-weight:600}.error-container p{margin:0 0 16px;color:var(--error)}.retry-button{background:var(--error);color:#fff;border:none;border-radius:8px;padding:10px 20px;cursor:pointer;font-weight:500;transition:background .2s ease}.retry-button:hover{background:#b91c1c}@media (max-width: 1400px){.chart-large{grid-column:span 1}}@media (max-width: 768px){.dashboard{margin-left:0;padding:16px}.dashboard-header{padding:16px;margin-bottom:20px}.header-main{flex-direction:column;align-items:flex-start;gap:12px}.dashboard-controls,.date-range-controls{flex-direction:column;width:100%;gap:12px}.date-picker-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:320px;max-height:90vh;overflow-y:auto}.date-picker-trigger{width:100%;padding:12px;font-size:16px}.date-range-select,.refresh-btn,.date-input{width:100%;justify-content:center;padding:12px;font-size:16px}.metrics-grid,.charts-grid{grid-template-columns:1fr;gap:16px}.chart-large,.chart-medium{grid-column:span 1}.header-title h1{font-size:2rem;line-height:1.2}.metric-card{min-height:100px;padding:20px}.metric-info,.chart-info{min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center}}@media (max-width: 480px){.dashboard{padding:12px}.dashboard-header{padding:12px;margin-bottom:16px}.metric-card{padding:16px;min-height:90px}.chart-container{padding:16px}.header-title h1,.metric-value{font-size:1.75rem}.metric-title{font-size:.875rem}.chart-content{height:220px}.metrics-grid,.charts-grid{gap:12px}.date-picker-popup{width:95%;max-width:280px}.date-inputs{gap:12px}}.chart-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 20px}.chart-content{height:300px}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.dashboard-loading p{color:var(--text-tertiary);font-size:16px}.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.dashboard-error p{color:#ef4444;font-size:16px;text-align:center}.retry-button{padding:12px 24px;background-color:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.retry-button:hover{background-color:#2563eb}@media (max-width: 1200px){.chart-large,.chart-medium{grid-column:span 12}}@media (max-width: 768px){.dashboard{padding:16px}.dashboard-header{flex-direction:column;gap:16px;align-items:flex-start}.metrics-grid,.charts-grid{grid-template-columns:1fr}.chart-container{grid-column:span 1!important}.chart-content{height:250px}}.recharts-tooltip-wrapper{border-radius:8px!important;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d!important}.recharts-default-tooltip{background-color:#fff!important;border:1px solid #e5e7eb!important;border-radius:8px!important;box-shadow:none!important}.recharts-legend-wrapper{padding-top:16px!important}@media (max-width: 768px){.recharts-tooltip-wrapper{font-size:14px!important}.recharts-legend-wrapper{padding-top:12px!important;font-size:12px!important}.recharts-cartesian-axis-tick-value{font-size:10px!important}.recharts-pie-label-text{font-size:12px!important;font-weight:600!important}}.health-container{padding:2rem;max-width:1600px;margin:0 auto}.health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.header-title{display:flex;align-items:center;gap:.75rem}.header-title h1{font-size:2rem;color:var(--text-primary);margin:0}.header-controls{display:flex;gap:1rem;align-items:center}.date-range-select,.filters-toggle{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s}.filters-toggle{display:flex;align-items:center;gap:.5rem}.filters-toggle:hover{background:var(--bg-tertiary)}.filters-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;margin-bottom:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.filter-group input,.filter-group select{padding:.5rem;border-radius:6px;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem}.clear-filters{grid-column:1 / -1;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all .2s}.clear-filters:hover{background:var(--bg-primary)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;display:flex;gap:1rem;transition:transform .2s,box-shadow .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:var(--card-shadow)}.metric-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-icon.crash-rate{background:#ef44441a;color:#ef4444}.metric-icon.users{background:#3b82f61a;color:#3b82f6}.metric-icon.sessions{background:#10b9811a;color:#10b981}.metric-icon.total{background:#f59e0b1a;color:#f59e0b}.metric-content{flex:1}.metric-content h3{font-size:.875rem;font-weight:500;color:var(--text-secondary);margin:0 0 .5rem}.metric-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.metric-description{font-size:.75rem;color:var(--text-tertiary);margin:0}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:1.5rem;margin-bottom:2rem}.chart-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem}.chart-card.full-width{grid-column:1 / -1}.chart-card h2{font-size:1.25rem;color:var(--text-primary);margin:0 0 1rem}.top-crashes-section{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.top-crashes-section h2{font-size:1.25rem;color:var(--text-primary);margin:0 0 1rem}.crashes-table{overflow-x:auto}.crashes-table table{width:100%;border-collapse:collapse}.crashes-table th{text-align:left;padding:.75rem;font-size:.875rem;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border-primary)}.crashes-table td{padding:.75rem;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--border-primary)}.exception-type{background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.75rem;color:#ef4444}.crash-message{max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crash-logs-section{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem}.crash-logs-section h2{font-size:1.25rem;color:var(--text-primary);margin:0 0 1rem}.logs-list{display:flex;flex-direction:column;gap:1rem}.log-item{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s}.log-item:hover{border-color:var(--accent-primary);box-shadow:0 2px 8px #3b82f61a}.log-header{display:flex;gap:.75rem;align-items:center;margin-bottom:.75rem;flex-wrap:wrap}.log-severity{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase}.log-type,.log-platform,.log-version{padding:.25rem .5rem;border-radius:4px;background:var(--bg-tertiary);font-size:.75rem;color:var(--text-secondary)}.log-time{margin-left:auto;font-size:.75rem;color:var(--text-tertiary)}.log-content{display:flex;flex-direction:column;gap:.5rem}.log-exception{font-family:Monaco,Menlo,monospace;font-size:.875rem;font-weight:600;color:var(--accent-primary)}.log-message{font-size:.875rem;color:var(--text-secondary)}.crash-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:var(--bg-secondary);border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-primary)}.modal-header h2{font-size:1.5rem;color:var(--text-primary);margin:0}.modal-header button{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-header button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:1.5rem;overflow-y:auto}.detail-row{margin-bottom:1rem;font-size:.875rem}.detail-row strong{display:block;color:var(--text-secondary);margin-bottom:.25rem;font-weight:600}.message-text{padding:.75rem;background:var(--bg-tertiary);border-radius:6px;color:var(--text-primary);margin-top:.5rem}.stack-trace{padding:1rem;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-primary);font-family:Monaco,Menlo,monospace;font-size:.75rem;line-height:1.5;overflow-x:auto;white-space:pre-wrap;margin-top:.5rem}.loading,.error{display:flex;align-items:center;justify-content:center;min-height:400px;font-size:1.125rem;color:var(--text-secondary)}@media (max-width: 768px){.health-container{padding:1rem}.health-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-controls{width:100%;flex-direction:column}.date-range-select,.filters-toggle{width:100%}.filters-panel,.metrics-grid,.charts-section{grid-template-columns:1fr}.crashes-table{font-size:.75rem}.crash-message{max-width:200px}.modal-content{max-height:100vh;border-radius:0}}.analytics-container{padding:32px;background:var(--bg-primary);min-height:100vh;margin-left:280px;transition:margin-left .3s cubic-bezier(.4,0,.2,1),background-color .3s ease}.analytics-container.sidebar-collapsed{margin-left:80px}.analytics-header{margin-bottom:1.5rem}.analytics-header h1{margin-bottom:32px;background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-secondary);transition:background-color .3s ease,border-color .3s ease}.analytics-subtitle{color:var(--text-secondary);font-size:.9rem;margin:0}.analytics-tabs{display:flex;gap:0;border-bottom:2px solid var(--border-color);margin-bottom:1.5rem;overflow-x:auto}.analytics-tab{padding:.75rem 1.25rem;background:none;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative;margin-bottom:-2px}.analytics-tab:hover{color:var(--text-primary);background-color:#3b82f60d}.analytics-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background-color:#3b82f605}.analytics-content{background-color:var(--card-bg);border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;width:100%;box-sizing:border-box}.tab-content{width:100%;box-sizing:border-box}.tab-content h2{font-size:1.25rem;font-weight:600;margin:0 0 .25rem;color:var(--text-primary)}.tab-content p{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.9rem}.analytics-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;padding:1rem;background-color:var(--bg-secondary);border-radius:6px;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.4rem;min-width:160px}.filter-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary);margin:0}.filter-group select,.filter-group input{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--card-bg);color:var(--text-primary);font-size:.875rem;width:100%}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f61a}.filter-group.day-selector-group{position:relative}.day-selector-button{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--card-bg);color:var(--text-primary);font-size:.875rem;cursor:pointer;width:100%;text-align:left;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center}.day-selector-button:hover{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f61a}.day-selector-dropdown{position:absolute;top:calc(100% + .5rem);left:0;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0003;z-index:1000;min-width:250px;max-height:350px;overflow-y:auto}.day-selector-header{display:flex;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--border-color)}.day-action-btn{flex:1;padding:.4rem .75rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.day-action-btn:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.day-selector-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;padding:.75rem}.day-checkbox-label{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:4px;cursor:pointer;transition:background-color .2s ease;color:var(--text-primary);font-size:.9rem}.day-checkbox-label:hover{background-color:var(--bg-hover)}.day-checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary-color)}.day-checkbox-label span{-webkit-user-select:none;user-select:none}.cohort-table-container{overflow-x:auto;margin-top:1rem;border-radius:8px;border:1px solid var(--border-color);width:100%;box-sizing:border-box}.cohort-table{width:100%;min-width:100%;border-collapse:collapse;font-size:.9rem;table-layout:auto}.cohort-table th,.cohort-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}.cohort-table th{background-color:var(--bg-secondary);color:var(--text-secondary);font-weight:600;font-size:.85rem;text-transform:uppercase;position:sticky;top:0;z-index:10}.cohort-table th:first-child,.cohort-table td:first-child{position:sticky;left:0;background-color:var(--card-bg);z-index:5}.cohort-table th:first-child{z-index:15;background-color:var(--bg-secondary)}.cohort-table tbody tr:hover{background-color:var(--bg-hover)}.cohort-table td{color:var(--text-primary)}.cohort-table td.install-date{font-weight:500;color:var(--text-primary)}.cohort-table td.install-count{font-weight:600;color:var(--primary-color)}.cohort-table td.retention-cell{text-align:center;font-weight:500}.cohort-table td.retention-cell.not-available{color:var(--text-secondary);font-style:italic}.cohort-table td.retention-90{background-color:#05966926;color:#059669;font-weight:600}.cohort-table td.retention-70{background-color:#10b9811f;color:#10b981;font-weight:500}.cohort-table td.retention-50{background-color:#34d3991f;color:#34d399}.cohort-table td.retention-40{background-color:#fbbf241f;color:#fbbf24}.cohort-table td.retention-30{background-color:#f59e0b1f;color:#f59e0b}.cohort-table td.retention-20{background-color:#fb923c1f;color:#fb923c}.cohort-table td.retention-10{background-color:#ef44441f;color:#ef4444;font-weight:500}.cohort-table td.metric-top{background-color:#bfdbfee6;color:#f8fafc;font-weight:600}.cohort-table td.metric-high{background-color:#93c5fdcc;color:#f8fafc;font-weight:500}.cohort-table td.metric-good{background-color:#60a5fab3;color:#f8fafc}.cohort-table td.metric-medium{background-color:#3b82f699;color:#f8fafc}.cohort-table td.metric-low{background-color:#2563ebb3;color:#f8fafc}.cohort-table td.metric-very-low{background-color:#1e40afcc;color:#f8fafc}.loading-container{display:flex;justify-content:center;align-items:center;padding:4rem;color:var(--text-secondary)}.loading-spinner{animation:spin 1s linear infinite}[data-theme=dark]{--bg-secondary: #1f2937;--bg-hover: rgba(255, 255, 255, .05);--border-color: #374151;--text-primary: #f3f4f6;--text-secondary: #9ca3af;--card-bg: #111827;--primary-color: #3b82f6}[data-theme=light]{--bg-secondary: #f3f4f6;--bg-hover: rgba(0, 0, 0, .02);--border-color: #e5e7eb;--text-primary: #111827;--text-secondary: #6b7280;--card-bg: #ffffff;--primary-color: #3b82f6}.events-page{padding:32px;background:var(--bg-primary);min-height:100vh;margin-left:280px;transition:margin-left .3s cubic-bezier(.4,0,.2,1),background-color .3s ease;display:flex;flex-direction:column;gap:20px}.events-page.sidebar-collapsed{margin-left:80px}.events-header{background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-secondary);display:flex;flex-direction:column;gap:16px;transition:background-color .3s ease,border-color .3s ease}.header-top{display:flex;justify-content:space-between;align-items:flex-start}.header-title{display:flex;align-items:flex-start;gap:12px}.header-title h1{margin:0;font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,var(--text-primary),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{margin:4px 0 0;font-size:14px;color:var(--text-secondary)}.last-updated{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-tertiary)}.events-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.search-box,.filter-box{display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:10px 14px;flex:1;min-width:200px;max-width:300px}.search-box input,.filter-box select{border:none;background:none;outline:none;color:var(--text-primary);font-size:14px;width:100%}.search-box input::placeholder{color:var(--text-tertiary)}.auto-refresh-controls{display:flex;align-items:center;gap:12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:10px 14px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-primary);margin:0}.checkbox-label input[type=checkbox]{cursor:pointer}.interval-select{border:1px solid var(--border-primary);background:var(--bg-tertiary);color:var(--text-primary);border-radius:6px;padding:4px 8px;font-size:13px;cursor:pointer}.refresh-btn{display:flex;align-items:center;gap:8px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;min-width:110px;justify-content:center;white-space:nowrap;flex-shrink:0}.refresh-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.refresh-btn:active:not(:disabled){transform:translateY(0)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.events-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--card-shadow);transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.stat-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:32px;font-weight:700;background:linear-gradient(135deg,var(--primary-color),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.events-container{flex:1;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);min-height:400px}.events-list{display:flex;flex-direction:column;gap:12px}.event-card{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:12px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideIn .3s ease-out;box-shadow:0 2px 4px #0000000d}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.event-card:hover{border-color:var(--primary-color);box-shadow:0 8px 16px #0000001a;transform:translateY(-2px)}.event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.event-name-badge{display:flex;align-items:center;gap:8px;background:var(--primary-color);color:#fff;padding:6px 12px;border-radius:6px;font-weight:600;font-size:13px}.event-time{font-size:12px;color:var(--text-tertiary)}.event-summary{margin-bottom:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.event-summary .event-detail-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);padding:4px 8px;background:var(--bg-secondary);border-radius:4px}.event-summary .event-detail-item svg{flex-shrink:0;color:var(--primary-color)}.event-summary .detail-label{font-weight:600;white-space:nowrap}.event-summary .detail-value{font-family:Monaco,Menlo,Courier New,monospace;font-size:11px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-details-section{margin-top:12px;border-top:1px solid var(--border-primary);padding-top:12px}.event-details-section summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--text-secondary);padding:4px 0;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px}.event-details-section summary::-webkit-details-marker{display:none}.event-details-section summary:before{content:"▶";font-size:10px;transition:transform .2s;display:inline-block}.event-details-section[open] summary:before{transform:rotate(90deg)}.event-details-section summary:hover{color:var(--primary-color)}.details-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:12px;background:var(--bg-secondary);border-radius:6px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item-full{grid-column:1 / -1}.detail-item .detail-label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.detail-item .detail-value{font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;background:var(--bg-tertiary);padding:4px 8px;border-radius:4px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;word-break:break-all}.event-properties{margin-top:12px;border-top:1px solid var(--border-primary);padding-top:12px}.event-properties summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--text-secondary);padding:4px 0;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px}.event-properties summary::-webkit-details-marker{display:none}.event-properties summary:before{content:"▶";font-size:10px;transition:transform .2s;display:inline-block}.event-properties[open] summary:before{transform:rotate(90deg)}.event-properties summary:hover{color:var(--primary-color)}.properties-json{margin:8px 0 0;padding:12px;background:var(--bg-secondary);border-radius:6px;font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;color:var(--text-primary);overflow-x:auto;line-height:1.5}.empty-state,.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary)}.empty-icon{color:var(--text-tertiary);margin-bottom:16px}.empty-state h2,.empty-state h3{margin:0 0 8px;color:var(--text-primary)}.empty-state p{margin:0;font-size:14px;color:var(--text-secondary)}.loading-state p{margin-top:16px;font-size:16px}@media (max-width: 768px){.events-page{padding:16px;margin-left:0}.events-page.sidebar-collapsed{margin-left:0}.events-header{padding:16px}.header-top{flex-direction:column;gap:12px}.header-title h1{font-size:1.75rem}.events-controls{flex-direction:column;align-items:stretch}.search-box,.filter-box{max-width:none}.events-stats{grid-template-columns:1fr 1fr}.event-header{flex-direction:column;align-items:flex-start;gap:8px}}@media (max-width: 480px){.events-stats{grid-template-columns:1fr}.stat-value{font-size:24px}}.release-management{padding:2rem;background:var(--bg-primary);min-height:100vh;margin-left:280px;transition:margin-left .3s cubic-bezier(.4,0,.2,1),background-color .3s ease}.release-management.sidebar-collapsed{margin-left:80px}.page-header{margin-bottom:2rem}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;background:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-secondary);transition:background-color .3s ease,border-color .3s ease}.header-text h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--text-primary),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-text p{margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.5}.header-actions{display:flex;gap:1rem;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:12px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;font-family:inherit}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:0 2px 4px #3b82f633}.btn-primary:hover:not(:disabled){background:var(--accent-secondary);transform:translateY(-1px);box-shadow:0 4px 8px #3b82f64d}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);box-shadow:var(--card-shadow)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);transform:translateY(-1px);border-color:var(--border-secondary)}.btn-danger{background:var(--error);color:#fff;box-shadow:0 2px 4px #ef444433}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.btn-sm{padding:.5rem 1rem;font-size:.8rem}.content-tabs{background:var(--bg-secondary);border-radius:16px;box-shadow:var(--card-shadow);overflow:hidden;border:1px solid var(--border-secondary);transition:background-color .3s ease,border-color .3s ease}.tab-header{display:flex;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary);transition:background-color .3s ease,border-color .3s ease}.tab{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:none;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;font-family:inherit}.tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);background:var(--bg-secondary)}.tab-content{padding:2rem}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state svg{color:var(--text-tertiary);margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.empty-state p{margin:0 0 1.5rem;font-size:.9rem;color:var(--text-secondary)}.releases-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.release-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;transition:all .2s ease;box-shadow:var(--card-shadow)}.release-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f;border-color:var(--border-secondary)}.release-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.release-version{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.rollout-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;text-transform:uppercase}.rollout-badge.full{background:#10b9811a;color:var(--success)}.rollout-badge.gradual{background:#f59e0b1a;color:var(--warning)}.rollout-badge.beta{background:#3b82f61a;color:var(--accent-primary)}.release-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.5}.release-date{display:flex;align-items:center;gap:.5rem;color:var(--text-tertiary);font-size:.85rem;margin-bottom:.5rem}.features-count{color:var(--text-secondary);font-size:.85rem;font-weight:500}.events-list{display:flex;flex-direction:column;gap:1rem}.event-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;transition:all .2s ease;box-shadow:var(--card-shadow)}.event-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a;border-color:var(--border-secondary)}.event-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.event-icon{flex-shrink:0;margin-top:.25rem}.event-icon.hotfix{color:var(--error)}.event-icon.promotion{color:#8b5cf6}.event-icon.marketing{color:#06b6d4}.event-icon.default{color:var(--text-tertiary)}.event-info{flex:1}.event-info h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.event-info p{margin:0;color:var(--text-secondary);line-height:1.5}.impact-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;text-transform:uppercase;flex-shrink:0}.impact-badge.success{background:#10b9811a;color:var(--success)}.impact-badge.danger{background:#ef44441a;color:var(--error)}.impact-badge.neutral{background:var(--bg-tertiary);color:var(--text-secondary)}.event-dates{display:flex;align-items:center;gap:.5rem;color:var(--text-tertiary);font-size:.85rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--bg-secondary);border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #0000004d;border:1px solid var(--border-primary);transition:background-color .3s ease,border-color .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary);transition:background-color .3s ease,border-color .3s ease}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-tertiary);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--text-primary);background:var(--bg-secondary)}.modal-content{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-primary);background:var(--bg-tertiary);transition:background-color .3s ease,border-color .3s ease}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary);font-size:.9rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-primary);border-radius:8px;font-size:.9rem;transition:all .2s ease;background:var(--bg-primary);color:var(--text-primary);font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a;background:var(--bg-secondary)}.form-group textarea{resize:vertical;min-height:80px;line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.feature-input{border:1px solid var(--border-primary);border-radius:12px;padding:1rem;margin-bottom:1rem;background:var(--bg-tertiary);transition:background-color .3s ease,border-color .3s ease}.feature-input input,.feature-input textarea,.feature-input select{margin-bottom:.75rem;background:var(--bg-secondary)}.feature-input input:last-child,.feature-input textarea:last-child,.feature-input select:last-child,.feature-input button:last-child{margin-bottom:0}.release-actions,.event-actions{display:flex;align-items:center;gap:.5rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:var(--accent-primary);color:#fff;transform:translateY(-1px)}.release-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.features-section{border-top:1px solid var(--border-primary);padding-top:1rem;margin-top:1rem}.features-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 0;background:none;border:none;color:var(--text-primary);font-weight:500;cursor:pointer;transition:color .2s ease;font-family:inherit}.features-toggle:hover{color:var(--accent-primary)}.features-list{margin-top:.75rem;display:flex;flex-direction:column;gap:.75rem}.feature-item{background:var(--bg-tertiary);border-radius:8px;padding:.75rem;border:1px solid var(--border-primary);transition:background-color .3s ease,border-color .3s ease}.feature-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.feature-name{font-weight:500;color:var(--text-primary)}.impact-indicator{padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase}.impact-indicator.positive{background:#10b9811a;color:var(--success)}.impact-indicator.negative{background:#ef44441a;color:var(--error)}.impact-indicator.neutral{background:var(--bg-secondary);color:var(--text-secondary)}.feature-description{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin-bottom:.5rem}.feature-type{color:var(--text-tertiary);font-size:.8rem;text-transform:capitalize}.tags-container{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.tag{padding:.25rem .5rem;background:var(--accent-primary);color:#fff;border-radius:12px;font-size:.75rem;font-weight:500;display:inline-flex;align-items:center;gap:.25rem}.tag.editable{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);padding-right:.25rem}.tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;border-radius:50%;background:#ef44441a;color:var(--error);cursor:pointer;transition:all .2s ease}.tag-remove:hover{background:var(--error);color:#fff}.tags-input-container{display:flex;flex-direction:column;gap:.5rem}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem;min-height:24px}.tag-input-row{display:flex;gap:.5rem}.tag-input-row input{flex:1}.form-field-group{display:flex;flex-direction:column;gap:.25rem}.form-field-group label{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.info-tooltip{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:50%;background:var(--bg-tertiary);color:var(--text-tertiary);cursor:help;transition:all .2s ease}.info-tooltip:hover{background:var(--accent-primary);color:#fff}@media (max-width: 768px){.release-management{margin-left:0;padding:1rem}.release-management.sidebar-collapsed{margin-left:0}.header-content{flex-direction:column;align-items:stretch;gap:1rem;padding:1.5rem}.header-actions{justify-content:flex-start}.releases-grid{grid-template-columns:1fr}.tab-content{padding:1rem}.modal{margin:1rem;max-width:none}.form-row{grid-template-columns:1fr}.btn{padding:.75rem 1rem;font-size:.85rem}.tab-header{overflow-x:auto}.tab{white-space:nowrap;padding:.75rem 1rem}.header-text h1{font-size:1.75rem}}@media (max-width: 480px){.release-management{padding:.5rem}.header-text h1{font-size:1.5rem}.modal-overlay,.modal-header,.modal-content,.modal-footer{padding:1rem}.event-header{flex-direction:column;align-items:flex-start;gap:.75rem}.impact-badge{align-self:flex-start}.header-content{padding:1rem}}.level-funnel{padding:32px;background:var(--bg-primary);min-height:100vh;margin-left:280px;transition:margin-left .3s cubic-bezier(.4,0,.2,1),background-color .3s ease}.level-funnel.sidebar-collapsed{margin-left:80px}.level-funnel-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.level-funnel-title h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 8px}.level-funnel-title p{font-size:.875rem;color:var(--text-secondary);margin:0}.export-button{background:var(--accent-primary);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.export-button:hover:not(:disabled){background:var(--accent-secondary);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.export-button:disabled{background:var(--text-tertiary);cursor:not-allowed;opacity:.5}.level-funnel-filters{background:var(--bg-secondary);border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:var(--card-shadow);border:1px solid var(--border-primary)}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.filter-group input{padding:10px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;transition:all .2s ease}.filter-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.filter-group input::placeholder{color:var(--text-tertiary)}.filter-group select{padding:10px 36px 10px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;transition:all .2s ease;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}[data-theme=dark] .filter-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.filter-group select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.filter-group select option{background:var(--bg-secondary);color:var(--text-primary);padding:8px}.multi-select-group{position:relative}.multi-select-button{width:100%;padding:10px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;text-align:left;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center}.multi-select-button:hover{border-color:var(--accent-primary)}.multi-select-button:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.multi-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;max-height:300px;overflow:hidden;display:flex;flex-direction:column}.multi-select-header{display:flex;gap:8px;padding:12px;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary)}.multi-select-action-btn{flex:1;padding:6px 12px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-primary);font-size:.8125rem;cursor:pointer;transition:all .2s ease}.multi-select-action-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.multi-select-list{overflow-y:auto;max-height:240px;padding:8px}.multi-select-checkbox-label{display:flex;align-items:center;padding:8px 12px;cursor:pointer;border-radius:6px;transition:background-color .15s ease}.multi-select-checkbox-label:hover{background:var(--bg-tertiary)}.multi-select-checkbox-label input[type=checkbox]{margin-right:10px;width:16px;height:16px;cursor:pointer;accent-color:var(--accent-primary)}.multi-select-checkbox-label span{font-size:.875rem;color:var(--text-primary)}.loading-container{display:flex;justify-content:center;align-items:center;padding:60px 0}.loading-spinner{width:48px;height:48px;border:4px solid var(--border-primary);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:16px;color:var(--error);margin-bottom:24px}.warning-message{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:12px;padding:16px;color:var(--warning)}.debug-header{background:#3b82f61a;border:2px solid var(--accent-primary);border-radius:12px;padding:16px;margin-bottom:24px}.debug-header h2{font-size:1.25rem;font-weight:700;color:var(--accent-primary);margin:0 0 8px}.debug-header p{font-size:.875rem;color:var(--text-secondary);margin:0}.level-funnel-table-container{background:var(--bg-secondary);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-primary);overflow:hidden;margin-bottom:24px}.level-funnel-table{width:100%;border-collapse:collapse;overflow-x:auto}.level-funnel-table thead{background:var(--bg-tertiary)}.level-funnel-table th{padding:12px 16px;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-primary)}.level-funnel-table th:first-child{position:sticky;left:0;z-index:10;background:var(--bg-tertiary)}.level-funnel-table tbody tr{transition:background-color .15s ease}.level-funnel-table tbody tr:hover{background:var(--bg-tertiary)}.level-funnel-table td{padding:14px 16px;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--border-primary);white-space:nowrap}.level-funnel-table td:first-child{position:sticky;left:0;z-index:5;background:var(--bg-secondary);font-weight:600}.level-funnel-table tbody tr:hover td:first-child{background:var(--bg-tertiary)}.metric-value-high{color:var(--success);font-weight:600}.metric-value-medium{color:var(--warning)}.metric-value-low{color:var(--error);font-weight:600}.empty-state{background:var(--bg-secondary);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-primary);padding:60px 40px;text-align:center;margin-bottom:24px}.empty-state-icon{width:64px;height:64px;margin:0 auto 16px;color:var(--text-tertiary)}.empty-state h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 12px}.empty-state p{font-size:.875rem;color:var(--text-secondary);margin:0 0 16px}.empty-state ul{list-style:none;padding:0;max-width:600px;margin:0 auto 24px}.empty-state li{display:flex;align-items:flex-start;text-align:left;margin-bottom:12px;color:var(--text-secondary);font-size:.875rem}.empty-state li span:first-child{color:var(--accent-primary);margin-right:8px;font-weight:700}.empty-state code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-size:.8125rem;font-family:Monaco,Menlo,Courier New,monospace;color:var(--accent-primary)}.empty-state-code-block{background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:16px;text-align:left;max-width:600px;margin:0 auto}.empty-state-code-block h4{font-size:.875rem;font-weight:600;color:var(--accent-primary);margin:0 0 12px}.empty-state-code-block pre{background:var(--bg-secondary);padding:12px;border-radius:6px;overflow-x:auto;font-size:.8125rem;margin:0;color:var(--text-primary)}.level-funnel-summary{background:var(--bg-secondary);border-radius:12px;box-shadow:var(--card-shadow);border:1px solid var(--border-primary);padding:24px}.level-funnel-summary h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 16px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item-label{font-size:.875rem;color:var(--text-secondary)}.summary-item-value{font-size:1.75rem;font-weight:700;color:var(--text-primary)}@media (max-width: 1024px){.level-funnel{margin-left:0;padding:20px}.level-funnel.sidebar-collapsed{margin-left:0}.level-funnel-header{flex-direction:column;align-items:stretch}.export-button{width:100%;justify-content:center}.filters-grid{grid-template-columns:1fr}.level-funnel-table-container{overflow-x:auto}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.level-funnel{padding:16px}.level-funnel-title h1{font-size:1.5rem}.summary-grid{grid-template-columns:1fr}.level-funnel-table th,.level-funnel-table td{padding:10px 12px;font-size:.8125rem}}.layout{display:flex;min-height:100vh;background:#f8fafc}.main-content{flex:1;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:100vh}.page-placeholder{display:flex;align-items:center;justify-content:center;height:100vh;margin-left:280px;font-size:1.5rem;color:#64748b;background:linear-gradient(135deg,#f8fafc,#f1f5f9);transition:margin-left .3s cubic-bezier(.4,0,.2,1)}@media (max-width: 768px){.page-placeholder{margin-left:0;padding:20px;text-align:center}}
