.retention-diagram{background:white;border-radius:8px;border:1px solid #e5e7eb;padding:1.5rem;margin-top:2rem}.retention-header{margin-bottom:1.5rem}.retention-objective{display:inline-block;padding:.5rem 1rem;background:#f3f4f6;border-radius:20px;border:1px solid #d1d5db}.objective-label{font-size:.875rem;color:#6b7280;font-weight:500}.retention-content,.retention-summary{display:flex;gap:2rem}.retention-summary{width:100%}.retention-summary-section{flex:0 0 320px;padding-right:2rem;border-right:1px solid #e5e7eb}.summary-title{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:.25rem}.summary-subtitle{font-size:.875rem;color:#6b7280;margin-bottom:1.5rem}.retention-lift-badge{display:inline-block;padding:.75rem 1.5rem;background:#d1fae5;color:#065f46;font-size:2rem;font-weight:700;border-radius:8px;margin-bottom:.5rem}.lift-label{font-size:.875rem;color:#374151;font-weight:500;margin-bottom:1.5rem}.group-stats{display:flex;flex-direction:column;gap:1rem}.stat-group{padding:1rem;border-radius:8px;border:1px solid #e5e7eb}.stat-group.treatment{background:#f0fdf4;border-color:#86efac}.stat-group.control{background:#fafafa;border-color:#e5e7eb}.stat-group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.stat-group-name{font-weight:600;color:#111827;font-size:.875rem}.stat-group-retention{padding:.25rem .75rem;background:white;border:1px solid #d1d5db;border-radius:4px;font-size:.75rem;color:#374151;font-weight:600}.stat-group-details{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#6b7280}.retention-chart-section{flex:1 1}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.chart-title{font-size:1.25rem;font-weight:600;color:#111827}.chart-legend{gap:1.5rem}.legend-item{font-size:.875rem;color:#6b7280}.legend-dot{width:12px;height:12px;border-radius:50%}.control-dot{background:#6366f1}.treatment-dot{background:#10b981}.cohort-chart{display:flex;gap:1rem;align-items:stretch}.chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;padding:20px 0}.y-label{font-size:.75rem;color:#9ca3af;font-weight:500}.chart-area{flex:1 1;display:flex;flex-direction:column}.retention-svg{width:100%;height:300px}.chart-x-axis{display:flex;justify-content:space-between;padding:.5rem 0;margin-top:.5rem}.x-label{font-size:.75rem;color:#9ca3af;font-weight:500}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:white;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column}.gemini-modal{border-top:4px solid #8e75f2}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-title-group{display:flex;align-items:center;gap:.75rem}.modal-logo{width:2rem;height:2rem;object-fit:contain}.modal-title{font-size:1.25rem;font-weight:600;color:#1a1a2e;margin:0}.modal-close{padding:.5rem;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-body{flex:1 1;display:flex;flex-direction:column;overflow:hidden}.loading-session{padding:2rem;text-align:center;color:#6b7280;font-size:.875rem}.error-message{margin:1rem;padding:1rem;background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:.875rem}.messages-container{flex:1 1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.empty-state{text-align:center;color:#9ca3af;padding:2rem;font-size:.875rem}.message{display:flex;max-width:80%;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end;margin-left:auto}.message.assistant{align-self:flex-start}.message-content{padding:.75rem 1rem;border-radius:12px;font-size:.875rem;line-height:1.5;word-wrap:break-word}.message.user .message-content{background:#8E75F2;color:white;border-bottom-right-radius:4px}.message.assistant .message-content{background:#f3f4f6;color:#1f2937;border-bottom-left-radius:4px}.message.assistant .message-content p{margin:0 0 .75rem}.message.assistant .message-content p:last-child{margin-bottom:0}.message.assistant .message-content ol,.message.assistant .message-content ul{margin:.5rem 0;padding-left:1.5rem}.message.assistant .message-content li{margin:.25rem 0}.message.assistant .message-content a{color:#8E75F2;text-decoration:none;font-weight:500}.message.assistant .message-content a:hover{text-decoration:underline}.message.assistant .message-content strong{font-weight:600;color:#111827}.message.assistant .message-content code{background:#e5e7eb;padding:.125rem .375rem;border-radius:3px;font-family:Courier New,monospace;font-size:.85em}.message.assistant .message-content pre{background:#1f2937;color:#f3f4f6;padding:1rem;border-radius:6px;overflow-x:auto;margin:.75rem 0}.message.assistant .message-content pre code{background:transparent;padding:0;color:inherit}.message-form{display:flex;gap:.75rem;padding:1.5rem;border-top:1px solid #e5e7eb;background:#fafafa}.message-input{flex:1 1;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#333;font-family:inherit;background:white}.message-input:focus{outline:none;border-color:#8E75F2;box-shadow:0 0 0 3px rgba(142,117,242,.1)}.message-input:disabled{background:#f3f4f6;cursor:not-allowed}.message-input::placeholder{color:#9ca3af}.message-submit{padding:.75rem 1rem;background:#8E75F2;color:white;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s;border:none;cursor:pointer}.message-submit:hover:not(:disabled){background:#7660d8}.message-submit:disabled{opacity:.5;cursor:not-allowed}.message-submit:active:not(:disabled){transform:scale(.98)}.gemini-container{background:white;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.1);border:2px solid #8e75f2;margin-bottom:2rem}.gemini-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.gemini-logo{width:2rem;height:2rem;object-fit:contain}.gemini-title{font-size:1.125rem;font-weight:600;color:#1a1a2e}.gemini-form{display:flex;gap:.75rem;align-items:center}.gemini-input{flex:1 1;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#333;font-family:inherit;background:#fafafa}.gemini-input:focus{outline:none;border-color:#8E75F2;box-shadow:0 0 0 3px rgba(142,117,242,.1);background:white}.gemini-input::placeholder{color:#9ca3af}.gemini-submit{padding:.75rem 1rem;background:#8E75F2;color:white;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.gemini-submit:hover{background:#7660d8}.gemini-submit:active{transform:scale(.98)}.dashboard-container{margin-top:2rem;padding:2rem;background:white;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.dashboard-header{margin-bottom:2rem}.dashboard-title{font-size:1.75rem;color:#1a1a2e;margin-bottom:.5rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.metric-card{padding:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:white}.metric-card.churn{background:linear-gradient(135deg,#f093fb,#f5576c)}.metric-card.engagement{background:linear-gradient(135deg,#4facfe,#00f2fe)}.metric-card.revenue{background:linear-gradient(135deg,#43e97b,#38f9d7)}.metric-title{font-size:.9rem;opacity:.9;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.metric-comparison{display:flex;justify-content:space-between;margin-bottom:.75rem}.metric-group{flex:1 1}.metric-label{font-size:.75rem;opacity:.8;margin-bottom:.25rem}.metric-value{font-size:1.5rem;font-weight:700}.metric-improvement{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:rgba(255,255,255,.2);border-radius:6px}.improvement-label{font-size:.75rem;opacity:.9}.improvement-value{font-size:1.25rem;font-weight:700}.timeline-section{margin-top:2rem}.timeline-title{font-size:1.25rem;color:#1a1a2e;margin-bottom:1rem}.timeline-chart{background:#f8f9fa;border-radius:8px;padding:2rem;min-height:300px;position:relative}.chart-container{display:flex;align-items:flex-end;justify-content:space-around;height:250px;gap:.5rem}.chart-bar-group{display:flex;flex-direction:column;align-items:center;flex:1 1;min-width:40px}.chart-bars{display:flex;gap:4px;width:100%;height:100%;align-items:flex-end;justify-content:center}.chart-bar{width:12px;border-radius:4px 4px 0 0;transition:opacity .2s}.chart-bar.control{background-color:#f5576c}.chart-bar.test{background-color:#43e97b}.chart-bar:hover{opacity:.7}.chart-date{margin-top:.5rem;font-size:.7rem;color:#666;transform:rotate(-45deg);white-space:nowrap}.chart-legend{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-color{width:16px;height:16px;border-radius:3px}.legend-label{font-size:.9rem;color:#666}.back-button{padding:.5rem 1rem;background-color:#e9ecef;color:#333;font-weight:600;border-radius:6px;transition:background-color .2s;margin-bottom:1rem}.back-button:hover{background-color:#dee2e6}.experiments-page{max-width:1400px;margin:0 auto;padding:2rem}.experiments-list{display:grid;grid-gap:1.5rem;gap:1.5rem}.experiment-card{background:white;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.1);cursor:pointer;transition:transform .2s,box-shadow .2s}.experiment-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.experiment-card.selected{border:2px solid #6c5ce7}.experiment-main{display:flex;justify-content:space-between;align-items:start;gap:2rem}.experiment-info{flex:1 1}.experiment-title{font-size:1.5rem;color:#1a1a2e;margin-bottom:.5rem}.experiment-meta{display:flex;gap:1.5rem;margin:1rem 0}.meta-item{display:flex;flex-direction:column}.meta-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.meta-value{font-size:1rem;font-weight:600;color:#333;margin-top:.25rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase}.status-badge.completed{background-color:#d4edda;color:#155724}.status-badge.running{background-color:#d1ecf1;color:#0c5460}.status-badge.draft{background-color:#f8d7da;color:#721c24}.experiment-groups{display:flex;gap:1rem}.group-info{padding:.75rem 1rem;background-color:#f8f9fa;border-radius:6px;text-align:center}.group-label{font-size:.75rem;color:#666;margin-bottom:.25rem}.group-count{font-size:1.1rem;font-weight:700;color:#6c5ce7}.view-results-button{padding:.75rem 1.5rem;background-color:#6c5ce7;color:white;font-weight:600;border-radius:6px;transition:background-color .2s;white-space:nowrap}.view-results-button:hover{background-color:#5f4dd4}.view-results-button:disabled{background-color:#ccc;cursor:not-allowed}