body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg:#f7f8fb;--card:#fff;--text:#1f2937;--muted:#6b7280;--brand:#2563eb;--brand-ink:#1e40af;--success:#16a34a;--danger:#dc2626;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px #1018280f;--shadow-md:0 6px 12px #10182814;--shadow-lg:0 16px 32px #1018281f;--space-1:.5rem;--space-2:.75rem;--space-3:1rem;--space-4:1.25rem;--space-5:1.5rem;--space-6:2rem}@media (prefers-color-scheme:dark){:root{--bg:#0b1220;--card:#0e1628;--text:#e5e7eb;--muted:#9aa4b2}}body,html{background:#f7f8fb;background:var(--bg);color:#1f2937;color:var(--text);max-width:100vw;overflow-x:hidden;width:100%}body.modal-open{width:100%!important}[class*=-modal-overlay],[class*=modal-overlay],body.modal-open{height:100vh!important;left:0!important;overflow:hidden!important;position:fixed!important;top:0!important}[class*=-modal-overlay],[class*=modal-overlay]{bottom:0!important;box-sizing:border-box!important;margin:0!important;padding:0!important;right:0!important;transform:translateZ(0)!important;width:100vw!important}.container{box-sizing:border-box;margin:0 auto;max-width:1200px;overflow-x:hidden;padding:1.5rem;padding:var(--space-5);width:100%}@media (min-width:1400px){.container{max-width:1400px}}@media (min-width:1600px){.container{max-width:1600px}}@media (min-width:1920px){.container{max-width:1800px}}.stack>*+*{margin-top:1.5rem;margin-top:var(--space-5)}.content-card{background:#fff;background:var(--card);border-radius:var(--radius-lg);box-shadow:0 6px 12px #10182814;box-shadow:var(--shadow-md);box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.section-title{color:#1f2937;color:var(--text);font-size:1.1rem;margin:0 0 1rem;margin:0 0 var(--space-3) 0}.header-row{align-items:center;display:flex;gap:1rem;justify-content:space-between}.header-actions{display:flex;flex-wrap:wrap;gap:.5rem}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#e0f2fe,#b3e5fc);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App,body{min-height:100vh}.App{box-sizing:border-box;max-width:100vw;overflow-x:hidden;padding:1rem;width:100%}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-bottom:1.5rem;padding:1.5rem;text-align:center}.header h1{align-items:center;color:#2d3748;display:flex;font-size:1.8rem;font-weight:700;gap:.5rem;justify-content:center;margin-bottom:.5rem}.header p{color:#718096;font-size:1rem}.auth-section,.user-info{align-items:center;display:flex;gap:1rem}.welcome-text{color:#2d3748;font-size:.9rem;font-weight:600}.auth-buttons{display:flex;gap:.5rem}.auth-button{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.auth-button.login{background:#4299e1;color:#fff}.auth-button.login:hover{background:#3182ce}.auth-button.register{background:#48bb78;color:#fff}.auth-button.register:hover{background:#38a169}.auth-button.logout{background:#fed7d7;color:#c53030}.auth-button.logout:hover{background:#feb2b2}.auth-button.large{font-size:1rem;padding:.75rem 1.5rem}.auth-button:disabled{cursor:not-allowed;opacity:.6}.auth-form{gap:1rem}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:.5rem}.auth-field label{color:#2d3748;font-size:.9rem;font-weight:600}.auth-field input{border:2px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:1rem;max-width:100%;min-width:0;padding:.75rem;transition:border-color .3s ease;width:100%}.auth-field input:focus{border-color:#4299e1;outline:none}.auth-field input.error{border-color:#f56565}.auth-fields-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;width:100%}.auth-fields-row .auth-field{min-width:0;width:100%}.auth-fields-row .auth-field input{box-sizing:border-box;width:100%}.auth-error{color:#f56565;font-size:.8rem;margin-top:.25rem}.auth-error.general-error{background:#fed7d7;border-radius:8px;color:#c53030;margin-bottom:1rem;padding:.75rem}.auth-form-footer{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.auth-submit{background:#4299e1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem;transition:background-color .3s ease}.auth-submit:hover:not(:disabled){background:#3182ce}.auth-submit:disabled{cursor:not-allowed;opacity:.6}.gmail-signin-info{background:linear-gradient(135deg,#e8f5e8,#d4edda);border:1px solid #c3e6cb;border-radius:8px;margin-bottom:20px;padding:12px 16px;text-align:center}.gmail-signin-info p{color:#155724;font-size:.9rem;line-height:1.4;margin:0}.gmail-signin-info strong{color:#0f5132}.google-signin-container{flex-direction:column;margin-top:1rem;width:100%}.google-signin-container,.google-signin-divider{align-items:center;display:flex;justify-content:center;text-align:center}.google-signin-divider{height:20px;margin:1.5rem 0;position:relative}.google-signin-divider:before{background:#e2e8f0;content:"";height:1px;left:0;position:absolute;right:0;top:50%;z-index:1}.google-signin-divider span{background:#fff;color:#64748b;font-size:.875rem;font-weight:500;padding:0 1rem;position:relative;z-index:2}.google-signin-container .g_id_signin{margin-top:1rem!important;min-height:40px!important}.g_id_signin,.google-signin-container .g_id_signin{align-items:center!important}.g_id_signin,.g_id_signin>div,.google-signin-container .g_id_signin{display:flex!important;justify-content:center!important;width:100%!important}.g_id_signin>div{max-width:300px!important}.g_id_signin iframe{display:block!important;margin:0 auto!important}.login-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:80vh;padding:2rem}.login-container{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:450px;overflow:hidden;padding:3rem;width:100%}.login-container .auth-form{max-width:100%;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-header h1{color:#2d3748;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.login-header p{color:#718096;font-size:1.1rem}.login-tabs{background:#f7fafc;border-radius:12px;display:flex;margin-bottom:2rem;padding:.25rem}.login-tab{background:none;border:none;border-radius:8px;color:#718096;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.75rem 1rem;transition:all .3s ease}.login-tab.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#2d3748}.login-tab:hover:not(.active){color:#2d3748}.login-footer{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem;text-align:center}.login-footer p{color:#718096;font-size:.9rem}.login-container .auth-form{margin:0}.login-container .auth-field{margin-bottom:1.5rem}.login-container .auth-field label{font-size:.9rem;margin-bottom:.5rem}.login-container .auth-field input{border-radius:10px;font-size:1rem;padding:1rem}.login-container .auth-submit{border-radius:10px;font-size:1.1rem;margin-top:1rem;padding:1rem;width:100%}.login-container .auth-error{font-size:.85rem;margin-top:.5rem}.login-container .auth-error.general-error{border-radius:10px;margin-bottom:1.5rem;padding:1rem}@media (max-width:768px){.login-page{min-height:70vh;padding:1rem}.login-container{padding:2rem}.login-header h1{font-size:2rem}.login-header p{font-size:1rem}.auth-fields-row{gap:.75rem;grid-template-columns:1fr!important}.auth-fields-row .auth-field{min-width:0!important;width:100%!important}.google-signin-divider{height:14px;margin:.75rem 0}.google-signin-divider span{font-size:.75rem;padding:0 .5rem}}@media (max-width:480px){.login-container{padding:1.5rem}.login-header h1{font-size:1.8rem}.login-tab{font-size:.9rem;padding:.5rem .75rem}.auth-fields-row{gap:.75rem;grid-template-columns:1fr!important}.auth-fields-row .auth-field{min-width:0!important;width:100%!important}.google-signin-divider{height:16px;margin:1rem 0}.google-signin-divider span{font-size:.8rem;padding:0 .75rem}}.header-content,.header-title{align-items:center;display:flex;flex-direction:column;gap:1rem}.header-title{flex-wrap:wrap;justify-content:center}.header-subtitle{color:#718096;font-size:1rem;font-style:italic;font-weight:400;margin:0}@media (max-width:768px){.header-title{flex-direction:column;gap:.5rem}}.tab-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-bottom:1.5rem;padding:1rem}.tab-buttons{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}@media (max-width:768px){.tab-buttons{flex-direction:column;gap:.75rem;overflow-x:visible}.tab-button{font-size:1rem;justify-content:center;padding:1rem;width:100%}}.tab-button{background:#f7fafc;border:2px solid #e2e8f0;border-radius:25px;color:#4a5568;cursor:pointer;font-size:.9rem;font-weight:600;min-width:fit-content;padding:.75rem 1.5rem;transition:all .3s ease;white-space:nowrap}.tab-button:hover{background:#edf2f7;border-color:#cbd5e0}.tab-button.active{background:#4299e1;border-color:#4299e1;box-shadow:0 4px 12px #4299e14d;color:#fff}.content-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.section-title{color:#2d3748;font-size:1.2rem;font-weight:700;gap:.5rem;margin-bottom:1rem}.section-icon,.section-title{align-items:center;display:flex}.section-icon{background:#4299e1;border-radius:6px;color:#fff;font-size:.8rem;height:24px;justify-content:center;width:24px}.form-group{margin-bottom:1.5rem}.form-label{color:#4a5568;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.form-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .3s ease;width:100%}.form-input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.equity-distribution-option{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:.75rem;padding:.75rem}.checkbox-label{align-items:flex-start;color:#4a5568;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:16px;margin:.125rem 0 0;width:16px}.checkbox-text{font-weight:500;line-height:1.4}.option-description{color:#718096;font-size:.8rem;line-height:1.3;margin-left:1.5rem;margin-top:.5rem}.form-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.button-group{grid-gap:.75rem;margin-bottom:1rem}.button-group,.grid-2{display:grid;gap:.75rem}.grid-2{grid-gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.grid-3{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.grid-3{gap:1rem;grid-template-columns:1fr}}@media (min-width:769px) and (max-width:1023px){.grid-3{gap:1rem;grid-template-columns:repeat(2,1fr)}}.grid-5{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.selection-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;font-size:.85rem;font-weight:600;gap:.25rem;justify-content:center;min-height:60px;padding:1rem .75rem;text-align:center;transition:all .3s ease}.selection-button:hover{background:#f7fafc;border-color:#4299e1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.selection-button.selected{background:#4299e1;border-color:#4299e1;box-shadow:0 4px 12px #4299e14d;color:#fff}.selection-button.selected:hover{background:#3182ce;transform:translateY(-2px)}.stock-card{background:#fff;border:2px solid #e2e8f0}.stock-card:hover{border-color:#4299e1;box-shadow:0 4px 12px #0000001a}.stock-card .remove-btn{align-items:center;background:#fed7d7;border:none;border-radius:50%;color:#e53e3e;cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:all .3s ease;width:24px}.stock-card .remove-btn:hover{background:#feb2b2;transform:scale(1.1)}.stock-number{color:#718096;font-size:.8rem;margin-bottom:.5rem}.action-button{align-items:center;background:linear-gradient(135deg,#4299e1,#3182ce);border:none;border-radius:12px;box-shadow:0 4px 12px #4299e14d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;padding:1rem 2rem;transition:all .3s ease;width:100%}.action-button:hover{box-shadow:0 8px 24px #4299e166;transform:translateY(-2px)}.action-button:active{transform:translateY(0)}.add-stock-btn{align-items:center;background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;box-shadow:0 4px 12px #48bb784d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.75rem 1rem;transition:all .3s ease}.add-stock-btn:hover{box-shadow:0 8px 24px #48bb7866;transform:translateY(-2px)}.results-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-top:2rem;padding:1.5rem}.ai-analysis-content{grid-gap:1.5rem;box-sizing:border-box;display:grid;gap:1.5rem;max-width:100%;overflow-x:hidden;width:100%}.ai-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:1.5rem}.ai-section h4{align-items:center;color:#2d3748;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.ai-section p{color:#4a5568;line-height:1.6;margin:0}.ai-analysis-header{align-items:flex-start;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.ai-analysis-title{flex:1 1}.ai-analysis-header h3{color:#2d3748;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.ai-analysis-context{color:#6b7280;font-size:.95rem;font-weight:500;line-height:1.4;margin:0}.ai-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ef44441a;border:1px solid #ef44444d;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:32px;justify-content:center;transition:all .3s ease;width:32px}.ai-close-btn:hover{background:#ef444433;border-color:#ef444480;box-shadow:0 2px 8px #ef444433;transform:scale(1.05)}.ai-close-btn:active{transform:scale(.95)}.ai-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0!important;display:flex;height:100vh!important;justify-content:center;left:0!important;margin:0!important;padding:0!important;position:fixed;right:0!important;top:0!important;width:100vw!important;z-index:9999}.ai-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:500px;overflow:hidden;padding:0;width:90%}.ai-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.ai-modal-header h3{font-size:1.25rem;font-weight:700;margin:0}.ai-modal-close-btn{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:32px;justify-content:center;transition:all .3s ease;width:32px}.ai-modal-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.ai-modal-content{padding:2rem;text-align:center}.ai-modal-context{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #3b82f633;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.analysis-context{color:#1e40af;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0}.ai-modal-progress{margin-bottom:2rem}.ai-modal-progress .progress-container{background:#e2e8f0;border-radius:10px;height:12px;margin-bottom:1rem;overflow:hidden}.ai-modal-progress .progress-bar{background:linear-gradient(90deg,#10b981,#059669);border-radius:10px;height:100%;transition:width .3s ease}.progress-text{color:#2d3748;font-size:1rem;font-weight:600;margin-bottom:.5rem}.ai-modal-status{margin-bottom:2rem}.ai-modal-status p{color:#4a5568;font-size:1.1rem;line-height:1.5;margin:0}.ai-modal-spinner{display:flex;justify-content:center;margin-top:1rem}.ai-modal-spinner .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#10b981;height:40px;width:40px}.backtest-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0!important;display:flex;height:100vh!important;justify-content:center;left:0!important;margin:0!important;padding:0!important;position:fixed;right:0!important;top:0!important;width:100vw!important;z-index:9999}.backtest-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:600px;overflow:hidden;padding:0;width:90%}.backtest-modal-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.backtest-modal-header h3{font-size:1.25rem;font-weight:700;margin:0}.backtest-modal-close-btn{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:32px;justify-content:center;transition:all .3s ease;width:32px}.backtest-modal-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.backtest-modal-content{padding:2rem;text-align:center}.backtest-modal-context{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #3b82f633;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.backtest-context{color:#1e40af;font-size:1rem;font-weight:600;line-height:1.4;margin:0}.backtest-modal-progress{margin-bottom:2rem}.backtest-modal-progress .progress-container{background:#e2e8f0;border-radius:10px;height:12px;margin-bottom:1rem;overflow:hidden}.backtest-modal-progress .progress-bar{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:10px;height:100%;transition:width .3s ease}.backtest-modal-status{margin-bottom:2rem}.backtest-modal-status p{color:#4a5568;font-size:1.1rem;line-height:1.5;margin:0}.backtest-modal-spinner{display:flex;justify-content:center;margin-top:1rem}.backtest-modal-spinner .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#3b82f6;height:40px;width:40px}.recommendations-list{grid-gap:1rem;display:grid;gap:1rem}.recommendation-item{background:#f8fafc;border-left:4px solid #4299e1;border-radius:8px;padding:1rem}.recommendation-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.recommendation-rank{background:#4299e1;border-radius:4px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.recommendation-stock{color:#2d3748;font-size:.9rem;font-weight:600}.recommendation-strategy{background:#e2e8f0;border-radius:4px;color:#4a5568;font-size:.8rem;padding:.25rem .5rem}.recommendation-reasoning{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0}.results-table-container{border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-top:1rem;overflow-x:auto}.desktop-only{display:block!important}.mobile-metrics-container,.mobile-only{display:none!important}.mobile-metrics-container{display:none;flex-direction:column;gap:1rem;margin-top:1rem}.mobile-metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:1rem}.mobile-card-header{border-bottom:1px solid #e2e8f0;margin-bottom:1rem;padding-bottom:.75rem}.mobile-card-header h6{color:#2d3748;font-size:1rem;font-weight:700;margin:0}.mobile-strategy-name{color:#718096;font-size:.875rem;font-weight:500}.mobile-metrics-list{display:flex;flex-direction:column;gap:.5rem}.mobile-metric-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:.5rem 0}.mobile-metric-item:last-child{border-bottom:none}.mobile-metric-label{color:#4a5568;flex:1 1;font-size:.875rem;font-weight:500}.mobile-metric-value{color:#4a5568;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:.875rem;font-weight:400;min-width:80px;text-align:right}.mobile-metric-value.positive{color:#38a169;font-weight:600}.mobile-metric-value.negative{color:#e53e3e;font-weight:600}.results-table{background:#fff;border-collapse:collapse;font-size:.875rem;min-width:600px;width:100%}.results-table th{background:#4299e1;border-bottom:2px solid #e2e8f0;color:#fff;font-size:.875rem;font-weight:700;letter-spacing:.025em;padding:1rem .75rem;position:sticky;text-align:center;top:0;white-space:nowrap;z-index:10}.results-table th:first-child{left:0;position:sticky;z-index:15}.strategy-header{background:#4299e1!important;color:#fff!important;font-weight:700!important}.strategy-cell{background:#fff!important;color:#2d3748!important;font-weight:600!important}.results-table td{border-bottom:1px solid #e2e8f0;font-weight:500;padding:.875rem .75rem;text-align:center;white-space:nowrap}.results-table tr:hover{background:#f7fafc}.metric-cell{background:#fff;border-right:2px solid #e2e8f0;color:#2d3748;font-weight:600;left:0;position:sticky;text-align:left;white-space:nowrap;z-index:5}.table tbody tr:hover .metric-cell{background:#f9fafb}.table tbody tr:hover .strategy-cell{background:#f9fafb!important}.value-cell{color:#4a5568;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:400;text-align:center}.value-cell.positive{color:#38a169;font-weight:600}.value-cell.negative{color:#e53e3e;font-weight:600}.value-cell.neutral{color:#4a5568;font-weight:400}.results-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.results-title-section{align-items:center;display:flex;gap:1rem}.download-btn{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1rem;transition:all .3s ease}.download-btn:hover{box-shadow:0 4px 15px #48bb784d}.filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.filter-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#4a5568;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .3s ease}.filter-btn:hover{background:#fff3;transform:translateY(-1px)}.filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 15px #667eea4d;color:#fff}.settings-timeframes-container,.stocks-strategies-container{display:flex;flex-direction:column;gap:2rem}.settings-section,.stocks-section,.strategies-section,.timeframe-section{flex:1 1}@media (min-width:1000px) and (max-width:1199px){.stocks-strategies-container{align-items:flex-start;flex-direction:row;gap:1rem}.timeframe-section{flex:1 1;margin-bottom:0;min-width:0}.stocks-section,.strategies-section{flex:2 1;margin-bottom:0;min-width:0}.stocks-section .grid-3,.strategies-grid{gap:.75rem;grid-template-columns:1fr}}@media (min-width:800px) and (max-width:999px){.stocks-strategies-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-areas:"timeframe stocks" "strategies strategies";grid-template-columns:1fr 2fr;grid-template-rows:auto auto}.timeframe-section{grid-area:timeframe;margin-bottom:0}.stocks-section{grid-area:stocks;margin-bottom:0}.strategies-section{grid-area:strategies;margin-bottom:0}.stocks-section .grid-3{gap:.75rem;grid-template-columns:1fr}.strategies-grid{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (min-width:1200px){.stocks-strategies-container{align-items:flex-start;flex-direction:row;gap:2rem}.timeframe-section{flex:2 1;margin-bottom:0}.stocks-section{flex:5 1;margin-bottom:0}.strategies-section{flex:3 1;margin-bottom:0}.stocks-section .grid-3{gap:1rem;grid-template-columns:repeat(2,1fr)}.strategies-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (min-width:1400px){.stocks-strategies-container{gap:2.5rem}.stocks-section .grid-3{gap:1.5rem;grid-template-columns:repeat(3,1fr)}.strategies-grid{gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (min-width:1600px){.stocks-strategies-container{gap:3rem}.stocks-section .grid-3{gap:2rem;grid-template-columns:repeat(4,1fr)}.strategies-grid{gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.performance-summary-grid{gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (min-width:600px) and (max-width:799px){.stocks-strategies-container{flex-direction:column;gap:1.5rem}.stocks-section,.strategies-section,.timeframe-section{flex:none;margin-bottom:0;width:100%}.stocks-section .grid-3{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.strategies-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (min-width:1024px){.settings-timeframes-container{align-items:flex-start;flex-direction:row;gap:3rem}.settings-section{flex:1 1;margin-bottom:0}.timeframes-section{flex:1 1}}.stocks-section{margin-bottom:2rem}.stocks-section h5{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.stocks-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stock-card{background:#ffffff1a;border:1px solid #fff3;padding:1rem}.stock-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.stock-ticker{color:#2d3748;font-size:1.2rem;font-weight:700;margin-bottom:.5rem}.stock-strategy{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2563eb,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:#2563eb;font-size:.85rem;font-weight:600;margin-bottom:.75rem;text-shadow:0 1px 2px #2563eb1a}.stock-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 4px 15px #0000001a;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;min-height:180px;padding:1.5rem;position:relative;transition:all .3s ease}.stock-card:hover{background:#fff3;border-color:#667eea80;box-shadow:0 8px 25px #00000026;transform:translateY(-3px)}.stock-card.selected{background:#667eea1a;border-color:#667eea;border-width:3px;box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.stock-card.selected:before{align-items:center;background:#667eea;border-radius:50%;box-shadow:0 2px 8px #667eea4d;color:#fff;content:"✓";display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;width:24px}.stock-metrics{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.metric-item{align-items:center;display:flex;justify-content:space-between}.metric-label{color:#718096;font-size:.85rem}.metric-value{font-size:.9rem;font-weight:600}.metric-value.positive{color:#38a169}.metric-value.negative{color:#e53e3e}.performance-section{margin-bottom:2rem}.performance-section h5{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.performance-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.performance-summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,200px);justify-content:center;justify-items:center}.performance-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;flex-shrink:0;height:140px;justify-content:space-between;overflow:hidden;padding:1.5rem;position:relative;text-align:center;transition:all .3s ease;width:200px}.performance-card:hover{background:#ffffff40;border-color:#667eea80;box-shadow:0 8px 25px #00000026;transform:translateY(-3px)}.performance-label{word-wrap:break-word;color:#718096;font-size:.85rem;height:40px;line-height:1.2;margin-bottom:.5rem;overflow-wrap:break-word}.performance-label,.performance-value{align-items:center;display:flex;justify-content:center}.performance-value{color:#2d3748;flex:1 1;font-size:1.5rem;font-weight:700;min-height:60px}.performance-value.positive{color:#38a169}.performance-value.negative{color:#e53e3e}@media (max-width:768px){.performance-card{height:140px;width:200px}.performance-summary-grid{gap:.75rem;grid-template-columns:repeat(auto-fit,200px)}}@media (max-width:480px){.performance-card{height:140px;padding:1rem;width:200px}.performance-label{font-size:.8rem;height:35px}.performance-value{font-size:1.3rem;min-height:55px}}.detailed-metrics-header{margin-bottom:1.5rem}.detailed-metrics-title{width:100%}.detailed-timeframe-info{word-wrap:break-word;color:#6b7280;font-size:.9rem;font-weight:500;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;margin:.5rem 0 0;overflow-wrap:break-word}.detailed-metrics-heading{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#1f2937;color:#fff;flex:1 1;font-size:1.5rem;font-weight:700;margin:0;padding:1rem;text-shadow:0 1px 2px #0000001a}.ai-analysis-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 4px 12px #10b9814d;color:#fff;cursor:pointer;font-weight:600;min-width:140px;padding:.75rem 1.5rem;transition:all .3s ease;white-space:nowrap}.ai-analysis-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 6px 20px #10b98166;transform:translateY(-2px)}.ai-analysis-btn:active:not(:disabled){transform:translateY(0)}.ai-analysis-btn:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);box-shadow:0 2px 8px #9ca3af4d;cursor:not-allowed;transform:none}.summary-cards-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:2rem;padding:1.5rem}@media (max-width:768px){.summary-cards-section{padding:1.5rem 0}.summary-cards-section>.stocks-section>h6,.summary-cards-section>h5,.summary-cards-section>p{padding-left:1.5rem;padding-right:1.5rem}.summary-cards-section .stocks-grid{box-sizing:border-box;justify-content:center;padding:0 1rem;width:100%}}.summary-cards-section h5{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0 0 1.5rem}.summary-cards-section h6{color:#4a5568;font-size:1rem;font-weight:600;margin:0 0 1rem}.detailed-metrics-section{margin-bottom:2rem}.detailed-metrics-section h5{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.timeframe-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.timeframe-tab{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#4a5568;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .3s ease}.timeframe-tab:hover{background:#fff3;transform:translateY(-1px)}.timeframe-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 15px #667eea4d;color:#fff}.trades-section{margin-bottom:2rem}.trades-section h5{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.trades-table-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;overflow-x:auto;position:relative}.trades-table{border-collapse:collapse;font-size:.85rem;width:100%}.trades-table td,.trades-table th{border-bottom:1px solid #ffffff1a;padding:.75rem;text-align:left}.trades-table th{background:#ffffff1a;color:#2d3748;font-weight:600}.trades-table td{color:#4a5568}.trades-table td.positive{color:#38a169;font-weight:600}.trades-table td.negative{color:#e53e3e;font-weight:600}.trades-section .table td.positive{color:#38a169;font-weight:600}.trades-section .table td.negative{color:#e53e3e;font-weight:600}.equity-cell{color:#4299e1;cursor:pointer;font-weight:600}.trades-section .table td:first-child,.trades-section .table th:first-child{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-right:2px solid #fff3;box-shadow:2px 0 4px #0000001a;left:0;position:sticky;z-index:10}.trades-section .table th{text-align:left}.trades-section .table th:first-child{background:#ffffff26;font-weight:700;text-align:left}.equity-cell:hover{text-decoration:underline}.download-btn:hover{box-shadow:0 8px 24px #48bb7866;transform:translateY(-2px)}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#4299e1;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.progress-container{background:#e2e8f0;border-radius:10px;height:8px;margin:1rem 0;overflow:hidden}.progress-bar{background:linear-gradient(90deg,#4299e1,#3182ce);border-radius:10px;height:100%;transition:width .3s ease}@media (min-width:768px){.App{padding:2rem}.header h1{font-size:2.2rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}.action-button{min-width:200px;width:auto}}@media (min-width:1024px){.content-card{padding:2rem}.selection-button{font-size:.9rem;min-height:80px}}.hidden{display:none}.text-center{text-align:center}.mb-2{margin-bottom:1rem}.mt-2{margin-top:1rem}.fade-in{animation:fadeIn .5s ease-in}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.detailed-metrics-heading{font-size:1.2rem;padding:.75rem;text-align:center}.detailed-timeframe-info{font-size:.8rem;margin-top:.75rem;text-align:center}.ai-analysis-btn{font-size:.9rem;min-width:auto;padding:.875rem 1rem;width:100%}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-metrics-container{display:flex!important}}@media (max-width:480px){.detailed-metrics-heading{font-size:1.1rem;padding:.625rem}.detailed-timeframe-info{font-size:.75rem}.ai-analysis-btn{font-size:.85rem;padding:.75rem .875rem}}@media (max-width:768px){.ai-modal,.backtest-modal{margin:1rem;max-height:90vh;max-width:none;width:95%}.ai-modal-header,.backtest-modal-header{padding:1rem}.ai-modal-header h3,.backtest-modal-header h3{font-size:1.1rem}.ai-modal-close-btn,.backtest-modal-close-btn{font-size:.9rem;height:28px;width:28px}.ai-modal-content,.backtest-modal-content{padding:1.5rem}.ai-modal-context,.backtest-modal-context{padding:.75rem}.ai-context,.backtest-context{font-size:.9rem;line-height:1.3}.ai-modal-progress,.backtest-modal-progress{margin-bottom:1.5rem}.ai-modal-progress .progress-container,.backtest-modal-progress .progress-container{height:10px}.progress-text{font-size:.9rem}.ai-modal-status,.backtest-modal-status{margin-bottom:1.5rem}.ai-modal-status p,.backtest-modal-status p{font-size:1rem}.ai-modal-spinner,.backtest-modal-spinner{margin-top:.75rem}.ai-modal-spinner .loading-spinner,.backtest-modal-spinner .loading-spinner{height:35px;width:35px}}@media (max-width:480px){.ai-modal,.backtest-modal{margin:.5rem;max-height:95vh;width:98%}.ai-modal-header,.backtest-modal-header{padding:.875rem}.ai-modal-header h3,.backtest-modal-header h3{font-size:1rem}.ai-modal-close-btn,.backtest-modal-close-btn{font-size:.8rem;height:26px;width:26px}.ai-modal-content,.backtest-modal-content{padding:1.25rem}.ai-modal-context,.backtest-modal-context{padding:.625rem}.ai-context,.backtest-context{font-size:.85rem;line-height:1.2}.ai-modal-progress,.backtest-modal-progress{margin-bottom:1.25rem}.ai-modal-progress .progress-container,.backtest-modal-progress .progress-container{height:8px}.progress-text{font-size:.85rem}.ai-modal-status,.backtest-modal-status{margin-bottom:1.25rem}.ai-modal-status p,.backtest-modal-status p{font-size:.9rem}.ai-modal-spinner,.backtest-modal-spinner{margin-top:.5rem}.ai-modal-spinner .loading-spinner,.backtest-modal-spinner .loading-spinner{height:30px;width:30px}}.strategies-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.strategy-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;cursor:pointer;min-height:180px;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s ease;-webkit-user-select:none;user-select:none}.strategy-card:hover{border-color:#4ade80;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.strategy-card.selected{background:#4ade800d;border-color:#4ade80;box-shadow:0 8px 25px #4ade8026}.strategy-card:active{box-shadow:0 4px 12px #0000001a;transform:translateY(0)}.strategy-card-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.strategy-info{width:100%}.strategy-name{color:#2d3748;font-size:1.1rem;font-weight:700;line-height:1.3;margin:0 0 .5rem}.strategy-description{word-wrap:break-word;color:#718096;font-size:.85rem;line-height:1.4;overflow-wrap:break-word;width:100%}.strategy-controls{align-items:center;align-self:flex-end;display:flex;gap:.75rem}.strategy-toggle{cursor:pointer;display:inline-block;height:26px;position:relative;width:50px}.strategy-toggle input{height:0;opacity:0;width:0}.toggle-slider{background-color:#cbd5e0;border-radius:26px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #0003;content:"";height:20px;left:3px;position:absolute;transition:.3s;width:20px}.strategy-toggle input:checked+.toggle-slider{background-color:#4ade80}.strategy-toggle input:checked+.toggle-slider:before{transform:translateX(24px)}.strategy-settings-btn{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;height:36px;justify-content:center;padding:.5rem;transition:all .3s ease;width:36px}.strategy-settings-btn:hover{background:#4ade80;border-color:#4ade80;color:#fff;transform:scale(1.05)}.strategy-settings-btn svg{transition:transform .3s ease}.strategy-settings-btn:hover svg{transform:rotate(90deg)}.strategy-status{align-items:center;display:flex;gap:.5rem;margin-top:.5rem}.status-indicator{background-color:#cbd5e0;border-radius:50%;height:8px;width:8px}.status-indicator.active{background-color:#4ade80;box-shadow:0 0 0 2px #4ade8033}.status-text{color:#718096;font-size:.8rem;font-weight:500}.strategy-params-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0!important;display:flex;height:100vh!important;justify-content:center;left:0!important;margin:0!important;overflow:hidden;padding:0!important;position:fixed;right:0!important;top:0!important;width:100vw!important;z-index:9999}.strategy-params-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:80vh;max-width:500px;overflow:hidden;width:90%}.strategy-params-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #ffffff1a;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.strategy-params-modal-header h3{font-size:1.25rem;font-weight:600;margin:0}.strategy-params-modal-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:all .3s ease;width:32px}.strategy-params-modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.strategy-params-modal-content{-webkit-overflow-scrolling:touch;max-height:60vh;overflow-y:auto;overscroll-behavior:contain;padding:2rem;scrollbar-color:#cbd5e0 #f7fafc;scrollbar-width:thin}.strategy-params-modal-content::-webkit-scrollbar{width:6px}.strategy-params-modal-content::-webkit-scrollbar-track{background:#f7fafc;border-radius:3px}.strategy-params-modal-content::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.strategy-params-modal-content::-webkit-scrollbar-thumb:hover{background:#a0aec0}.strategy-params-form{display:flex;flex-direction:column;gap:1.5rem}.scroll-indicator{background:#f7fafc;border-radius:0 0 8px 8px;border-top:1px solid #e2e8f0;color:#718096;font-size:.8rem;font-style:italic;margin:1rem -2rem -2rem;padding:1rem 2rem;text-align:center}.strategy-params-form .param-input-group{display:flex;flex-direction:column;gap:.5rem}.param-label-container{align-items:center;display:flex;gap:.5rem}.param-info-tooltip{position:relative}.info-icon{align-items:center;background:none;border:none;border-radius:50%;color:#718096;cursor:help;display:flex;justify-content:center;padding:.25rem;transition:all .3s ease}.info-icon:hover{background:#4ade801a;color:#4ade80;transform:scale(1.1)}.info-icon svg{transition:transform .3s ease}.info-icon:hover svg{transform:scale(1.1)}.global-tooltip{word-wrap:break-word;animation:tooltipFadeIn .2s ease-out;background:#1a202c;border:1px solid #ffffff1a;border-radius:8px;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;color:#fff;font-size:.85rem;-webkit-hyphens:auto;hyphens:auto;left:0;line-height:1.5;max-width:320px;overflow-wrap:break-word;padding:.75rem 1rem;pointer-events:none;position:fixed;top:0;transform:translateX(-50%);white-space:normal;width:max-content;z-index:9999}@media (max-width:768px){.global-tooltip{font-size:.8rem;left:10px!important;max-width:calc(100vw - 20px);padding:.5rem .75rem;right:10px!important;transform:none;width:calc(100vw - 20px)}}.global-tooltip:after{border:8px solid;border-color:#0000 #0000 #1a202c;bottom:100%;content:"";left:50%;position:absolute;transform:translateX(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(5px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.strategy-params-form .param-input-group label{color:#2d3748;font-size:.9rem;font-weight:600}.strategy-params-form .param-input-group input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#2d3748;font-size:1rem;font-weight:500;padding:.75rem;transition:all .3s ease;width:100%}.strategy-params-form .param-input-group input:focus{border-color:#4ade80;box-shadow:0 0 0 3px #4ade801a;outline:none}@media (max-width:768px){.strategy-params-modal{margin:1rem;max-height:90vh;width:95%}.strategy-params-modal-header{padding:1rem}.strategy-params-modal-header h3{font-size:1.1rem}.strategy-params-modal-content{max-height:70vh;padding:1rem 1rem 2rem}.strategy-params-form{gap:1rem}.strategy-params-form .param-input-group{gap:.5rem}.scroll-indicator{font-size:.75rem;margin:.75rem -1rem -1rem;padding:.75rem 1rem}.strategy-params-form .param-input-group label{font-size:.85rem}.strategy-params-form .param-input-group input{font-size:.9rem;padding:.6rem}.info-icon{padding:.2rem}.info-icon svg{height:12px;width:12px}.global-tooltip{font-size:.8rem;line-height:1.4;max-width:280px;padding:.6rem .8rem;transform:translateX(-50%)}.global-tooltip:after{border-width:6px}.strategies-grid{gap:.75rem;grid-template-columns:1fr}.strategy-card{padding:1rem}.strategy-card-header{align-items:flex-start;flex-direction:column;gap:1rem}.strategy-controls{align-self:flex-end}.strategy-name{font-size:1rem}.strategy-description{font-size:.8rem}}@media (max-width:480px){.strategy-params-modal{margin:.5rem;max-height:95vh;width:98%}.strategy-params-modal-header{padding:.75rem}.strategy-params-modal-header h3{font-size:1rem}.strategy-params-modal-content{max-height:80vh;padding:.75rem .75rem 1.5rem}.strategy-params-form{gap:.75rem}.scroll-indicator{font-size:.7rem;margin:.5rem -.75rem -.75rem;padding:.5rem .75rem}.strategy-params-form .param-input-group input{font-size:.85rem;padding:.5rem}.global-tooltip{font-size:.75rem;line-height:1.3;max-width:250px;padding:.5rem .7rem;transform:translateX(-50%)}.global-tooltip:after{border-width:5px}.strategy-card{padding:.75rem}.strategy-card-header{gap:.75rem}.strategy-name{font-size:.9rem}.strategy-description{font-size:.75rem}.strategy-toggle{height:24px;width:44px}.toggle-slider:before{bottom:3px;height:18px;left:3px;width:18px}.strategy-toggle input:checked+.toggle-slider:before{transform:translateX(20px)}.strategy-settings-btn{height:32px;width:32px}.strategy-settings-btn svg{height:14px;width:14px}}.strategy-params-section{background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d;margin-top:1.5rem;padding:1.5rem}.strategy-params-section .section-title{align-items:center;color:#2d3748;display:flex;font-weight:600;justify-content:space-between;margin-bottom:1.5rem}.toggle-params-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:all .3s ease}.toggle-params-btn:hover{background:#fff3;border-color:#ffffff4d}.strategy-params-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.strategy-param-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:1.5rem;transition:all .3s ease}.strategy-param-card:hover{border-color:#4ade80;box-shadow:0 6px 12px #0000001a}.strategy-param-card h4{border-bottom:2px solid #f7fafc;color:#2d3748;font-size:1.1rem;font-weight:700;margin-bottom:1.5rem;padding-bottom:.5rem}.param-inputs{gap:.75rem}.param-input-group,.param-inputs{display:flex;flex-direction:column}.param-input-group{gap:.25rem}.param-input-group label{color:#2d3748;display:block;font-size:.85rem;font-weight:600;margin-bottom:.25rem}.param-input-group input{background:#fff;border:2px solid #e2e8f0;border-radius:6px;box-sizing:border-box;color:#2d3748;font-size:.9rem;font-weight:500;padding:.75rem;transition:all .3s ease;width:100%}.param-input-group input:focus{background:#fff;border-color:#4ade80;box-shadow:0 0 0 3px #4ade801a;outline:none}.param-input-group input::placeholder{color:#a0aec0}@media (max-width:768px){.strategy-params-grid{grid-template-columns:1fr}.strategy-param-card{padding:.75rem}.strategy-params-section .section-title{align-items:flex-start;flex-direction:column;gap:.5rem}.toggle-params-btn{align-self:flex-end}}.add-strategy-btn{align-items:center;background:linear-gradient(135deg,#4ade80,#22c55e);border:none;border-radius:8px;box-shadow:0 2px 4px #4ade8033;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .3s ease}.add-strategy-btn:hover{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 8px #4ade804d;transform:translateY(-1px)}.add-strategy-btn:active{transform:translateY(0)}.remove-strategy-btn{align-items:center;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer;display:flex;height:28px;justify-content:center;padding:.4rem;transition:all .3s ease;width:28px}.remove-strategy-btn:hover{background:#fecaca;border-color:#fca5a5;color:#b91c1c;transform:scale(1.05)}.remove-strategy-btn:active{transform:scale(.95)}.add-strategy-options{padding:1rem 0}.add-strategy-options h4{color:#374151;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.strategy-options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.strategy-option-btn{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;padding:1.5rem;text-align:left;transition:all .3s ease;width:100%}.strategy-option-btn:hover{background:#f3f4f6;border-color:#d1d5db;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.strategy-option-btn:active{transform:translateY(0)}.strategy-option-name{color:#111827;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.strategy-option-desc{color:#6b7280;font-size:.9rem;line-height:1.4}@media (max-width:768px){.strategy-options-grid{gap:.75rem}.strategy-option-btn{padding:1.25rem}.strategy-option-name{font-size:1rem}.strategy-option-desc{font-size:.85rem}}@media (max-width:480px){.strategy-option-btn{padding:1rem}.add-strategy-options h4{font-size:1rem}}.trade-filters{background:#fffc;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{color:#2d3748;font-size:.9rem;font-weight:600}.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:.9rem;padding:.5rem;transition:all .3s ease}.filter-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.clear-filters-btn{align-self:end;background:#f56565;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:1.5rem;padding:.5rem 1rem;transition:all .3s ease}.clear-filters-btn:hover{background:#e53e3e;transform:translateY(-1px)}.clear-filters-btn:active{transform:translateY(0)}@media (max-width:768px){.trade-filters{flex-direction:column;gap:.75rem}.filter-group{min-width:auto}.clear-filters-btn{align-self:stretch;margin-top:.5rem}}.notification{animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:400px;position:fixed;right:20px;top:20px;z-index:10000}.notification-warning{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.notification-info{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.notification-content{align-items:center;display:flex;gap:8px;padding:12px 16px}.notification-icon{flex-shrink:0;font-size:16px}.notification-message{flex:1 1;font-size:14px;line-height:1.4}.notification-close{align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;padding:0;transition:background-color .2s;width:20px}.notification-close:hover{background-color:#0000001a}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.notification{left:10px;max-width:none;right:10px;top:10px}}.failed-stocks-warning{word-wrap:break-word;align-items:flex-start;animation:fadeIn .3s ease-in;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;display:flex;font-size:.9rem;gap:8px;line-height:1.4;margin-top:8px;padding:8px 12px}.failed-stocks-warning strong{color:#6c5700;font-weight:600}@media (max-width:768px){.failed-stocks-warning{align-items:flex-start;flex-direction:column;font-size:.85rem;gap:6px;margin-bottom:12px;padding:10px;text-align:left}.failed-stocks-warning span:first-child{font-size:1rem}.results-header{align-items:stretch;flex-direction:column;gap:12px}.results-title-section{order:1}.results-header>div:last-child{order:2}}@media (max-width:480px){.failed-stocks-warning{font-size:.8rem;margin-top:6px;padding:8px 10px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.top-level-filters{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding:16px}.top-level-filters .filter-group{display:flex;flex-direction:column;gap:4px;min-width:150px}.top-level-filters .filter-group label{color:#495057;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.top-level-filters .filter-select{background:#fff;border:1px solid #ced4da;border-radius:6px;color:#495057;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s,box-shadow .2s}.top-level-filters .filter-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.top-level-filters .clear-filters-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s;white-space:nowrap}.top-level-filters .clear-filters-btn:hover{background:#5a6268}@media (max-width:768px){.top-level-filters{align-items:stretch;flex-direction:column;gap:12px}.top-level-filters .filter-group{min-width:auto}.top-level-filters .clear-filters-btn{align-self:flex-start}}.results-controls{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.stock-filter-section{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:16px;padding:16px}.stock-filter-section .filter-group{display:flex;flex-direction:column;gap:4px;min-width:150px}.stock-filter-section .filter-group label{color:#495057;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stock-filter-section .filter-select{background:#fff;border:1px solid #ced4da;border-radius:6px;color:#495057;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s,box-shadow .2s}.stock-filter-section .filter-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.stock-filter-section .clear-filters-btn{align-self:flex-end;background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s;white-space:nowrap}.stock-filter-section .clear-filters-btn:hover{background:#5a6268}.results-controls .filter-buttons{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px}.results-controls .filter-btn{background:#fff;border:1px solid #ced4da;border-radius:6px;color:#495057;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.results-controls .filter-btn:hover{background:#e9ecef;border-color:#adb5bd}.results-controls .filter-btn.active{background:#4299e1;border-color:#4299e1;color:#fff}@media (max-width:768px){.results-controls{gap:12px}.stock-filter-section{align-items:stretch;flex-direction:column;gap:12px}.stock-filter-section .filter-group{min-width:auto}.stock-filter-section .clear-filters-btn{align-self:flex-start}.results-controls .filter-buttons{justify-content:center}}.subscribe-section{border-top:1px solid #e2e8f0;flex-shrink:0;margin-top:auto;padding-top:.75rem}.subscribe-strategy-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #667eea33;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1rem;transition:all .3s ease;width:100%}.subscribe-strategy-btn:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 4px 8px #667eea4d;transform:translateY(-2px)}.subscribe-strategy-btn:active{box-shadow:0 2px 4px #667eea33;transform:translateY(0)}.subscribe-strategy-btn:focus{box-shadow:0 0 0 3px #667eea4d;outline:none}@media (max-width:768px){.subscribe-strategy-btn{font-size:.85rem;padding:.65rem .85rem}.performance-summary-grid{gap:1rem;grid-template-columns:1fr}}.strategy-highlight{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.strategy-highlight h4{color:#2d3748;font-size:1.3rem;margin:0 0 .5rem}.strategy-description{color:#4a5568;font-size:1rem;margin:0}.feature-details,.how-it-works{margin-bottom:1.5rem}.feature-details h5,.how-it-works h5{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.1rem;margin:0 0 1rem;padding-bottom:.5rem}.feature-details ul,.how-it-works ol{margin:0;padding-left:1.5rem}.feature-details li,.how-it-works li{color:#4a5568;line-height:1.6;margin-bottom:.75rem}.feature-details strong{color:#2d3748}.coming-soon-notice{align-items:flex-start;background:linear-gradient(135deg,#fff5f5,#fed7d7);border:2px solid #feb2b2;border-radius:12px;display:flex;gap:1rem;padding:1.5rem}.notice-icon{flex-shrink:0;font-size:2rem}.notice-content h5{color:#c53030;font-size:1.1rem;margin:0 0 .5rem}.notice-content p{color:#742a2a;line-height:1.6;margin:0}.subscription-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0!important;box-sizing:border-box!important;display:flex;height:100vh!important;justify-content:center;left:0!important;margin:0!important;overflow:hidden!important;overscroll-behavior:none!important;padding:1rem!important;position:fixed;right:0!important;top:0!important;touch-action:none!important;width:100vw!important;z-index:9999}.modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:#fff;border-bottom:2px solid #e2e8f0;display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem 1.5rem 1rem;position:sticky;top:0;z-index:10}.modal-header h3{color:#2d3748;font-size:1.4rem;font-weight:700;margin:0}.modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#718096;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:.5rem;transition:all .2s ease;width:40px}.modal-close-btn:hover{background:#f7fafc;color:#4a5568}.modal-body{flex:1 1;overflow-y:auto;padding:1.5rem;scrollbar-color:#cbd5e0 #f7fafc;scrollbar-width:thin}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f7fafc;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:#a0aec0}.subscription-info{padding:1rem 0}.action-buttons-section{margin-top:2rem;padding:1.5rem 0}.action-buttons-container{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}@media (max-width:768px){.action-buttons-container{flex-direction:column;gap:.75rem}.action-buttons-container .btn{max-width:300px;width:100%}}.timeframe-section{margin-bottom:2rem}.timeframe-section h5{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}@media (min-width:768px){.timeframe-section{flex-shrink:0;margin-bottom:0;min-width:0}.timeframe-card{height:fit-content;max-width:none;min-height:auto;width:100%}}.timeframe-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 4px 15px #0000001a;min-height:180px;padding:1.5rem;position:relative;transition:all .3s ease;width:100%}.timeframe-card:hover{background:#fff3;border-color:#667eea80;box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.timeframe-dropdown-container{display:flex;flex-direction:column;gap:.75rem;width:100%}.timeframe-dropdown{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#2d3748;cursor:pointer;font-size:1rem;padding:.75rem;transition:all .3s ease;width:100%}.timeframe-dropdown:hover{background:#f7fafc;border-color:#4299e1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.timeframe-dropdown:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e14d;outline:none}.timeframe-info{margin-top:.5rem;width:100%}.timeframe-info small{word-wrap:break-word;display:block;line-height:1.4;max-width:100%;overflow:hidden;overflow-wrap:break-word}@media (max-width:768px){.timeframe-dropdown{font-size:.9rem;max-width:100%;padding:.65rem}.timeframe-card{margin:0 auto;max-width:320px;width:90%}}@media (min-width:1200px){.timeframe-card{margin:0!important;max-width:none!important;min-height:180px;padding:1.5rem;width:100%!important}}@media (min-width:900px) and (max-width:1199px){.timeframe-card{margin:0!important;max-width:none!important;width:100%!important}}@media (max-width:480px){.timeframe-card{max-width:280px;width:95%}.container{padding:1rem;padding:var(--space-3)}.App{padding:.75rem}}@media (max-width:360px){.container{padding:.75rem;padding:var(--space-2)}.App{padding:.5rem}}@media (max-width:400px){.ai-analysis-content,.content-card,.detailed-metrics-section,.results-section,.trades-section{box-sizing:border-box!important;max-width:100%!important;overflow-x:hidden!important}}.btn{align-items:center;border:1px solid #0000;border-radius:12px;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.725rem 1rem;transition:.2s}.btn:focus-visible{outline:3px solid #2563eb40;outline-offset:2px}.btn-primary{background:#2563eb;background:var(--brand);color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#fff;border-color:#e5e7eb}.btn-secondary:hover{background:#f9fafb}.btn-subtle{background:#0000;color:#6b7280;color:var(--muted)}.table-wrap{background:#fff;background:var(--card);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 1px 2px #1018280f;box-shadow:var(--shadow-sm);overflow:auto}.table{border-collapse:initial;border-spacing:0;font-size:.92rem;width:100%}.table td,.table th{border-bottom:1px solid #eef2f7;padding:.65rem .75rem;white-space:nowrap}.table tbody tr:hover{background:#f9fafb}.mobile-cta{bottom:1.25rem;bottom:var(--space-4);position:fixed;right:1.25rem;right:var(--space-4);transition:all .3s ease;z-index:50}@media (min-width:992px){.mobile-cta{display:none}}.mobile-cta-fab{align-items:center;background:#2563eb;background:var(--brand);border:none;border-radius:50%;box-shadow:0 16px 32px #1018281f;box-shadow:var(--shadow-lg);color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:56px;justify-content:center;transition:all .3s ease;width:56px}.mobile-cta-fab:hover{background:#1e40af;background:var(--brand-ink);transform:scale(1.05)}.mobile-cta-fab:active{transform:scale(.95)}.mobile-cta-expanded{background:#fff;background:var(--card);border:1px solid #e5e7eb;border-radius:16px;border-radius:var(--radius-lg);bottom:1.25rem;bottom:var(--space-4);box-shadow:0 16px 32px #1018281f;box-shadow:var(--shadow-lg);min-width:200px;padding:1rem;padding:var(--space-3);right:1.25rem;right:var(--space-4)}.mobile-cta-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:.75rem;margin-bottom:var(--space-2);padding-bottom:.75rem;padding-bottom:var(--space-2)}.mobile-cta-title{color:#1f2937;color:var(--text);font-size:.9rem;font-weight:600}.mobile-cta-close{align-items:center;background:none;border:none;border-radius:50%;color:#6b7280;color:var(--muted);cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:24px}.mobile-cta-close:hover{background:#f3f4f6;color:#1f2937;color:var(--text)}.mobile-cta-actions{display:flex;flex-direction:column;gap:.75rem;gap:var(--space-2)}.mobile-cta-actions .btn{font-size:.9rem;justify-content:center;padding:.6rem 1rem}.mobile-cta-badge{align-items:center;background:#dc2626;background:var(--danger);border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:600;height:18px;justify-content:center;position:absolute;right:-4px;top:-4px;width:18px}
/*# sourceMappingURL=main.61f149cf.css.map*/