body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg:#f4f6f9;--card:#fff;--text:#0f172a;--muted:#64748b;--brand:#1d4ed8;--brand-ink:#1e3a8a;--brand-soft:#eff6ff;--success:#15803d;--success-soft:#ecfdf5;--warning:#a16207;--warning-soft:#fffbeb;--danger:#b91c1c;--danger-soft:#fef2f2;--border:#e2e8f0;--border-strong:#cbd5e1;--radius-lg:14px;--radius-md:10px;--radius-sm:8px;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 4px 12px #0f172a0f;--shadow-lg:0 12px 28px #0f172a14;--space-1:.5rem;--space-2:.75rem;--space-3:1rem;--space-4:1.25rem;--space-5:1.5rem;--space-6:2rem;--font:"Plus Jakarta Sans","Segoe UI",sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#0b1220;--card:#0e1628;--text:#e5e7eb;--muted:#9aa4b2;--border:#1f2a44;--border-strong:#334155}}body,html{background:#f4f6f9;background:var(--bg);color:#0f172a;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{box-sizing:border-box;max-width:100%;overflow-x:hidden;width:100%}.section-title{margin:0 0 1rem;margin:0 0 var(--space-3) 0}.header-row{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);gap:1rem;justify-content:space-between;margin-bottom:1.25rem;padding:.85rem 1rem}.header-actions,.header-row{align-items:center;display:flex}.header-actions{flex-wrap:wrap;gap:.5rem}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f4f6f9;background:var(--bg);color:#0f172a;color:var(--text);font-family:Plus Jakarta Sans,Segoe UI,sans-serif;font-family:var(--font)}.App,body{min-height:100vh}.App{box-sizing:border-box;max-width:100vw;overflow-x:hidden;padding:1rem;width:100%}.brand-block{align-items:center;display:flex;gap:.75rem;min-width:0}.brand-mark{align-items:center;background:linear-gradient(145deg,#2563eb,#1e3a8a);border-radius:10px;box-shadow:0 6px 14px #2563eb40;color:#fff;display:inline-flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.brand-mark svg{height:18px;width:18px}.brand-text{min-width:0}.brand-name,.brand-text h1{color:#0f172a;color:var(--text);font-size:1.15rem;font-weight:750;letter-spacing:-.02em;line-height:1.2;margin:0}.brand-tagline,.brand-text .header-subtitle{color:#64748b;color:var(--muted);font-size:.82rem;font-style:normal;font-weight:500;margin:.15rem 0 0}.app-topbar-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}.plan-pill{align-items:center;border:1px solid #0000;border-radius:999px;cursor:help;display:inline-flex;font-size:.72rem;font-weight:700;gap:.35rem;letter-spacing:.02em;padding:.28rem .65rem;text-transform:uppercase;white-space:nowrap}.plan-pill.free{background:#f8fafc;border-color:#e2e8f0;border-color:var(--border);color:#475569}.plan-pill.premium{background:#fffbeb;border-color:#fde68a;color:#92400e}.plan-pill.ultra{background:#ecfdf5;background:var(--success-soft);border-color:#bbf7d0;color:#166534}.plan-pill-detail{font-weight:600;letter-spacing:0;opacity:.9;text-transform:none}.plan-pill-wrap{align-items:center;display:inline-flex;max-width:100%;position:relative;width:fit-content}.plan-tooltip{background:#0f172a;border-radius:10px;bottom:calc(100% + .55rem);box-shadow:0 12px 28px #0f172a14;box-shadow:var(--shadow-lg);color:#e2e8f0;left:0;opacity:0;padding:.75rem .85rem;pointer-events:none;position:absolute;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease;visibility:hidden;width:min(260px,72vw);z-index:60}.plan-tooltip:after{border:6px solid #0000;border-top-color:#0f172a;content:"";left:1.1rem;position:absolute;top:100%}.plan-pill-wrap:focus-within .plan-tooltip,.plan-pill-wrap:hover .plan-tooltip{opacity:1;transform:translateY(0);visibility:visible}.plan-tooltip-title{color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.02em;margin:0 0 .45rem;text-transform:uppercase}.plan-tooltip-list{grid-gap:.28rem;color:#cbd5e1;display:grid;font-size:.8rem;gap:.28rem;line-height:1.35;margin:0;padding:0 0 0 1rem}.plan-tooltip-meta{border-top:1px solid #94a3b859;color:#94a3b8;font-size:.72rem;line-height:1.35;margin:.55rem 0 0;padding-top:.5rem}.user-chip{color:#64748b;color:var(--muted);font-size:.85rem;font-weight:500}.upgrade-banner{align-items:flex-start;background:#eff6ff;background:var(--brand-soft);border:1px solid #bfdbfe;border-radius:10px;border-radius:var(--radius-md);color:#1e3a8a;display:flex;gap:.75rem;justify-content:space-between;padding:.85rem 1rem}.upgrade-banner p{font-size:.88rem;line-height:1.45;margin:0}.upgrade-banner strong{font-weight:700}.upgrade-banner-close{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:1rem;line-height:1;padding:.15rem}.upgrade-banner-close:hover{background:#0f172a0f;color:#0f172a;color:var(--text)}.header{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1.25rem 1.5rem;text-align:left}.header h1{align-items:center;color:#0f172a;color:var(--text);display:flex;font-size:1.8rem;font-weight:700;gap:.5rem;justify-content:flex-start;margin-bottom:.5rem}.header p{color:#64748b;color:var(--muted);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:#eff6ff;background:var(--brand-soft);border:1px solid #bfdbfe;border-radius:8px;margin-bottom:20px;padding:12px 16px;text-align:left}.gmail-signin-info p{color:#1e3a8a;font-size:.85rem;line-height:1.45;margin:0}.gmail-signin-info strong{color:#1e3a8a}.google-signin-primary{align-items:stretch;display:flex;flex-direction:column;gap:.65rem;max-width:100%;min-width:0;width:100%}.google-signin-hint{color:#64748b;color:var(--muted);font-size:.82rem;line-height:1.4;margin:0;max-width:100%;text-align:center}.auth-form--login{gap:.85rem;max-width:100%;min-width:0;width:100%}.auth-password-panel{display:flex;flex-direction:column;gap:.85rem;padding-top:.15rem;width:100%}.auth-alt-toggle{justify-content:center;width:100%}.auth-alt-hide{background:#0000;border:none;color:#64748b;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.82rem;padding:.25rem;text-decoration:underline;text-underline-offset:2px}.auth-alt-hide:hover{color:#0f172a;color:var(--text)}.google-signin-container{flex-direction:column;margin-top:0;max-width:100%;overflow:hidden}.google-signin-container,.google-signin-divider{align-items:center;display:flex;justify-content:center;min-width:0;text-align:center;width:100%}.google-signin-divider{height:20px;margin:.35rem 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;background:var(--card);color:#64748b;font-size:.875rem;font-weight:500;padding:0 1rem;position:relative;z-index:2}#g_id_signin,.g_id_signin,.google-signin-container .g_id_signin{align-items:center!important;min-height:40px!important;min-width:0!important}#g_id_signin,.g_id_signin,.g_id_signin>div,.google-signin-container .g_id_signin{display:flex!important;justify-content:center!important;max-width:100%!important;overflow:hidden!important;width:100%!important}.g_id_signin iframe{display:block!important;margin:0 auto!important;max-width:100%!important}.login-page{align-items:center;background:#0000;box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;overflow-x:hidden;padding:1rem}.login-container{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #0f172a0f;box-shadow:var(--shadow-md);box-sizing:border-box;max-width:min(400px,calc(100vw - 2rem));min-width:0;overflow:hidden;padding:1.25rem 1.15rem 1.15rem;width:100%}.login-container .auth-form{max-width:100%;width:100%}.login-header{margin-bottom:1.5rem;text-align:center}.login-header .brand-mark{margin:0 auto .85rem}.login-header h1{color:#0f172a;color:var(--text);font-size:1.65rem;font-weight:750;letter-spacing:-.02em;margin-bottom:.35rem}.login-header p{color:#64748b;color:var(--muted);font-size:.95rem}.login-tabs{background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;display:flex;margin-bottom:1.5rem;padding:.25rem}.login-tab{background:none;border:none;border-radius:8px;color:#64748b;color:var(--muted);cursor:pointer;flex:1 1;font-family:inherit;font-size:.95rem;font-weight:600;padding:.7rem 1rem;transition:all .2s ease}.login-tab.active{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm)}.login-tab.active,.login-tab:hover:not(.active){color:#0f172a;color:var(--text)}.login-footer{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.25rem;text-align:center}.login-footer p{color:#64748b;color:var(--muted);font-size:.85rem}.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:100vh;padding:.75rem}.login-container{max-width:min(400px,calc(100vw - 1.5rem));padding:1.15rem 1rem}.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{max-width:calc(100vw - 1rem);padding:1rem .85rem}.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:#64748b;color:var(--muted);font-size:.82rem;font-style:normal;font-weight:500;margin:.15rem 0 0}@media (max-width:768px){.header-title{flex-direction:column;gap:.5rem}.header-row{align-items:stretch;flex-direction:column}.app-topbar-meta{justify-content:space-between}}.tab-container{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1rem}.tab-buttons{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}@media (max-width:768px){.tab-buttons{border-bottom:none;flex-direction:column;gap:.5rem;overflow-x:visible}.tab-button{font-size:.95rem;justify-content:center;padding:.85rem 1rem;width:100%}}.tab-button{background:#0000;border:1px solid #0000;border-radius:10px;color:#64748b;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;min-width:fit-content;padding:.65rem 1rem;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#f8fafc;color:#0f172a;color:var(--text)}.tab-button.active{background:#eff6ff;background:var(--brand-soft);border-color:#bfdbfe;color:#1e3a8a;color:var(--brand-ink)}.content-card{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1.25rem}.section-title{align-items:center;color:#0f172a;color:var(--text);display:flex;font-size:1.05rem;font-weight:650;gap:.65rem;letter-spacing:-.01em;margin-bottom:1rem}.section-icon{background:#1d4ed8;background:var(--brand);border-radius:999px;display:inline-block;flex-shrink:0;height:8px;width:8px}.form-group{margin-bottom:1.5rem}.form-label{color:#4a5568;display:block;font-size:.9rem;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}.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:#2d3748;font-size:1rem;font-weight:600;margin:0 0 1rem}.strategy-rollup-section{background:#ffffffa6;border:1px solid #2d37481f;border-radius:10px;margin-bottom:1.75rem;padding:1.25rem}.strategy-rollup-section--modal{background:#0000;border:none;margin-bottom:0;padding:0}.strategy-rollup-empty{color:#718096;font-size:.9rem;margin:0}.strategy-rollup-period-note{color:#718096;font-size:.78rem;line-height:1.4;margin:.5rem 0 0}.results-header-actions{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem}.strategy-rollup-modal{max-width:920px;width:min(95vw,920px)}.strategy-rollup-modal .strategy-params-modal-content{max-height:min(75vh,720px)}.strategy-rollup-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.strategy-rollup-header h6{font-size:1.05rem;margin:0 0 .35rem}.strategy-rollup-subtitle{color:#718096;font-size:.88rem;margin:0}.strategy-rollup-method{color:#4a5568;font-size:.8rem;font-style:italic;margin:.35rem 0 0}.strategy-rollup-timeframe{display:flex;flex-direction:column;gap:.25rem;min-width:88px}.strategy-rollup-timeframe label{color:#718096;font-size:.75rem;font-weight:600}.strategy-rollup-timeframe select{background:#fff;border:1px solid #cbd5e0;border-radius:6px;font-size:.9rem;padding:.35rem .5rem}.strategy-rollup-benchmark{align-items:center;background:#edf2f7;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.strategy-rollup-benchmark-label{color:#2d3748;font-size:.9rem;font-weight:600}.strategy-rollup-benchmark-value{font-size:1.1rem;font-weight:700}.strategy-rollup-table-wrap{overflow-x:auto}.strategy-rollup-table{border-collapse:collapse;font-size:.9rem;width:100%}.strategy-rollup-table td,.strategy-rollup-table th{border-bottom:1px solid #e2e8f0;padding:.65rem .75rem;text-align:left}.strategy-rollup-table th{color:#4a5568;font-size:.8rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.strategy-rollup-table tbody tr:not(.strategy-rollup-detail-row){cursor:pointer}.strategy-rollup-table tbody tr.expanded,.strategy-rollup-table tbody tr:not(.strategy-rollup-detail-row):hover{background:#f7fafc}.strategy-rollup-name{color:#2d3748;font-weight:600}.strategy-rollup-expand{color:#718096;text-align:right;width:2rem}.strategy-rollup-table .positive{color:#38a169;font-weight:600}.strategy-rollup-table .negative{color:#e53e3e;font-weight:600}.strategy-rollup-detail-row td{background:#f8fafc;padding-top:0}.strategy-rollup-stock-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding:.5rem 0 .75rem}.strategy-rollup-stock-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;font-size:.82rem;gap:.15rem;padding:.5rem .65rem}.strategy-rollup-stock-item .negative,.strategy-rollup-stock-item .positive{font-weight:600}.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{border-radius:10px;margin:1rem 0}.progress-bar{background:linear-gradient(90deg,#4299e1,#3182ce);border-radius:10px;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:#1d4ed8;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:#64748b;color:var(--muted)}.table-wrap{background:#fff;background:var(--card);border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 2px #0f172a0d;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:#1d4ed8;background:var(--brand);border:none;border-radius:50%;box-shadow:0 12px 28px #0f172a14;box-shadow:var(--shadow-lg);color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:.72rem;font-weight:700;height:56px;justify-content:center;letter-spacing:.02em;text-transform:uppercase;transition:all .3s ease;width:56px}.mobile-cta-fab:hover{background:#1e3a8a;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:14px;border-radius:var(--radius-lg);bottom:1.25rem;bottom:var(--space-4);box-shadow:0 12px 28px #0f172a14;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:#0f172a;color:var(--text);font-size:.9rem;font-weight:600}.mobile-cta-close{align-items:center;background:none;border:none;border-radius:50%;color:#64748b;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:#0f172a;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:#b91c1c;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}.form-group{margin-bottom:1rem}.form-label{color:#64748b;color:var(--muted);font-size:.78rem;font-weight:600;letter-spacing:.02em;margin-bottom:.4rem;text-transform:uppercase}.form-input,.form-select,.timeframe-dropdown{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#0f172a;color:var(--text);font-family:inherit;font-size:.95rem;height:42px;padding:.55rem .75rem;transition:border-color .15s ease,box-shadow .15s ease}.form-input:focus,.form-select:focus,.timeframe-dropdown:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb1f;outline:none}.form-hint{color:#64748b;color:var(--muted);display:block}.form-error,.form-hint{font-size:.8rem;margin-top:.35rem}.form-error{color:#b91c1c;color:var(--danger)}.form-alert{border-radius:8px;border-radius:var(--radius-sm);font-size:.82rem;line-height:1.4;margin-top:.65rem;padding:.65rem .75rem}.form-alert-error{background:#fef2f2;background:var(--danger-soft);border:1px solid #fecaca;color:#991b1b}.form-alert-info{background:#eff6ff;background:var(--brand-soft);border:1px solid #bfdbfe;color:#1e3a8a}.stocks-strategies-container{display:flex!important;flex-direction:column!important;gap:1.25rem!important}.config-workspace{display:flex;flex-direction:column;gap:1.25rem}.panel-block{background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-md);padding:1rem}.timeframe-section{margin-bottom:0!important}.timeframe-card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-md);box-shadow:none;padding:.85rem 1rem}.setup-canvas{padding:1.25rem 1.35rem 1.5rem!important}.setup-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);margin-bottom:1.15rem;padding-bottom:.95rem}.setup-title{color:#0f172a;color:var(--text);font-size:1.15rem;font-weight:750;letter-spacing:-.02em;line-height:1.25;margin:0}.setup-subtitle{color:#64748b;color:var(--muted);font-size:.88rem;font-weight:500;line-height:1.4;margin:.3rem 0 0}.setup-stack{display:flex!important;flex-direction:column!important;gap:1.15rem!important;width:100%}.setup-panel{background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-md);box-sizing:border-box;min-height:0;padding:1.05rem 1.1rem 1.15rem;width:100%}.setup-panel .section-title{justify-content:space-between;margin-bottom:.9rem;width:100%}.section-title-actions{align-items:flex-end;display:flex;flex-direction:column;gap:.2rem;margin-left:auto}.section-title-hint{color:#64748b;color:var(--muted);font-size:.72rem;white-space:nowrap}.setup-field-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:minmax(0,280px)}.setup-field{margin:0;max-width:280px}.setup-field .form-select{width:100%}@media (min-width:992px){.config-workspace{grid-gap:1.15rem;align-items:stretch;display:grid;gap:1.15rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.setup-panel.stocks-section,.setup-panel.strategies-section{height:100%}.stocks-section .grid-3,.strategies-grid{grid-template-columns:1fr!important}}.stock-card,.strategy-card{background:#fff!important;border:1px solid #e2e8f0!important;border:1px solid var(--border)!important;border-radius:10px!important;border-radius:var(--radius-md)!important;box-shadow:0 1px 2px #0f172a0d!important;box-shadow:var(--shadow-sm)!important;transform:none!important}.stock-card:hover,.strategy-card:hover{border-color:#cbd5e1!important;box-shadow:0 4px 12px #0f172a0f!important;box-shadow:var(--shadow-md)!important;transform:none!important}.strategy-card.selected{background:#f8fbff!important;border-color:#93c5fd!important;box-shadow:0 1px 2px #0f172a0d!important;box-shadow:var(--shadow-sm)!important}.strategy-card{min-height:auto!important;padding:1rem!important}.action-bar-sticky{border:1px solid #e2e8f0;border:1px solid var(--border)}@media (min-width:992px){.action-bar-sticky{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;bottom:1rem;box-shadow:0 4px 12px #0f172a0f;box-shadow:var(--shadow-md);position:sticky;z-index:30}}.action-buttons-container{justify-content:flex-start!important}.action-hints{margin-top:.75rem}.action-hint{color:#64748b;color:var(--muted);font-size:.85rem;margin:0 0 .25rem}.status-panel{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);margin-bottom:1.25rem;padding:1.25rem 1.35rem}.status-panel-loading{background:linear-gradient(180deg,#f8fbff,#fff 70%);border-color:#bfdbfe}.status-panel-error{background:snow;border-color:#fecaca}.status-panel-kicker{color:#64748b;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;margin-bottom:.35rem;text-transform:uppercase}.status-panel-title{color:#0f172a;color:var(--text);font-size:1.1rem;font-weight:700;margin:0 0 .35rem}.status-panel-copy{color:#64748b;color:var(--muted);font-size:.92rem;margin:0 0 .85rem}.status-panel-meta{color:#64748b;color:var(--muted);font-size:.82rem;margin:.55rem 0 0}.status-panel .btn{margin-top:.75rem}.empty-state{background:#fff;border:1px dashed #cbd5e1;border:1px dashed var(--border-strong);border-radius:10px;border-radius:var(--radius-md);grid-column:1/-1;padding:1.75rem 1rem;text-align:center}.empty-state h4{color:#0f172a;color:var(--text);font-size:1rem;margin:0 0 .35rem}.empty-state p{color:#64748b;color:var(--muted);font-size:.9rem;margin:0 0 .9rem}.results-section{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;background:var(--card)!important;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px!important;border-radius:var(--radius-lg)!important;box-shadow:0 1px 2px #0f172a0d!important;box-shadow:var(--shadow-sm)!important;padding:1.25rem!important}.results-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.results-title-section h3{font-size:1.2rem;font-weight:750;letter-spacing:-.02em;margin:0}.results-subtitle{color:#64748b;color:var(--muted);font-size:.85rem;margin:.3rem 0 0}.failed-stocks-warning{background:#fffbeb;background:var(--warning-soft);border:1px solid #fde68a;border-radius:8px;border-radius:var(--radius-sm);color:#92400e;font-size:.85rem;margin-top:.75rem;padding:.65rem .75rem}.results-section table{border-collapse:initial;border-spacing:0;font-size:.88rem;width:100%}.results-section thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);color:#64748b;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:.65rem .55rem;position:sticky;text-transform:uppercase;top:0;z-index:2}.results-section tbody td{border-bottom:1px solid #f1f5f9;color:#0f172a;color:var(--text);padding:.65rem .55rem}.results-section tbody tr:hover td{background:#f8fafc}.ai-section{border:1px solid #e2e8f0!important;border:1px solid var(--border)!important;border-radius:10px!important;border-radius:var(--radius-md)!important;box-shadow:none!important}.ai-analysis-header{border-bottom:1px solid #e2e8f0!important;border-bottom:1px solid var(--border)!important}.ai-analysis-header h3{font-size:1.15rem!important}.progress-container{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden}.progress-bar{background:linear-gradient(90deg,#2563eb,#1d4ed8);border-radius:999px;height:100%}.settings-section,.settings-section.panel-block{background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-md);padding:1rem}.App--authed{padding:0}.container--shell{margin:0!important;max-width:none!important;padding:0!important;width:100%}.app-shell{min-height:100vh}.app-shell,.app-sidebar{display:flex;flex-direction:column}.app-sidebar{background:#fff;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);gap:1rem;padding:.85rem 1rem;position:sticky;top:0;z-index:40}.sidebar-brand{align-items:center;display:flex;gap:.7rem}.sidebar-nav{display:flex;flex-wrap:wrap;gap:.4rem}.sidebar-nav-item{background:#0000;border:1px solid #0000;border-radius:10px;color:#64748b;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.88rem;font-weight:600;padding:.55rem .75rem;text-align:left}.sidebar-nav-item:hover{background:#f8fafc;color:#0f172a;color:var(--text)}.sidebar-nav-item.active{background:#eff6ff;background:var(--brand-soft);border-color:#bfdbfe;color:#1e3a8a;color:var(--brand-ink)}.sidebar-cta{display:flex;flex-direction:column;gap:.5rem;padding-top:.35rem}.sidebar-cta .btn-secondary,.sidebar-run-btn{justify-content:center;width:100%}.sidebar-spacer{display:none;flex:1 1}.sidebar-footer{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.sidebar-user-row{align-items:center;display:flex;gap:.35rem}.app-main{display:flex;flex-direction:column;gap:1rem;padding:1rem}.main-panel .content-card{margin-bottom:0}.workspace-chrome{display:flex;flex-direction:column;gap:.75rem}.workspace-tabs{grid-gap:.25rem;background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);display:grid;gap:.25rem;grid-template-columns:repeat(3,minmax(0,1fr));padding:.3rem}.workspace-tab{align-items:center;appearance:none;background:#0000;border:none;border-radius:10px;border-radius:calc(var(--radius-lg) - 4px);color:#64748b;color:var(--muted);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9rem;font-weight:650;gap:.4rem;justify-content:center;letter-spacing:-.01em;padding:.65rem .75rem;transition:background .15s ease,color .15s ease}.workspace-tab:hover:not(:disabled){background:#0f172a0a;color:#0f172a;color:var(--text)}.workspace-tab.active{background:#eff6ff;background:var(--brand-soft);color:#1e3a8a;color:var(--brand-ink)}.workspace-tab:disabled{cursor:not-allowed;opacity:.4}.workspace-tab-dot{background:#1d4ed8;background:var(--brand);border-radius:50%;flex-shrink:0;height:6px;width:6px}.workspace-summary{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius-md);gap:.75rem;justify-content:space-between;padding:.7rem .95rem}.workspace-summary,.workspace-summary-text{align-items:center;display:flex;flex-wrap:wrap}.workspace-summary-text{color:#64748b;color:var(--muted);font-size:.86rem;font-weight:550;gap:.35rem;margin:0}.workspace-summary-sep{color:#cbd5e1;color:var(--border-strong)}.workspace-summary-action{flex-shrink:0}.workspace-panel{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0d;box-shadow:var(--shadow-sm);padding:1.15rem 1.25rem 1.35rem}.workspace-panel-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.1rem;padding-bottom:.9rem}.workspace-panel-title{color:#0f172a;color:var(--text);font-size:1.15rem;font-weight:700;letter-spacing:-.02em;margin:0}.workspace-panel-subtitle{color:#64748b;color:var(--muted);font-size:.86rem;font-weight:500;line-height:1.4;margin:.3rem 0 0}.workspace-empty-wrap{padding:0}.workspace-empty{align-items:center;display:flex;flex-direction:column;gap:.65rem;padding:2.5rem 1.5rem;text-align:center}.workspace-empty-title{color:#0f172a;color:var(--text);font-size:1.05rem;font-weight:700;margin:0}.workspace-empty-copy{color:#64748b;color:var(--muted);font-size:.9rem;line-height:1.45;margin:0 0 .5rem;max-width:28rem}.ai-workspace .ai-analysis-content{padding:0}.ai-workspace .status-panel{margin-top:0}@media (min-width:900px){.app-shell{align-items:stretch;display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.app-sidebar{border-bottom:none;border-right:1px solid #e2e8f0;border-right:1px solid var(--border);gap:1rem;height:100vh;padding:1.25rem 1rem;position:sticky;top:0}.sidebar-nav{flex-direction:column;flex-wrap:nowrap;gap:.25rem}.sidebar-nav-item{width:100%}.sidebar-spacer{display:block}.sidebar-footer{align-items:stretch;border-top:1px solid #e2e8f0;border-top:1px solid var(--border);flex-direction:column;gap:.65rem;padding-top:.75rem}.sidebar-user-row{justify-content:space-between}.app-main{max-height:100vh;overflow-y:auto;padding:1.35rem 1.5rem 2rem}}@media (min-width:992px){.action-bar-sticky{position:static}}@media (min-width:1400px){.app-shell{grid-template-columns:280px minmax(0,1fr)}.config-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}}.paper-trading-panel{display:flex;flex-direction:column;gap:1.25rem}.paper-trading-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.paper-refresh-btn{font-size:.875rem;padding:.5rem .875rem}.paper-empty-state,.paper-loading{background:#f8fafc;border:1px dashed #cbd5e0;border-radius:12px;color:#4a5568;padding:1.5rem}.paper-empty-hint{font-size:.9rem;margin-top:.5rem}.paper-subscriptions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.paper-subscription-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0f172a0a;padding:1rem 1.1rem}.paper-card-top{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.85rem}.paper-card-title{color:#1a202c;font-size:1.15rem;margin:0}.paper-card-strategy{color:#718096;font-size:.85rem;margin:.2rem 0 0}.paper-status-badge{background:#edf2f7;border-radius:999px;color:#4a5568;font-size:.72rem;letter-spacing:.04em;padding:.2rem .5rem;text-transform:uppercase}.paper-status-badge.active{background:#c6f6d5;color:#22543d}.paper-status-badge.paused{background:#feebc8;color:#7b341e}.paper-metrics-grid{grid-gap:.65rem .85rem;display:grid;gap:.65rem .85rem;grid-template-columns:1fr 1fr}.paper-metric-label{color:#718096;display:block;font-size:.72rem;letter-spacing:.03em;text-transform:uppercase}.paper-metric-value{color:#2d3748;display:block;font-size:.92rem;font-weight:600}.paper-metric-value.positive{color:#2f855a}.paper-metric-value.negative{color:#c53030}.paper-card-meta{border-top:1px solid #edf2f7;color:#718096;display:flex;flex-direction:column;font-size:.78rem;gap:.25rem;margin-top:.85rem;padding-top:.75rem}.paper-card-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.paper-action-btn,.paper-cancel-btn{font-size:.8rem;padding:.4rem .7rem}.paper-cancel-btn{border-color:#fed7d7;color:#c53030}.paper-defaults-summary{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;margin:1rem 0;padding:1rem}.paper-defaults-summary h5{margin:0 0 .5rem}.paper-defaults-summary ul{margin:0;padding-left:1.2rem}.paper-params-preview{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.paper-param-chip{background:#edf2f7;border-radius:999px;color:#4a5568;font-size:.75rem;padding:.2rem .5rem}.paper-customize-section{margin:.75rem 0 1rem}.paper-customize-toggle{background:none;border:none;color:#3182ce;cursor:pointer;font-size:.9rem;padding:0;text-decoration:underline}.paper-modal-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.paper-trade-book{border-top:1px solid #edf2f7;margin-top:1rem;padding-top:.85rem}.paper-trade-book-title{color:#2d3748;font-size:.9rem;margin:0 0 .6rem}.paper-trade-book-empty{color:#718096;font-size:.85rem;margin:0}.paper-trade-table{border-collapse:collapse;font-size:.78rem;width:100%}.paper-trade-table td,.paper-trade-table th{border-bottom:1px solid #edf2f7;padding:.35rem .4rem;text-align:left}.paper-trade-table th{color:#718096;font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.paper-trade-table .action-buy{color:#2f855a;font-weight:600}.paper-trade-table .action-sell{color:#c53030;font-weight:600}.paper-trade-table .positive{color:#2f855a}.paper-trade-table .negative{color:#c53030}.paper-snapshot-panel{border-top:1px solid #edf2f7;margin-top:1rem;padding-top:.85rem}.paper-snapshot-empty{color:#718096;font-size:.85rem;margin:0}.paper-snapshot-meta{color:#718096;font-size:.78rem;margin:0 0 .75rem}.paper-snapshot-metrics{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin-bottom:.85rem}.paper-snapshot-table{margin-bottom:.75rem}.paper-snapshot-hint{margin-top:.5rem;width:100%}
/*# sourceMappingURL=main.e7dc86be.css.map*/