*{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(49,130,206,.1)}body{-webkit-touch-callout:none;margin:0;touch-action:manipulation}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a,button,input,select{min-height:44px;touch-action:manipulation}input,select,textarea{font-size:16px}@media (max-width:768px){body{overflow-x:hidden}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;color:#1a202c;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{margin:0 auto;max-width:1400px;min-height:100vh}.main-content{padding:20px}.app-header{margin-bottom:40px;text-align:center}.header-top{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:10px}.app-title{color:#2d3748;font-size:2.5rem;font-weight:700;margin:0}.search-toggle-wrapper{align-items:center;display:flex;gap:20px;margin:0 auto 40px;max-width:800px}.toggle-container{align-items:center;display:flex;flex-shrink:0;gap:12px;justify-content:center}.toggle-label{color:#4a5568;font-size:.95rem;font-weight:500}.toggle-insights-btn{background-color:#cbd5e0;border:none;border-radius:14px;cursor:pointer;flex-shrink:0;height:28px;min-height:0;min-height:auto;outline:none;padding:0;position:relative;transition:background-color .25s ease;width:52px}.toggle-insights-btn.active{background-color:#48bb78}.toggle-insights-btn:after{background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:22px;left:3px;position:absolute;top:50%;transform:translateY(-50%);transition:left .25s ease;width:22px}.toggle-insights-btn.active:after{left:27px}.toggle-insights-btn:hover{opacity:.9}.app-subtitle{color:#718096;font-size:1.2rem}.search-bar{flex:1 1;margin:0}.search-input-container{border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;overflow:hidden}.search-input{background:#fff;flex:1 1;outline:none}.search-button,.search-input{border:none;font-size:16px;padding:12px 16px}.search-button{background:#3182ce;color:#fff;cursor:pointer;transition:background-color .2s}.search-button:hover{background:#2c5aa0}.filter-bar{margin:0 auto 30px;max-width:600px}.filter-header{gap:16px;justify-content:space-between;margin-bottom:16px}.filter-header,.filter-toggle{align-items:center;display:flex}.filter-toggle{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;color:#2d3748;cursor:pointer;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s}.filter-toggle:hover{background:#f7fafc;border-color:#cbd5e0}.toggle-icon{font-size:12px;transition:transform .2s}.toggle-icon.expanded{transform:rotate(180deg)}.clear-filters{background:#fed7d7;border:none;border-radius:6px;color:#c53030;cursor:pointer;font-size:12px;font-weight:500;padding:8px 12px;transition:background-color .2s}.clear-filters:hover{background:#feb2b2}.filter-content{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:20px}.filter-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{color:#2d3748;font-size:.875rem;font-weight:500}.filter-group select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s,box-shadow .2s}.filter-group select:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.filter-group select:hover{border-color:#cbd5e0}@media (max-width:768px){.filter-grid{gap:12px;grid-template-columns:1fr}.filter-content{padding:16px}.filter-header{align-items:stretch;flex-direction:column}}.modal-overlay{height:100%;width:100%;z-index:1000}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:400px;overflow-y:auto;padding:32px;position:relative}.close-button{align-items:center;background:none;border:none;color:#718096;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;position:absolute;right:-8px;top:-8px;transition:color .2s;width:32px}.close-button:hover{color:#2d3748}.alert-button{align-items:center;background:#e2e8f0;border:none;border-radius:8px;color:#2d3748;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;text-align:center;transition:all .2s}.alert-button:hover{background:#cbd5e0}.alert-button.active{background:#48bb78;color:#fff}.alert-button.active:hover{background:#38a169}.alert-button:disabled{cursor:not-allowed;opacity:.6}.alerts-page{margin:0 auto;max-width:1000px;padding:20px}.alerts-header{margin-bottom:40px;text-align:center}.alerts-header h1{color:#2d3748;font-size:2rem;margin-bottom:8px}.alerts-header p{color:#718096;font-size:1.1rem}.alerts-tabs{background:#f7fafc;border-radius:8px;display:flex;gap:4px;margin-bottom:30px;padding:4px}.tab-button{align-items:center;background:#0000;border:none;border-radius:6px;color:#718096;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.tab-button:hover{background:#e2e8f0;color:#2d3748}.tab-button.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#3182ce}.notification-badge{background:#e53e3e;border-radius:50%;color:#fff;font-size:12px;font-weight:600;min-width:20px;padding:2px 8px;text-align:center}.empty-state{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.empty-state h3{color:#2d3748;font-size:1.25rem;margin-bottom:12px}.empty-state p{color:#718096;margin-bottom:24px}.cta-button{background:#3182ce;border-radius:8px;color:#fff;display:inline-block;font-weight:500;padding:12px 24px;text-decoration:none;transition:background-color .2s}.cta-button:hover{background:#2c5aa0}.alerts-list,.notifications-list{display:flex;flex-direction:column;gap:16px}.alert-item{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;padding:20px;transition:box-shadow .2s}.alert-item:hover{box-shadow:0 4px 6px #0000001a}.alert-info{flex:1 1}.alert-symbol{font-size:1.25rem;font-weight:600;margin-bottom:4px}.alert-symbol a{color:#3182ce;text-decoration:none}.alert-symbol a:hover{text-decoration:underline}.alert-name{color:#718096;font-size:.875rem;margin-bottom:8px}.alert-date{color:#a0aec0;font-size:.75rem}.alert-actions{align-items:center;display:flex;gap:16px}.alert-status{color:#48bb78;font-size:.875rem;font-weight:500}.delete-button{background:#fed7d7;border:none;border-radius:6px;color:#c53030;cursor:pointer;font-size:.875rem;padding:8px 16px;transition:background-color .2s}.delete-button:hover{background:#feb2b2}.notifications-actions{display:flex;justify-content:flex-end;margin-bottom:20px}.mark-all-read-button{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;padding:8px 16px;transition:background-color .2s}.mark-all-read-button:hover{background:#2c5aa0}.notification-item{background:#fff;border-left:4px solid #0000;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px;transition:box-shadow .2s}.notification-item.unread{background:#f7fafc;border-left-color:#3182ce}.notification-item:hover{box-shadow:0 4px 6px #0000001a}.notification-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:12px}.notification-symbol{font-weight:600}.notification-symbol a{color:#3182ce;text-decoration:none}.notification-symbol a:hover{text-decoration:underline}.notification-source{color:#718096;font-size:.875rem}.notification-sentiment{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:4px 12px}.notification-sentiment.positive{background-color:#d4edda;color:#155724}.notification-sentiment.negative{background-color:#f8d7da;color:#721c24}.notification-sentiment.neutral{background-color:#e2e8f0;color:#4a5568}.notification-date{color:#a0aec0;font-size:.75rem}.notification-content h4{color:#2d3748;line-height:1.4;margin-bottom:8px}.notification-summary{color:#718096;line-height:1.5;margin-bottom:16px}.notification-link{background:#3182ce;border-radius:6px;color:#fff;display:inline-block;font-size:.875rem;font-weight:500;margin-top:12px;padding:8px 16px;text-decoration:none;transition:all .2s ease}.notification-link:hover{background:#2c5aa0;box-shadow:0 2px 4px #3182ce4d;transform:translateY(-1px)}.notification-link:active{transform:translateY(0)}.notification-actions{display:flex;gap:8px;margin-top:12px}.mark-read-button{background:#e2e8f0;border:none;border-radius:4px;color:#2d3748;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:background-color .2s}.mark-read-button:hover{background:#cbd5e0}.mark-unread-button{background:#bee3f8;border:none;border-radius:4px;color:#2c5282;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:background-color .2s}.mark-unread-button:hover{background:#90cdf4}.delete-notification-button{background:#fed7d7;border:none;border-radius:4px;color:#c53030;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:background-color .2s}.delete-notification-button:hover{background:#fc8181;color:#fff}.auth-form{width:100%}.modal-header{margin-bottom:24px;position:relative;text-align:center}.modal-header h2{color:#1a202c;font-weight:600}.error-message{background:#fed7d7;border-radius:6px;color:#c53030;font-size:14px;margin-bottom:16px;padding:12px;text-align:center}.form-row{display:flex;gap:12px;margin-bottom:20px}.form-row .form-group{flex:1 1;margin-bottom:0}.form-group label{font-size:14px;font-weight:500}.form-group input{border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.form-group input:disabled{background:#f7fafc;cursor:not-allowed}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{flex:1 1;padding-right:45px}.password-toggle-btn{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;opacity:.6;padding:4px 8px;position:absolute;right:12px;transition:opacity .2s;-webkit-user-select:none;user-select:none}.password-toggle-btn:hover{opacity:1}.password-toggle-btn:active{transform:scale(.95)}.submit-button{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;margin-bottom:16px;padding:12px;transition:background-color .2s;width:100%}.submit-button:hover:not(:disabled){background:#2c5aa0}.submit-button:disabled{background:#a0aec0;cursor:not-allowed}.auth-switch{border-top:1px solid #e2e8f0;padding-top:16px;text-align:center}.auth-switch p{color:#718096;font-size:14px;margin:0}.switch-button{background:none;border:none;color:#3182ce;cursor:pointer;font-size:14px;font-weight:500;text-decoration:underline}.switch-button:hover{color:#2c5aa0}.market-highlights{margin:40px 0;overflow-x:hidden;padding:0 20px}.market-highlights h2{color:#2d3748;font-size:1.8rem;margin-bottom:24px;text-align:center}.highlights-grid{grid-gap:24px;box-sizing:border-box;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:40px;max-width:100%;width:100%}.highlight-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000001a;min-width:0;overflow:hidden;padding:12px}.highlight-section h3{align-items:center;color:#2d3748;display:flex;font-size:.95rem;font-weight:600;gap:6px;margin-bottom:8px}.highlight-subtitle{color:#718096;font-size:.875rem;margin-bottom:16px}.highlight-list{display:flex;flex-direction:column;gap:6px}.highlight-item{align-items:center;background:#f7fafc;border-left:3px solid #0000;border-radius:4px;display:flex;justify-content:space-between;padding:8px;text-decoration:none;transition:all .2s}.highlight-item:hover{background:#edf2f7;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.highlight-item.positive{border-left-color:#48bb78}.highlight-item.negative{border-left-color:#f56565}.highlight-item.news{border-left-color:#4299e1}.highlight-symbol{color:#2d3748;font-size:.875rem;font-weight:600;min-width:60px}.highlight-info{flex:1 1;margin:0 12px}.highlight-name{color:#4a5568;font-size:.875rem;margin-bottom:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.highlight-price{color:#2d3748;font-size:.875rem;font-weight:500}.highlight-volume{color:#718096;font-size:.75rem}.highlight-change{font-size:.875rem;font-weight:600;min-width:60px;text-align:right}.highlight-change.positive{color:#48bb78}.highlight-change.negative{color:#f56565}.news-impact-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:32px;padding:24px}.news-impact-section h3{align-items:center;color:#2d3748;display:flex;font-size:1.25rem;font-weight:600;gap:8px;margin-bottom:4px}.news-impact-subtitle{color:#718096;font-size:.875rem;margin-bottom:20px}.news-impact-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.news-impact-item{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px;text-decoration:none;transition:all .2s}.news-impact-item:hover{background:#edf2f7;border-color:#cbd5e0;box-shadow:0 4px 8px #0000001f;transform:translateY(-2px)}.news-impact-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.news-impact-stock{flex:1 1}.news-impact-symbol{color:#2d3748;font-size:1rem;font-weight:700;margin-bottom:2px}.news-impact-name{color:#4a5568;font-size:.875rem;line-height:1.3}.news-impact-metrics{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.news-impact-price{color:#2d3748;font-size:1rem;font-weight:600}.news-impact-change{font-size:.875rem;font-weight:600}.news-impact-change.positive{color:#48bb78}.news-impact-change.negative{color:#f56565}.news-impact-volume{color:#718096;font-size:.75rem;font-weight:500}.news-impact-content{border-top:1px solid #e2e8f0;padding-top:12px}.news-impact-reason{align-items:flex-start;color:#4a5568;display:flex;font-size:.875rem;gap:8px;line-height:1.4}.news-icon{flex-shrink:0;font-size:1rem}.news-impact-footer{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:8px}.news-impact-date{color:#718096;font-size:.75rem;font-style:italic}.news-impact-link{color:#3182ce;font-size:.75rem;font-weight:500;text-decoration:none;transition:color .2s;white-space:nowrap}.news-impact-link:hover{color:#2c5282;text-decoration:underline}@media (max-width:768px){.market-highlights{margin:20px 0;padding:0 10px}.highlights-grid{gap:16px;grid-template-columns:1fr;padding:0}.highlight-section{box-sizing:border-box;padding:12px;width:100%}.highlight-item{gap:8px;padding:6px}.highlight-symbol{font-size:.8rem;min-width:50px}.highlight-info{flex:1 1;margin:0 8px;min-width:0}.highlight-name{font-size:.75rem;max-width:100%}.highlight-change{font-size:.8rem;min-width:50px}.news-impact-grid{gap:12px;grid-template-columns:1fr}.news-impact-section{margin:0 10px;padding:16px}.news-impact-header{flex-direction:column;gap:8px}.news-impact-metrics{align-items:flex-start;flex-direction:row;gap:12px}}.market-indices{margin-bottom:40px}.footer{background:#f8fafc;border-top:1px solid #e2e8f0;color:#2d3748;margin-top:60px}.footer-content{grid-gap:32px;display:grid;gap:32px;grid-template-columns:2fr 1fr 1fr 1fr 1fr;margin:0 auto;max-width:1400px;padding:48px 20px 32px}.footer-section h4{color:#2d3748;font-size:1rem;font-weight:600;margin-bottom:16px}.footer-brand{align-items:center;display:flex;gap:8px;margin-bottom:16px}.footer-logo{font-size:1.5rem}.footer-brand-text{color:#2d3748;font-size:1.25rem;font-weight:700}.footer-description{color:#718096;font-size:.875rem;line-height:1.6;margin:0}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:8px}.footer-links a{color:#718096;font-size:.875rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#3182ce}.footer-bottom{border-top:1px solid #e2e8f0;padding:24px 20px}.footer-bottom-content{gap:16px;justify-content:space-between;margin:0 auto;max-width:1400px}.footer-bottom-content,.footer-legal{align-items:center;display:flex;flex-wrap:wrap}.footer-legal{gap:24px}.footer-legal span{color:#718096;font-size:.875rem}.footer-legal-links{display:flex;gap:16px}.footer-legal-links a{color:#718096;font-size:.875rem;text-decoration:none;transition:color .2s}.footer-legal-links a:hover{color:#3182ce}.footer-version{color:#a0aec0;font-size:.75rem;font-weight:400;margin-left:8px;opacity:.7}.footer-social{align-items:center;display:flex;gap:12px}.footer-social span{color:#718096;font-size:.875rem}.social-links{display:flex;gap:8px}.social-links a{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:50%;display:flex;font-size:1rem;height:32px;justify-content:center;text-decoration:none;transition:all .2s;width:32px}.social-links a:hover{background:#3182ce;border-color:#3182ce;transform:translateY(-1px)}.footer-disclaimer{background:#f7fafc;border-top:1px solid #e2e8f0;padding:16px 20px;text-align:center}.footer-disclaimer p{color:#718096;font-size:.75rem;line-height:1.5;margin:0 auto;max-width:1400px}.footer-disclaimer strong{color:#2d3748}@media (max-width:1024px){.footer-content{gap:24px;grid-template-columns:2fr 1fr 1fr}}@media (max-width:768px){.footer-content{gap:24px;grid-template-columns:1fr;padding:32px 20px 24px}.footer-bottom-content{flex-direction:column;gap:16px;text-align:center}.footer-legal{flex-direction:column;gap:12px}.footer-disclaimer p{font-size:.7rem}}.market-indices h2{color:#2d3748;font-size:1.8rem;margin-bottom:20px}.indices-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.index-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.index-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.index-name{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:8px}.index-value{color:#1a202c;font-size:1.5rem;font-weight:700;margin-bottom:4px}.index-change{font-size:.9rem;font-weight:500}.stocks-section{margin-top:40px}.stocks-section h2{color:#2d3748;font-size:1.8rem;margin-bottom:20px}.stocks-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.stock-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.stock-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.stock-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.stock-symbol{color:#3182ce;font-size:1.2rem;font-weight:700}.stock-price{color:#1a202c;font-size:1.3rem;font-weight:700}.stock-name{font-size:.9rem;margin-bottom:0}.stock-change{font-size:1rem;font-weight:600;margin-bottom:16px}.positive{color:#38a169}.negative{color:#e53e3e}.stock-details{border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding-top:16px}.stock-detail{align-items:center;display:flex;flex-direction:column}.stock-detail .label{color:#718096;font-size:.8rem;margin-bottom:4px}.stock-detail .value{color:#2d3748;font-size:.9rem;font-weight:600}.loading{color:#718096}.error,.loading{font-size:1.2rem;padding:40px;text-align:center}.error{color:#e53e3e}.navigation{background:#fcfdfe;border-bottom:1px solid #e2e8f0;height:60px;justify-content:center;left:0;position:-webkit-sticky;position:sticky;right:0;top:0;z-index:1000}.nav-container,.navigation{align-items:center;display:flex;width:100%}.nav-container{justify-content:space-between;max-width:1400px;padding:0 40px}.nav-center{display:flex;flex:1 1;justify-content:center}.brand-link,.nav-brand{align-items:center;display:flex}.brand-link{color:#2d3748;font-size:1.2rem;font-weight:700;text-decoration:none}.brand-icon{font-size:1.5rem;margin-right:8px}.nav-links{display:flex;gap:24px}.nav-link{align-items:center;border-radius:6px;color:#718096;display:flex;font-weight:500;gap:8px;padding:8px 16px;position:relative;text-decoration:none;transition:all .2s}.nav-link:hover{background-color:#f7fafc;color:#3182ce}.nav-link.active{background-color:#e6f3ff;color:#3182ce}.nav-auth{align-items:center;display:flex}.nav-mobile-auth{display:none}.auth-buttons{align-items:center;display:flex;gap:12px}.login-button,.register-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;padding:8px 16px;text-decoration:none;transition:all .2s}.login-button{background:#0000;border:1px solid #3182ce;color:#3182ce}.login-button:hover,.register-button{background:#3182ce;color:#fff}.register-button{border:1px solid #3182ce}.register-button:hover{background:#2c5aa0}.user-menu{align-items:center;display:flex;gap:16px}.user-welcome{color:#2d3748;font-size:14px;font-weight:500}.profile-button{align-items:center;background:#3182ce;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;justify-content:center;padding:6px 12px;text-decoration:none;transition:background-color .2s}.profile-button:hover{background:#2c5aa0}.logout-button{background:#fed7d7;border:none;border-radius:4px;color:#c53030;cursor:pointer;font-size:13px;padding:6px 12px;transition:background-color .2s}.logout-button:hover{background:#feb2b2}.index-card-link,.stock-card-link{display:block}.index-card-link,.index-card-link:hover,.stock-card-link,.stock-card-link:hover{color:inherit;text-decoration:none}.index-details-header,.stock-details-header{margin-bottom:30px}.back-link{color:#3182ce;display:inline-block;font-weight:500;margin-bottom:20px;text-decoration:none}.back-link:hover{text-decoration:underline}.stock-header-line{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-top:20px}.stock-title-price-wrapper{align-items:center;display:flex;flex:1 1 auto;gap:20px}.index-details-title,.stock-details-title{flex:0 0 auto}.index-details-title h1,.stock-details-title h1{color:#2d3748;font-size:2.5rem;font-weight:700;margin-bottom:8px}.stock-details-title h2{color:#718096;font-size:1.5rem;font-weight:500}.price-section-inline{flex:1 1 auto;text-align:center}.price-section-inline .current-price{color:#1a202c;font-size:2.5rem;font-weight:700;margin-bottom:4px}.price-section-inline .price-change{font-size:1.1rem;font-weight:600}.price-section,.value-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px;text-align:center}.current-price,.current-value{color:#1a202c;font-size:3rem;font-weight:700;margin-bottom:10px}.price-change,.value-change{font-size:1.2rem;font-weight:600}.index-info-grid,.stock-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.info-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.info-card h3{border-bottom:1px solid #e2e8f0;color:#2d3748;font-size:1.2rem;font-weight:600;margin-bottom:20px;padding-bottom:10px}.info-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:10px 0}.info-item:last-child{border-bottom:none}.info-item .label{color:#718096;font-weight:500}.info-item .value{color:#2d3748;font-weight:600}.description-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.description-card h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin-bottom:15px}.description-card p{color:#4a5568;line-height:1.6}.holdings-list{display:flex;flex-direction:column;gap:8px}.holding-item{align-items:center;display:flex;padding:8px 0}.holding-rank{color:#718096;font-weight:700;margin-right:12px;min-width:20px}.holding-name{color:#2d3748;font-weight:500}.hamburger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:4px;padding:8px;z-index:1001}.hamburger span{background:#2d3748;border-radius:2px;display:block;height:3px;transition:all .3s ease;width:24px}.hamburger.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}@media (max-width:768px){.main-content{box-sizing:border-box;max-width:100vw;overflow-x:hidden;padding:10px}.market-highlights,.market-indices,.stocks-section{box-sizing:border-box;max-width:100%;overflow-x:hidden}.navigation{flex-wrap:nowrap;height:60px;padding:0 15px}.nav-container{padding:0 20px}.app-header{display:none}.search-toggle-wrapper{align-items:stretch;flex-direction:column;gap:16px;padding:0 20px}.hamburger{display:flex;justify-content:center;order:3}.nav-brand{flex:1 1;order:1}.brand-text{font-size:1rem}.nav-center{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 4px 6px #0000001a;flex-direction:column;left:0;opacity:0;padding:20px;position:fixed;right:0;top:60px;transform:translateY(-100%);transition:all .3s ease;visibility:hidden;z-index:1000}.nav-center.active{opacity:1;transform:translateY(0);visibility:visible}.nav-links{flex-direction:column;gap:0;width:100%}.nav-link{border-radius:8px;font-size:16px;margin-bottom:8px;padding:14px 16px;width:100%}.nav-mobile-auth{border-top:1px solid #ffffff1a;display:block;margin-top:8px;padding:16px 0;width:100%}.mobile-auth-buttons{display:flex;flex-direction:column;gap:12px;width:100%}.mobile-login-button,.mobile-register-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:14px 20px;transition:all .2s ease;width:100%}.mobile-login-button{background:#ffffff26;border:2px solid #a0aec0;color:#a0aec0;font-weight:600}.mobile-login-button:hover{background:#ffffff40;border-color:#cbd5e0;color:#e2e8f0}.mobile-register-button{background:linear-gradient(135deg,#4299e1,#3182ce);box-shadow:0 4px 12px #3182ce66;color:#fff;font-weight:600}.mobile-register-button:hover{background:linear-gradient(135deg,#3182ce,#2c5aa0);box-shadow:0 6px 16px #3182ce80}.mobile-profile-button{background:linear-gradient(135deg,#4299e1,#3182ce);border-radius:8px;box-shadow:0 4px 12px #3182ce66;color:#fff;display:block;font-size:16px;font-weight:600;padding:14px 20px;text-align:center;text-decoration:none;transition:all .2s ease;width:100%}.mobile-profile-button:hover{background:linear-gradient(135deg,#3182ce,#2c5aa0);box-shadow:0 6px 16px #3182ce80}.nav-auth{display:none}.auth-buttons{gap:8px}.login-button,.register-button{font-size:13px;padding:6px 12px}.user-menu{align-items:flex-end;flex-direction:column;gap:8px}.user-welcome{font-size:12px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-button,.profile-button{font-size:11px;padding:4px 8px}.modal-content{max-height:85vh;padding:24px 20px;width:95%}.close-button{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;font-size:28px;height:36px;right:8px;top:8px;width:36px}.modal-header h2{font-size:1.25rem}.form-group input,.submit-button{font-size:16px}.alert-button,.cta-button,.filter-toggle,.search-button,.tab-button{min-height:44px}.app-title{font-size:1.75rem}.app-subtitle{font-size:1rem}.indices-grid,.stocks-grid{gap:12px;grid-template-columns:1fr}.stock-header{align-items:flex-start;flex-direction:column}.stock-price{margin-top:4px}.current-price,.current-value{font-size:2rem}.index-info-grid,.stock-info-grid{grid-template-columns:1fr}.stock-header-line{align-items:flex-start;flex-direction:column;gap:16px}.stock-title-price-wrapper{align-items:center;display:flex;flex-direction:row;gap:12px;justify-content:space-between;width:100%}.stock-details-title{flex:1 1 auto;min-width:40%}.index-details-title h1,.stock-details-title h1{font-size:1.75rem}.stock-details-title h2{font-size:1.25rem}.price-section-inline{display:flex;flex:0 0 auto;flex-direction:column;min-width:60%;text-align:right}.stock-actions{align-items:flex-start;flex-direction:column;gap:8px;justify-content:flex-start;width:100%}.stock-actions button{font-size:.85rem;line-height:1.3;padding:8px 12px;text-align:center;white-space:normal;width:100%}.add-to-watchlist-button{padding:8px 12px!important}.price-section-inline{text-align:left;width:100%}.price-section-inline .current-price{font-size:2rem;max-width:55%;text-align:right}.price-section-inline .price-change{font-size:1rem;max-width:55%;text-align:right}.price-section,.value-section{padding:20px}.info-card{padding:16px}.stock-summary-section{margin:20px 16px;padding:10px}.summary-title{font-size:1.4rem}.summary-stock-info h3{font-size:1.2rem}.summary-price{font-size:1.5rem}.summary-change{font-size:1rem}.summary-metrics{grid-template-columns:1fr}.summary-indicators-section{order:1}.summary-per-section{order:2}.summary-chart-section,.summary-indicators-section,.summary-per-section{padding:16px}}.chart-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:15px}.chart-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.chart-header h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0}.timeframe-selector{display:flex;flex-wrap:wrap;gap:8px}.timeframe-button{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#718096;cursor:pointer;font-size:.9rem;font-weight:500;min-width:45px;padding:8px 16px;transition:all .2s}.timeframe-button:hover{background-color:#f7fafc;border-color:#3182ce;color:#3182ce}.timeframe-button.active{background-color:#3182ce;border-color:#3182ce;color:#fff}.chart-wrapper{margin:20px 0}.chart-loading{align-items:center;color:#718096;display:flex;font-size:1.1rem;height:400px;justify-content:center}.chart-tooltip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:15px}.tooltip-date{color:#2d3748;font-size:.9rem;font-weight:600;margin-bottom:8px}.tooltip-prices{display:flex;flex-direction:column;gap:4px}.tooltip-prices p{display:flex;font-size:.85rem;gap:12px;justify-content:space-between;margin:0}.tooltip-prices .label{color:#718096;font-weight:500}.chart-stats{align-items:center;border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-top:20px;padding-top:20px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{color:#718096;font-size:.8rem;font-weight:500}.stat-value{color:#2d3748;font-size:.9rem;font-weight:600}.stat-value.positive{color:#38a169}.stat-value.negative{color:#e53e3e}@media (max-width:768px){.chart-header{align-items:flex-start;flex-direction:column}.timeframe-selector{justify-content:center;width:100%}.timeframe-button{flex:1 1;font-size:.8rem;min-width:40px;padding:6px 8px}.chart-stats{align-items:flex-start;flex-direction:column}.stat-item{flex-direction:row;justify-content:space-between;width:100%}}.additional-sections{margin-top:40px}.section-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:30px}.news-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.news-section h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin-bottom:20px}.executives-loading,.news-loading,.recommendations-loading,.similar-loading{color:#718096;padding:20px;text-align:center}.news-list{display:flex;flex-direction:column;gap:20px}.news-item{border-bottom:1px solid #e2e8f0;padding-bottom:15px}.news-item:last-child{border-bottom:none;padding-bottom:0}.news-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.news-source{color:#3182ce;font-size:.8rem;font-weight:600}.news-meta{display:flex;font-size:.8rem;gap:10px}.news-time{color:#718096}.news-sentiment{font-weight:500}.news-title{color:#2d3748;font-size:1rem;font-weight:600;line-height:1.4;margin-bottom:8px}.news-summary{color:#4a5568;font-size:.9rem;line-height:1.5;margin-bottom:8px}.news-link{color:#3182ce;font-size:.85rem;font-weight:500;text-decoration:none}.news-link:hover{text-decoration:underline}.analyst-recommendations{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.analyst-recommendations h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin-bottom:20px}.recommendations-summary{background:#f7fafc;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-label{color:#718096;font-size:.8rem;font-weight:500}.summary-value{color:#2d3748;font-size:1rem;font-weight:600}.recommendations-list{display:flex;flex-direction:column;gap:15px}.recommendation-item{border:1px solid #e2e8f0;border-radius:6px;padding:15px}.recommendation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.firm-name{color:#2d3748;font-weight:600}.recommendation-date{color:#718096;font-size:.8rem}.recommendation-details{align-items:center;display:flex;justify-content:space-between}.rating-badge{border-radius:4px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 12px}.price-section{display:flex;gap:20px}.price-item{display:flex;flex-direction:column;gap:2px}.price-label{color:#718096;font-size:.75rem}.price-value{color:#2d3748;font-size:.9rem;font-weight:600}.price-value.upside{font-weight:700}.key-executives{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.key-executives h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin-bottom:20px}.executives-list{display:flex;flex-direction:column;gap:15px}.executive-item{align-items:flex-start;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:15px}.executive-info{flex:1 1}.executive-name{color:#2d3748;font-size:1rem;font-weight:600;margin-bottom:4px}.executive-position{color:#3182ce;font-size:.9rem;margin-bottom:4px}.executive-tenure{color:#718096;font-size:.8rem}.executive-compensation{text-align:right}.compensation-label{color:#718096;font-size:.75rem;margin-bottom:2px}.compensation-value{color:#2d3748;font-size:.9rem;font-weight:600}.similar-stocks{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.similar-stocks h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin-bottom:8px}.similar-subtitle{color:#718096;font-size:.9rem;margin-bottom:20px}.similar-list{display:flex;flex-direction:column;gap:10px}.similar-item-link{color:inherit;text-decoration:none}.similar-item{align-items:center;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:12px;transition:all .2s}.similar-item:hover{background:#f7fafc;border-color:#3182ce}.similar-info{flex:1 1}.similar-symbol{color:#3182ce;font-size:.9rem;font-weight:600;margin-bottom:2px}.similar-name{color:#2d3748;font-size:.85rem;margin-bottom:2px}.similar-sector{color:#718096;font-size:.75rem}.similar-performance{text-align:right}.similar-price{color:#2d3748;font-size:.9rem;font-weight:600;margin-bottom:2px}.similar-change{font-size:.8rem;font-weight:600}@media (max-width:768px){.section-grid{gap:20px;grid-template-columns:1fr}.recommendation-details,.recommendations-summary{flex-direction:column;gap:10px}.recommendation-details{align-items:flex-start}.price-section{justify-content:space-between;width:100%}.executive-item{flex-direction:column;gap:10px}.executive-compensation{text-align:left;width:100%}}.stocks-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:0;overflow:hidden}.stock-list-header{background:#f7fafc;border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:16px 20px;text-transform:uppercase}.stock-list-header,.stock-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:60px 2fr 1fr 1.2fr 1.5fr 1fr}.stock-row{align-items:center;border-bottom:1px solid #e2e8f0;color:inherit;padding:14px 20px;text-decoration:none;transition:background-color .2s}.stock-row:hover{background-color:#f7fafc}.stock-row:last-child{border-bottom:none}.stock-row-rank{color:#718096;font-size:1rem;font-weight:700}.stock-row-symbol{display:flex;flex-direction:column;gap:2px;justify-content:center;min-width:0;overflow:hidden}.symbol-text{color:#2d3748;font-size:1rem;font-weight:700}.stock-name{color:#718096;display:block;font-size:.875rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-row-price{color:#2d3748;font-size:1rem;font-weight:600}.stock-row-change{display:flex;flex-direction:column;font-weight:600;gap:2px;justify-content:center}.stock-row-change.positive{color:#38a169}.stock-row-change.negative{color:#e53e3e}.stock-row-change .percent{font-size:.875rem;opacity:.8}.stock-row-marketcap{color:#2d3748;font-weight:600}.stock-row-change-1m,.stock-row-change-7d{font-weight:600;text-align:center}.stock-row-change-1m.positive,.stock-row-change-7d.positive{color:#38a169}.stock-row-change-1m.negative,.stock-row-change-7d.negative{color:#e53e3e}.stock-row-volume{color:#4a5568;font-weight:500}@media (max-width:768px){.stocks-list{margin:0 10px;max-width:calc(100vw - 20px)}.stock-list-header,.stock-row{font-size:.75rem;gap:6px;grid-template-columns:30px minmax(0,2fr) 60px 70px 80px 70px;padding:10px 8px}.stock-row-rank{font-size:.8rem}.stock-row-symbol{min-width:0;overflow:hidden}.symbol-text{font-size:.85rem}.stock-name,.symbol-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-name{font-size:.7rem}.stock-row-price{font-size:.85rem;white-space:nowrap}.stock-row-change{font-size:.8rem}.stock-row-change .percent{font-size:.7rem}}.stocks-section h2{align-items:center;display:flex;gap:8px}.info-icon-container{position:relative}.info-icon,.info-icon-container{align-items:center;display:inline-flex}.info-icon{background:#f7fafc;border:1px solid #cbd5e0;border-radius:50%;color:#718096;cursor:help;font-size:14px;height:20px;justify-content:center;transition:all .2s;width:20px}.info-icon:hover{background:#3182ce;border-color:#3182ce;color:#fff}.info-tooltip{background:#2d3748;border-radius:6px;box-shadow:0 4px 12px #0000004d;color:#fff;left:30px;min-width:280px;opacity:0;padding:10px 12px;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .3s,visibility .3s;visibility:hidden;white-space:nowrap;z-index:1000}.info-icon-container:hover .info-tooltip{opacity:1;visibility:visible}.info-tooltip strong{color:#90cdf4;display:block;font-size:13px;margin-bottom:6px}.info-tooltip ul{list-style:none;margin:0;padding:0}.info-tooltip ul li{font-size:12px;line-height:1.4;padding:3px 0 3px 16px;position:relative}.info-tooltip ul li:before{color:#68d391;content:"✓";font-weight:700;left:0;position:absolute}.info-tooltip:before{border-bottom:8px solid #0000;border-right:8px solid #2d3748;border-top:8px solid #0000;content:"";height:0;left:-8px;position:absolute;top:50%;transform:translateY(-50%);width:0}@media (max-width:768px){.info-tooltip{left:auto;min-width:250px;right:0;top:100%;transform:translateY(8px)}.info-tooltip:before{border:8px solid #0000;border-bottom:8px solid #2d3748;border-top:none;left:auto;right:10px;top:-8px;transform:none}}.pagination-container{align-items:center;display:flex;gap:20px;justify-content:center;margin-top:20px;padding:32px 0}.pagination-button{background:#3182ce;border:none;border-radius:8px;box-shadow:0 2px 4px #3182ce33;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:#2c5aa0;box-shadow:0 4px 8px #3182ce4d;transform:translateY(-1px)}.pagination-button:active:not(:disabled){box-shadow:0 2px 4px #3182ce33;transform:translateY(0)}.pagination-button:disabled{background:#cbd5e0;box-shadow:none;cursor:not-allowed;opacity:.5}.pagination-info{color:#2d3748;font-size:1rem;font-weight:600;min-width:120px;padding:0 16px;text-align:center}.pagination-button-first,.pagination-button-last{background:#4a5568}.pagination-button-first:hover:not(:disabled),.pagination-button-last:hover:not(:disabled){background:#2d3748;box-shadow:0 4px 8px #2d37484d;transform:translateY(-2px)}@media (max-width:768px){.pagination-container{flex-wrap:wrap;gap:8px;padding:24px 0}.pagination-button{font-size:14px;padding:10px 16px}.pagination-button-first,.pagination-button-last{font-size:13px;padding:10px 12px}.pagination-info{font-size:.9rem;min-width:100px;padding:0 8px}}.pricing-page{margin:0 auto;max-width:1200px;padding:40px 20px}.pricing-header{margin-bottom:60px;text-align:center}.pricing-header h1{color:#2d3748;font-size:3rem;font-weight:700;margin-bottom:16px}.pricing-subtitle{color:#718096;font-size:1.2rem;margin:0 auto 40px;max-width:600px}.billing-toggle{background:#f7fafc;border-radius:12px;gap:0;margin:0 auto;max-width:400px;padding:6px}.billing-toggle,.toggle-btn{display:flex;justify-content:center}.toggle-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#718096;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;position:relative;transition:all .3s ease}.toggle-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#3182ce}.save-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:700;margin-left:4px;padding:4px 8px}.pricing-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:80px}.pricing-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;padding:40px 30px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.pricing-card:hover{box-shadow:0 12px 24px #00000026;transform:translateY(-8px)}.pricing-card.featured{border:3px solid #3182ce;transform:scale(1.05)}.pricing-card.featured:hover{transform:scale(1.05) translateY(-8px)}.featured-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;left:50%;padding:8px 20px;position:absolute;top:-15px;transform:translateX(-50%)}.pricing-card-header{margin-bottom:15px;text-align:center}.pricing-card-header h2{color:#2d3748;font-size:2rem;margin-bottom:8px}.pricing-description{color:#718096;font-size:1rem;margin-bottom:20px}.pricing-price{align-items:baseline;display:flex;flex-direction:row;gap:4px;justify-content:center}.price-amount{color:#2d3748;font-size:3.5rem;font-weight:700}.price-currency{color:#4a5568;font-size:2rem;font-weight:600}.price-period{color:#718096;font-size:1.1rem}.yearly-price{color:#718096;font-size:.95rem;font-weight:500;margin-bottom:0;margin-top:5px;text-align:center}.lifetime-price{align-items:center;flex-direction:column}.lifetime-pricing{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:8px}.lifetime-price-amount{align-items:baseline;display:flex;gap:4px}.original-price{color:#a0aec0;font-size:1.5rem;font-weight:500;text-decoration:line-through}.discount-badge{background:linear-gradient(135deg,#f56565,#e53e3e);border-radius:20px;box-shadow:0 2px 8px #e53e3e4d;color:#fff;font-size:.9rem;font-weight:700;padding:4px 12px}.lifetime-label{color:#718096;font-size:.95rem;font-weight:500;margin:8px 0 4px;text-align:center}.promo-label{animation:pulse 2s ease-in-out infinite;color:#e53e3e;font-size:.9rem;font-weight:600;margin:0;text-align:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.pricing-features{flex-grow:1;list-style:none;margin-bottom:30px;padding:0}.pricing-features li{align-items:center;border-bottom:1px solid #e2e8f0;color:#4a5568;display:flex;gap:12px;padding:12px 0}.pricing-features li:last-child{border-bottom:none}.feature-icon{color:#48bb78;font-size:1.2rem;font-weight:700}.pricing-cta{border:none;border-radius:8px;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:20px;padding:16px 32px;transition:all .3s ease;width:100%}.pricing-cta.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pricing-cta.primary:hover{box-shadow:0 8px 16px #667eea4d;opacity:.9;transform:translateY(-2px)}.pricing-cta.secondary{background:#fff;border:2px solid #3182ce;color:#3182ce}.pricing-cta.secondary:hover{background:#3182ce;color:#fff}.pricing-faq{margin-bottom:80px}.pricing-faq h2{color:#2d3748;font-size:2.5rem;margin-bottom:40px;text-align:center}.faq-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.faq-item{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:30px}.faq-item h3{color:#2d3748;font-size:1.3rem;margin-bottom:12px}.faq-item p{color:#718096;line-height:1.6}.pricing-contact{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;padding:60px 40px;text-align:center}.pricing-contact h2{font-size:2.5rem;margin-bottom:16px}.pricing-contact p{font-size:1.2rem;margin-bottom:30px;opacity:.9}.contact-button{background:#fff;border:none;border-radius:8px;color:#667eea;cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px 40px;transition:all .3s ease}.contact-button:hover{box-shadow:0 8px 16px #0003;transform:translateY(-2px)}@media (max-width:768px){.pricing-header h1{font-size:2rem}.pricing-grid{grid-template-columns:1fr}.pricing-card.featured{transform:scale(1)}.pricing-card.featured:hover{transform:translateY(-8px)}.faq-grid{grid-template-columns:1fr}.pricing-contact{padding:40px 20px}.pricing-contact h2{font-size:1.8rem}}.dashboard-page{margin:0 auto;max-width:1400px;padding:40px 20px}.dashboard-header{margin-bottom:50px;text-align:center}.dashboard-header h1{color:#2d3748;font-size:2.5rem;margin-bottom:10px}.dashboard-subtitle{color:#718096;font-size:1.1rem}.dashboard-content{margin-top:40px}.dashboard-actions{align-items:flex-end;display:flex;flex-direction:column;gap:10px;margin-bottom:30px}.list-limit-info{color:#4a5568;font-size:.9rem;text-align:right}.limit-reached{color:#e53e3e;font-weight:600}.limit-reached a{color:#667eea;margin-left:4px;text-decoration:underline}.create-list-button{background:linear-gradient(135deg,#4299e1,#3182ce);border:none;border-radius:8px;box-shadow:0 4px 12px #3182ce4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .2s ease}.create-list-button:hover{box-shadow:0 6px 16px #3182ce66;transform:translateY(-2px)}.watchlists-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.empty-state{color:#718096;grid-column:1/-1;padding:60px 20px;text-align:center}.empty-state p{font-size:1.1rem;margin:10px 0}.watchlist-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;transition:all .2s ease}.watchlist-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.watchlist-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.watchlist-header h3{color:#2d3748;font-size:1.3rem;margin:0}.delete-list-button{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;padding:4px 8px;transition:background .2s ease}.delete-list-button:hover{background:#fed7d7}.watchlist-info{align-items:center;color:#718096;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:16px}.watchlist-count{color:#4299e1;font-weight:600}.watchlist-stocks{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.stock-tag{background:#ebf8ff;border-radius:16px;color:#2c5282;font-size:.85rem;font-weight:500;padding:4px 12px}.stock-tag.more{background:#e2e8f0;color:#4a5568}.stock-actions{align-items:flex-start;display:flex;flex:0 0 auto;flex-direction:column;gap:12px}.stock-summary-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:40px auto;max-width:1400px;padding:10px}.summary-title{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.8rem;font-weight:700;margin-bottom:24px;padding-bottom:12px}.summary-content{display:flex;flex-direction:column}.summary-header,.summary-stock-info{align-items:center;display:flex;justify-content:space-between}.summary-stock-info{width:100%}.summary-stock-info h3{color:#2d3748;font-size:1.5rem;font-weight:700;margin-bottom:0}.summary-price-info{align-items:center;display:flex;gap:12px}.summary-price{color:#1a202c;font-size:2rem;font-weight:700}.summary-change{font-size:1.2rem;font-weight:600}.summary-chart-section{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.summary-chart-section h4{color:#2d3748;font-size:1.2rem;font-weight:600;margin-bottom:16px}.summary-metrics{grid-gap:0;display:grid;gap:0;grid-template-columns:1fr;grid-template-rows:auto auto}.stock-summary-section .chart-container{border:none;box-shadow:none;margin-bottom:0;margin-top:0;padding:10px 15px 0}.stock-summary-section .key-indicators,.stock-summary-section .summary-indicators-section,.stock-summary-section .summary-per-section{border:none;box-shadow:none}.stock-summary-section .key-indicators,.stock-summary-section .summary-per-section{padding:0}.stock-summary-section .indicators-grid{gap:12px;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto}.summary-indicators-section,.summary-per-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.summary-indicators-section h4,.summary-per-section h4{color:#2d3748;font-size:1rem;font-weight:600;margin-bottom:12px}.per-metrics{display:flex;flex-direction:column;gap:12px}.per-item{align-items:center;background:#f7fafc;border-radius:6px;display:flex;justify-content:space-between;padding:8px}.per-label{color:#4a5568;font-size:.9rem;font-weight:500}.per-value{color:#2d3748;font-size:.95rem;font-weight:700}.add-to-watchlist-button{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;box-shadow:0 4px 12px #38a1694d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.add-to-watchlist-button:hover{box-shadow:0 6px 16px #38a16966;transform:translateY(-2px)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px}.modal-header h2{color:#2d3748;font-size:1.5rem;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;transition:background .2s ease;width:32px}.modal-close:hover{background:#e2e8f0}.modal-body{padding:24px}.modal-body label{color:#4a5568;display:block;font-weight:600;margin-bottom:8px}.modal-body input{border:1px solid #cbd5e0;border-radius:8px;font-size:1rem;padding:12px;transition:border-color .2s ease;width:100%}.modal-body input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.modal-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.modal-button.secondary{background:#e2e8f0;color:#4a5568}.modal-button.secondary:hover{background:#cbd5e0}.modal-button.primary{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff}.modal-button.primary:hover{box-shadow:0 4px 12px #3182ce4d}.modal-button.primary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.dashboard-header h1{font-size:2rem}.watchlists-grid{grid-template-columns:1fr}.dashboard-actions{justify-content:center}.stock-actions{flex-direction:column;width:100%}.add-to-watchlist-button{width:100%}}.watchlist-modal{max-width:600px}.modal-stock-info{background:#ebf8ff;border-radius:8px;color:#2c5282;margin-bottom:20px;padding:12px;text-align:center}.modal-stock-info strong{color:#2b6cb0}.modal-info{background:#f0fdf4;border-radius:6px;color:#166534;font-size:.9rem;margin-top:12px;padding:10px;text-align:center}.watchlist-selection{margin-bottom:16px;max-height:300px;overflow-y:auto}.watchlist-option{align-items:center;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px;transition:all .2s ease}.watchlist-option.selected,.watchlist-option:hover:not(.disabled){background:#ebf8ff;border-color:#4299e1}.watchlist-option.disabled{background:#f7fafc;cursor:not-allowed;opacity:.6}.watchlist-option-info{display:flex;flex-direction:column;gap:4px}.watchlist-option-name{color:#2d3748;font-size:1.1rem;font-weight:600}.watchlist-option-count{color:#718096;font-size:.9rem}.already-added-badge{background:#48bb78;border-radius:16px;color:#fff;font-size:.85rem;font-weight:600;padding:4px 12px}.create-new-list-link{background:#0000;border:2px dashed #cbd5e0;border-radius:8px;color:#4299e1;cursor:pointer;font-size:1rem;font-weight:600;padding:14px;transition:all .2s ease;width:100%}.create-new-list-link:hover{background:#ebf8ff;border-color:#4299e1}.empty-watchlist-message{color:#718096;padding:30px 20px;text-align:center}.empty-watchlist-message p{font-size:1.05rem;margin:10px 0}.limit-reached-message{background:#fff5f5;border:2px solid #feb2b2;border-radius:8px;margin-top:16px;padding:16px;text-align:center}.limit-reached-message p{color:#c53030;font-size:.95rem;font-weight:600;margin-bottom:12px}.upgrade-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.upgrade-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.admin-page{margin:0 auto;max-width:1400px;padding:20px}.admin-header{margin-bottom:40px;text-align:center}.admin-header h1{color:#1a202c;font-size:2.5rem;margin-bottom:10px}.admin-subtitle{color:#718096;font-size:1.1rem}.admin-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.stat-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;gap:16px;padding:24px;transition:transform .2s}.stat-card:hover{transform:translateY(-4px)}.stat-card:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-card:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card:nth-child(4){background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-icon{font-size:2.5rem}.stat-content{flex:1 1}.stat-card .stat-value{color:#fff;font-size:2rem;font-weight:700;line-height:1;margin-bottom:4px}.stat-card .stat-label{color:#fff;font-size:.9rem;font-weight:600}.admin-users h2{color:#1a202c;font-size:1.8rem;margin-bottom:20px}.users-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.users-table th{color:#4a5568;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:16px;text-align:left;text-transform:uppercase}.users-table td{border-bottom:1px solid #e2e8f0;color:#2d3748;padding:16px}.users-table tbody tr:hover{background:#f7fafc}.users-table tbody tr:last-child td{border-bottom:none}.user-name{align-items:center;display:flex;font-weight:500;gap:8px}.admin-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:2px 8px}.plan-badge{border-radius:16px;display:inline-block;font-size:.875rem;font-weight:600;padding:4px 12px}.plan-moyen{background:#bee3f8;color:#2c5282}.plan-premium{background:#fed7d7;color:#742a2a}.plan-lifetime{background:#faf089;color:#744210}.no-subscription{color:#a0aec0;font-style:italic}.status-badge{border-radius:16px;display:inline-block;font-size:.875rem;font-weight:600;padding:4px 12px}.status-active{background:#c6f6d5;color:#22543d}.status-canceled{background:#fed7d7;color:#742a2a}.status-incomplete{background:#feebc8;color:#7c2d12}.status-past_due{background:#fbb6ce;color:#702459}.status-trialing{background:#e9d8fd;color:#44337a}.status-unpaid{background:#fed7e2;color:#97266d}.action-buttons{display:flex;gap:8px}.delete-button,.edit-button{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;padding:4px 8px;transition:background .2s}.edit-button:hover{background:#edf2f7}.delete-button:hover{background:#fff5f5}.pagination{align-items:center;display:flex;gap:16px;justify-content:center;margin-top:24px;padding:16px}.pagination button{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#4a5568;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s}.pagination button:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{color:#4a5568;font-weight:500}.form-group{margin-bottom:20px}.form-group label{color:#2d3748;display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}.form-group select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;font-size:1rem;padding:10px 12px;transition:border-color .2s;width:100%}.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.modal-user-info{background:#f7fafc;border-radius:8px;color:#4a5568;font-size:.95rem;margin-bottom:20px;padding:12px}@media (max-width:768px){.admin-header h1{font-size:2rem}.admin-stats{grid-template-columns:1fr}.stat-card{padding:20px}.users-table-container{overflow-x:scroll}.users-table{min-width:900px}.users-table td,.users-table th{font-size:.875rem;padding:12px 8px}}.admin-protected{color:#667eea;cursor:help;display:inline-block;font-size:1.2rem;padding:4px 8px}.admin-protected:hover{color:#764ba2}.admin-suggestions{margin-top:40px}.admin-suggestions h2{color:#1a202c;font-size:1.8rem;margin-bottom:24px}.suggestions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.no-suggestions{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;grid-column:1/-1;padding:48px 24px;text-align:center}.no-suggestions p{color:#a0aec0;font-size:1rem;margin:0}.suggestion-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:16px;padding:20px;transition:all .2s}.suggestion-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.suggestion-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;justify-content:space-between;padding-bottom:12px}.suggestion-user{display:flex;flex:1 1;flex-direction:column;gap:4px}.suggestion-user strong{color:#2d3748;font-size:.95rem;font-weight:600}.suggestion-email{color:#718096;font-size:.8rem}.suggestion-date{color:#a0aec0;font-size:.8rem;white-space:nowrap}.suggestion-body{flex:1 1}.suggestion-body p{color:#4a5568;font-size:.9rem;line-height:1.6;margin:0}.suggestion-footer{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:space-between;padding-top:12px}.suggestion-status{border-radius:16px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 12px}.status-selector{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#4a5568;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 12px;transition:all .2s}.status-selector:hover{border-color:#667eea}.status-selector:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}@media (max-width:768px){.suggestions-grid{grid-template-columns:1fr}.suggestion-footer{align-items:stretch;flex-direction:column}.status-selector{width:100%}}.loading-fallback{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:40px;width:100%}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#2563eb;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-text{color:#6b7280;font-size:16px;font-weight:500;margin-top:16px}.toast-container{display:flex;flex-direction:column;gap:10px;max-width:400px;position:fixed;right:20px;top:20px;z-index:9999}.toast{align-items:center;animation:slideIn .3s ease-out;background:#fff;border-left:4px solid;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;gap:12px;min-width:300px;padding:16px}@keyframes slideIn{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}.toast-success{background:#f0fdf4;border-left-color:#10b981}.toast-error{background:#fef2f2;border-left-color:#ef4444}.toast-warning{background:#fffbeb;border-left-color:#f59e0b}.toast-info{background:#eff6ff;border-left-color:#3b82f6}.toast-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:28px;justify-content:center;width:28px}.toast-success .toast-icon{background:#10b981;color:#fff}.toast-error .toast-icon{background:#ef4444;color:#fff}.toast-warning .toast-icon{background:#f59e0b;color:#fff}.toast-info .toast-icon{background:#3b82f6;color:#fff}.toast-message{color:#1f2937;flex:1 1;font-size:14px;line-height:1.5}.toast-close{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:24px;justify-content:center;padding:0;transition:background-color .2s,color .2s;width:24px}.toast-close:hover{background:#0000001a;color:#1f2937}@media (max-width:768px){.toast-container{left:10px;max-width:none;right:10px;top:70px}.toast{gap:10px;min-width:auto;padding:12px}.toast-icon{font-size:20px;height:24px;width:24px}.toast-message{font-size:13px}.toast-close{font-size:20px;height:20px;width:20px}@keyframes slideIn{0%{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}}
/*# sourceMappingURL=main.a3c94640.css.map*/