body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error)}.Toastify__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translateX(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px 0 #0000001a,0 2px 15px 0 #0000000d;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74c3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74c3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform:perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.config-page{align-items:center;background:radial-gradient(ellipse at top,#151521,#0a0a0f);display:flex;justify-content:center;min-height:100vh;padding:2rem}.config-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;box-shadow:0 20px 60px #00000080;max-width:700px;overflow:hidden;width:100%}.config-header{background:linear-gradient(135deg,var(--bg-secondary),var(--bg-card));border-bottom:1px solid var(--border-color);padding:2.5rem;text-align:center}.logo-section{flex-direction:column;gap:1.5rem}.logo-icon{border-radius:24px;box-shadow:0 0 40px #8b5cf666;height:80px;width:80px}.logo-icon svg{height:40px;width:40px}.config-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--purple-primary),var(--purple-light));-webkit-background-clip:text;font-size:2rem;margin-bottom:.5rem}.config-header p{color:var(--text-secondary);font-size:1rem}.config-content{padding:2.5rem}.welcome-section{margin-bottom:2rem;text-align:center}.welcome-section h2{font-size:1.5rem;margin-bottom:1rem}.welcome-section p{color:var(--text-secondary);line-height:1.6;margin:0 auto;max-width:500px}.features-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:2rem}.feature-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;text-align:center;transition:all .3s}.feature-card:hover{border-color:var(--purple-primary);box-shadow:0 4px 12px #8b5cf633;transform:translateY(-2px)}.feature-icon{font-size:2rem;margin-bottom:.75rem}.feature-card h3{font-size:.9rem;margin-bottom:.5rem}.feature-card p{color:var(--text-secondary);font-size:.8rem}.ai-section{background:#8b5cf60d;border:1px solid #8b5cf633;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.ai-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.ai-header svg{color:var(--purple-primary)}.ai-header h3{font-size:1.1rem}.ai-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.ai-description a{color:var(--purple-primary);text-decoration:none}.ai-description a:hover{text-decoration:underline}.input-group{margin-bottom:1rem;position:relative}.api-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:.95rem;padding:.875rem 3rem .875rem 1rem;transition:all .3s;width:100%}.api-input:focus{border-color:var(--purple-primary);box-shadow:0 0 0 3px #8b5cf61a;outline:none}.status-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.status-icon.success{color:var(--green)}.status-icon.error{color:var(--red)}.test-ai-btn{background:var(--bg-card);border:1px solid var(--purple-primary);border-radius:8px;color:var(--purple-primary);cursor:pointer;font-size:.9rem;font-weight:600;padding:.625rem;transition:all .3s;width:100%}.test-ai-btn:hover{background:#8b5cf61a}.error-message{color:var(--red);font-size:.85rem;margin-top:.5rem}.action-section{display:flex;flex-direction:column;gap:1rem}.primary-btn{align-items:center;background:linear-gradient(135deg,var(--purple-primary),var(--purple-dark));border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;padding:1rem;transition:all .3s;width:100%}.primary-btn:hover{box-shadow:0 8px 24px #8b5cf666;transform:translateY(-2px)}.secondary-btn{background:#0000;border:1px solid var(--border-color);border-radius:10px;color:var(--text-secondary);cursor:pointer;font-size:.95rem;padding:.875rem;transition:all .3s;width:100%}.secondary-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.config-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:1.5rem;text-align:center}.footer-text{color:var(--text-secondary);font-size:.85rem}.portfolio-builder{margin:0 auto;max-width:1200px}.section-header{margin-bottom:2rem}.section-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--purple-primary),var(--purple-light));-webkit-background-clip:text;font-size:1.75rem;font-weight:700;margin-bottom:.5rem}.section-header p{color:var(--text-secondary);font-size:1rem}.investment-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.input-label{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:.5rem;margin-bottom:.75rem}.input-label svg{color:var(--purple-primary)}.amount-input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1.25rem;font-weight:600;padding:.75rem 1rem;transition:all .3s ease;width:100%}.amount-input:focus{border-color:var(--purple-primary);box-shadow:0 0 0 3px #8b5cf61a;outline:none}.assets-section{margin-bottom:2rem}.assets-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-top:1rem}.asset-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease}.asset-card:hover{border-color:var(--purple-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.asset-card.selected{background:linear-gradient(135deg,#8b5cf61a,#8b5cf60d);border-color:var(--purple-primary);box-shadow:var(--shadow-glow)}.asset-card.selected:before{align-items:center;background:var(--gradient-primary);border-radius:50%;color:#fff;content:"✓";display:flex;font-weight:700;height:24px;justify-content:center;position:absolute;right:.5rem;top:.5rem;width:24px}.asset-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.asset-symbol{font-size:1.25rem;font-weight:700}.sentiment-indicator{border-radius:6px;color:#fff;font-size:.875rem;font-weight:600;padding:.25rem .5rem}.asset-footer{margin-top:.5rem}.sentiment-label{color:var(--text-muted);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.selection-summary{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.selection-summary h3{font-size:1.1rem;margin-bottom:1rem}.selected-tags{display:flex;flex-wrap:wrap;gap:.75rem}.asset-tag{animation:fadeIn .3s ease;background:var(--gradient-primary);border-radius:20px;display:inline-flex;font-weight:600;gap:.5rem;padding:.5rem 1rem}.asset-tag,.remove-btn{align-items:center;color:#fff}.remove-btn{background:#fff3;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.2rem;height:20px;justify-content:center;line-height:1;padding:0;transition:all .3s ease;width:20px}.remove-btn:hover{background:#ffffff4d}.action-buttons{justify-content:flex-end}.warning-message{align-items:center;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;color:var(--yellow);display:flex;font-size:.9rem;gap:.5rem;margin-top:1rem;padding:.75rem 1rem}.warning-message svg{flex-shrink:0}.optimizer-settings{margin:0 auto;max-width:800px}.settings-group{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.settings-group h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.1rem;font-weight:600;gap:.75rem;margin-bottom:1.5rem}.settings-group h3 svg{color:var(--purple-primary)}.objective-options{display:flex;flex-direction:column;gap:1rem}.radio-option{align-items:center;background:var(--bg-card);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;padding:1rem;transition:all .3s ease}.radio-option:hover{background:var(--bg-hover);border-color:var(--purple-primary)}.radio-option input[type=radio]{cursor:pointer;height:20px;margin-right:1rem;width:20px}.radio-option input[type=radio]:checked{accent-color:var(--purple-primary)}.radio-option:has(input:checked){background:linear-gradient(135deg,#8b5cf61a,#8b5cf60d);border-color:var(--purple-primary)}.option-content{display:flex;flex-direction:column}.option-title{font-size:1rem;font-weight:600;margin-bottom:.25rem}.option-desc{color:var(--text-secondary);font-size:.875rem}.risk-slider{padding:1rem}.risk-labels{display:flex;justify-content:space-between;margin-bottom:1rem}.risk-labels span{border-radius:6px;color:var(--text-secondary);font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.risk-labels span.active{background:var(--gradient-primary);color:#fff;font-weight:600}.slider{-webkit-appearance:none;background:var(--bg-card);border-radius:3px;height:6px;outline:none;width:100%}.slider::-webkit-slider-thumb{appearance:none;background:var(--gradient-primary);border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;height:24px;-webkit-transition:all .3s ease;transition:all .3s ease;width:24px}.slider::-webkit-slider-thumb:hover{box-shadow:var(--shadow-glow);transform:scale(1.2)}.slider::-moz-range-thumb{background:var(--gradient-primary);border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;height:24px;-moz-transition:all .3s ease;transition:all .3s ease;width:24px}.constraints-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.constraint-item{display:flex;flex-direction:column;gap:.5rem}.constraint-item label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.constraint-input{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:.5rem;padding:.5rem 1rem}.constraint-input input{background:none;border:none;color:var(--text-primary);font-size:1.25rem;font-weight:600;outline:none;text-align:right;width:60px}.constraint-input span{color:var(--text-secondary);font-weight:600}.checkbox-option{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:1rem;transition:all .3s ease}.checkbox-option:hover{border-color:var(--purple-primary)}.checkbox-option input[type=checkbox]{accent-color:var(--purple-primary);cursor:pointer;height:20px;width:20px}.checkbox-option span{font-weight:500}@media (max-width:768px){.constraints-grid{grid-template-columns:1fr}.objective-options{gap:.75rem}}.dashboard-container{margin:0 auto;max-width:1200px}.dashboard-header{border-bottom:1px solid var(--border-color);justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.dashboard-header,.header-main{align-items:center;display:flex}.header-main{gap:1rem}.dashboard-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--purple-primary),var(--purple-light));-webkit-background-clip:text;font-size:1.75rem;font-weight:700;margin:0}.demo-badge{background:#f59e0b33;border-radius:20px;color:var(--yellow);font-size:.75rem;font-weight:600;padding:.25rem .75rem}.header-actions{display:flex;gap:.5rem}.icon-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:all .3s}.icon-btn:hover{background:var(--bg-hover);border-color:var(--purple-primary);color:var(--purple-primary)}.metrics-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.metric-card{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:1rem;padding:1.5rem;transition:all .3s}.metric-card:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.metric-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.metric-icon.returns{background:linear-gradient(135deg,#10b981,#059669)}.metric-icon.risk{background:linear-gradient(135deg,#f59e0b,#d97706)}.metric-icon.sharpe{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.metric-icon.diversification{background:linear-gradient(135deg,#3b82f6,#2563eb)}.metric-icon svg{color:#fff}.metric-content{display:flex;flex-direction:column;gap:.25rem}.metric-label{color:var(--text-secondary);font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.metric-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.metric-change{font-size:.85rem;font-weight:600}.metric-change.positive{color:var(--green)}.metric-change.negative{color:var(--red)}.metric-info{color:var(--text-secondary);font-size:.85rem}.risk-level{font-size:.85rem;font-weight:600}.risk-level.green{color:var(--green)}.risk-level.yellow{color:var(--yellow)}.risk-level.red{color:var(--red)}.chart-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.section-header h3{font-size:1.25rem;font-weight:600;margin:0}.toggle-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .3s}.toggle-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.allocation-content{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.pie-chart-container{display:flex;justify-content:center}.allocation-table h4{color:var(--text-primary);font-size:1rem;margin-bottom:1rem}.table-container{background:var(--bg-card);border-radius:8px;overflow:hidden}table{border-collapse:collapse;width:100%}th{background:var(--bg-secondary);color:var(--text-secondary);font-size:.85rem;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}td,th{padding:.75rem}td{border-top:1px solid var(--border-color);color:var(--text-primary);font-size:.95rem}.asset-cell{align-items:center;display:flex;gap:.5rem}.asset-color{border-radius:3px;height:12px;width:12px}.performance-chart{padding:1rem 0}.recommendations-section{margin-bottom:2rem}.recommendations-section h3{font-size:1.25rem;margin-bottom:1rem}.recommendation-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.recommendation-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:1rem;padding:1.5rem}.recommendation-card svg{flex-shrink:0}.warning-icon{color:var(--yellow)}.info-icon{color:var(--purple-primary)}.recommendation-content h4{color:var(--text-primary);font-size:1rem;margin-bottom:.5rem}.recommendation-content p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.actions-section{grid-gap:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:grid;gap:1rem;grid-template-columns:1fr 1fr;padding:1.5rem}.action-button{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;min-height:52px;padding:1rem 1.5rem;transition:all .3s}.action-button.secondary{background:var(--bg-card);border:2px solid var(--border-color);color:var(--text-primary)}.action-button.secondary:hover{background:#8b5cf61a;border-color:var(--purple-primary);color:var(--purple-primary);transform:translateY(-2px)}.action-button.primary{background:linear-gradient(135deg,var(--purple-primary),var(--purple-dark));border:none;color:#fff}.action-button.primary:hover{box-shadow:0 8px 24px #8b5cf666;transform:translateY(-2px)}.action-button span{font-weight:600}.action-button svg{flex-shrink:0}@media (max-width:768px){.actions-section,.allocation-content,.metrics-grid{grid-template-columns:1fr}}.no-results{color:var(--text-secondary);padding:4rem 2rem;text-align:center}.ai-assistant-button{align-items:center;background:linear-gradient(135deg,var(--purple-primary),var(--purple-dark));border:none;border-radius:24px;bottom:24px;box-shadow:0 4px 12px #8b5cf64d;color:#fff;cursor:pointer;display:flex;gap:8px;padding:12px 20px;position:fixed;right:24px;transition:all .3s ease;z-index:1000}.ai-assistant-button:hover{box-shadow:0 6px 20px #8b5cf666;transform:translateY(-2px)}.ai-assistant-button.hidden{display:none}.ai-assistant-container{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;bottom:24px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;height:600px;position:fixed;right:24px;width:400px;z-index:1000}.ai-assistant-header{align-items:center;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:16px 20px}.header-title{align-items:center;color:var(--purple-primary);display:flex;gap:8px}.header-title h3{font-size:1.1rem;margin:0}.close-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;transition:color .3s}.close-button:hover{color:var(--text-primary)}.ai-assistant-messages{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px}.message{animation:fadeIn .3s ease;display:flex;gap:12px}.message.user{justify-content:flex-end}.message.user .message-content{background-color:var(--purple-primary);color:#fff;margin-left:40px}.message.assistant .message-content{background-color:var(--bg-secondary);color:var(--text-primary);margin-right:40px}.message-icon{align-items:center;background-color:var(--bg-secondary);border-radius:50%;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.message.user .message-icon{background-color:var(--purple-dark);color:#fff;order:1}.message-content{border-radius:12px;font-size:.9rem;line-height:1.5;max-width:80%;padding:12px 16px}.quick-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 12px}.quick-action-button{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;color:var(--text-secondary);cursor:pointer;font-size:.8rem;padding:6px 12px;transition:all .3s}.quick-action-button:hover{background-color:var(--purple-primary);border-color:var(--purple-primary);color:#fff}.ai-assistant-input{background-color:var(--bg-secondary);border-radius:0 0 16px 16px;border-top:1px solid var(--border-color);display:flex;gap:12px;padding:16px 20px}.ai-assistant-input input{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);flex:1 1;font-size:.9rem;padding:10px 16px}.ai-assistant-input input:focus{border-color:var(--purple-primary);outline:none}.send-button{align-items:center;background-color:var(--purple-primary);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:10px;transition:all .3s}.send-button:hover:not(:disabled){background-color:var(--purple-dark)}.send-button:disabled{cursor:not-allowed;opacity:.5}.typing-indicator{display:flex;gap:4px}.typing-indicator span{animation:typing 1.4s infinite;background-color:var(--text-secondary);border-radius:50%;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3}30%{opacity:1}}@media (max-width:768px){.ai-assistant-container{bottom:20px;height:70vh;right:5vw;width:90vw}}:root{--bg-primary:#0a0a0f;--bg-secondary:#151521;--bg-card:#1a1a2e;--bg-hover:#252540;--text-primary:#fff;--text-secondary:#9ca3af;--text-muted:#6b7280;--purple-primary:#8b5cf6;--purple-dark:#7c3aed;--purple-light:#a78bfa;--green:#10b981;--red:#ef4444;--yellow:#f59e0b;--border-color:#ffffff1a;--shadow-glow:0 0 20px #8b5cf666;--gradient-primary:linear-gradient(135deg,#8b5cf6,#7c3aed)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0a0f;background:var(--bg-primary);color:#fff;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}.app{background:radial-gradient(ellipse at top,#151521,#0a0a0f);min-height:100vh;position:relative}.app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#151521f2,#0a0a0ff2);border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border-color);padding:1.5rem 0;position:sticky;top:0;z-index:100}.header-content{justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.header-content,.logo-section{align-items:center;display:flex}.logo-section{gap:1rem}.logo-icon{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--purple-primary),var(--purple-dark));border-radius:12px;box-shadow:0 0 20px #8b5cf64d;display:flex;height:48px;justify-content:center;width:48px}.logo-icon svg{color:#fff}.logo-text h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#8b5cf6,#a78bfa);background:linear-gradient(135deg,var(--purple-primary),var(--purple-light));-webkit-background-clip:text;font-size:1.5rem;font-weight:700;margin:0}.tagline{color:#9ca3af;color:var(--text-secondary);font-size:.875rem;margin:.25rem 0 0}.header-stats{align-items:center;display:flex;gap:2rem}.stat-item{align-items:flex-end;display:flex;flex-direction:column}.stat-label{color:#9ca3af;color:var(--text-secondary);font-size:.75rem;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.stat-value{color:#fff;color:var(--text-primary);font-size:1.125rem;font-weight:600}.stat-value.positive{color:#10b981;color:var(--green)}.stat-value.negative{color:#ef4444;color:var(--red)}.stat-value.neutral{color:#f59e0b;color:var(--yellow)}.stat-value.bullish{color:#10b981;color:var(--green)}.stat-value.bearish{color:#ef4444;color:var(--red)}.logout-btn{align-items:center;background:#1a1a2e;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:8px;color:#9ca3af;color:var(--text-secondary);cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .3s}.logout-btn:hover{background:#ef44441a;border-color:#ef4444;border-color:var(--red);color:#ef4444;color:var(--red)}.progress-container{margin:3rem auto 2rem;max-width:900px;padding:0 2rem}.progress-steps{justify-content:space-between;position:relative}.progress-steps,.step{align-items:center;display:flex}.step{background:#1a1a2e;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:12px;flex:1 1;gap:1rem;max-width:250px;padding:1rem;transition:all .3s}.step.active{background:#8b5cf60d;border-color:#8b5cf6;border-color:var(--purple-primary)}.step.current{box-shadow:0 0 20px #8b5cf666;box-shadow:var(--shadow-glow);transform:translateY(-2px)}.step-number{align-items:center;background:#151521;background:var(--bg-secondary);border:2px solid #ffffff1a;border:2px solid var(--border-color);border-radius:50%;display:flex;font-weight:600;height:40px;justify-content:center;transition:all .3s;width:40px}.step.active .step-number{background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:var(--gradient-primary);border-color:#8b5cf6;border-color:var(--purple-primary);color:#fff}.step-info{display:flex;flex-direction:column;gap:.25rem}.step-title{color:#fff;color:var(--text-primary);font-size:.9rem;font-weight:600}.step-desc{color:#9ca3af;color:var(--text-secondary);font-size:.75rem}.step-connector{background:#ffffff1a;background:var(--border-color);flex:0.5 1;height:1px;margin:0 -.5rem}.main-container{margin:0 auto;max-width:1200px;padding:2rem}.content-wrapper{background:#1a1a2e;background:var(--bg-card);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:20px;box-shadow:0 10px 40px #0000004d;min-height:500px;padding:2rem}.info-banner{margin:2rem auto;max-width:1200px;padding:0 2rem}.info-banner>div{align-items:center;background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:12px;display:flex;gap:1rem;padding:1rem 1.5rem}.info-banner svg{color:#8b5cf6;color:var(--purple-primary);flex-shrink:0}.info-banner p{color:#9ca3af;color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.primary-button{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:var(--gradient-primary);border-radius:10px;color:#fff;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s}.primary-button:hover:not(:disabled){box-shadow:0 0 20px #8b5cf666;box-shadow:var(--shadow-glow);transform:translateY(-2px)}.primary-button:disabled{cursor:not-allowed;opacity:.5}.secondary-button{align-items:center;background:#151521;background:var(--bg-secondary);border:1px solid #ffffff1a;border:1px solid var(--border-color);border-radius:10px;color:#fff;color:var(--text-primary);display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem}.secondary-button:hover:not(:disabled){background:#252540;background:var(--bg-hover);border-color:#8b5cf6;border-color:var(--purple-primary)}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #ffffff1a;border-top-color:#8b5cf6;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--purple-primary);height:40px;margin:2rem auto;width:40px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#151521;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#8b5cf6;background:var(--purple-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a78bfa;background:var(--purple-light)}@media (max-width:1024px){.progress-steps{flex-direction:column;gap:1rem}.step{max-width:100%;width:100%}.step-connector{display:none}}@media (max-width:768px){.header-content{flex-direction:column;gap:1rem;text-align:center}.logo-section{justify-content:center}.header-stats{justify-content:space-around;width:100%}.stat-item{align-items:center}.main-container{padding:1rem}.content-wrapper{border-radius:16px;padding:1.5rem}.logo-text h1{font-size:1.25rem}.tagline{font-size:.75rem}}@media (max-width:480px){.logo-icon{height:40px;width:40px}.logo-text h1{font-size:1.1rem}.stat-label{font-size:.7rem}.stat-value{font-size:1rem}.progress-container{margin:2rem auto 1.5rem}.step{padding:.75rem}.step-number{font-size:.9rem;height:32px;width:32px}.step-title{font-size:.85rem}.step-desc{font-size:.7rem}}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}button{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;outline:none;transition:all .3s}.btn-primary,.primary-button,button[type=submit]:not(.secondary){align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--purple-primary),var(--purple-dark));border:none;border-radius:10px;color:#fff!important;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;min-height:48px;padding:.875rem 1.75rem;transition:all .3s}.btn-primary:hover:not(:disabled),.primary-button:hover:not(:disabled),button[type=submit]:not(.secondary):hover:not(:disabled){box-shadow:0 8px 24px #8b5cf666;transform:translateY(-2px)}.btn-secondary,.secondary-button,button:not([type=submit]){align-items:center;background:#151521;background:var(--bg-secondary);border:2px solid #ffffff1a;border:2px solid var(--border-color);border-radius:10px;color:#fff!important;color:var(--text-primary)!important;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;min-height:48px;padding:.875rem 1.75rem;transition:all .3s}.btn-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled),button:not([type=submit]):hover:not(:disabled){background:#252540;background:var(--bg-hover);border-color:#8b5cf6;border-color:var(--purple-primary);color:#8b5cf6!important;color:var(--purple-primary)!important;transform:translateY(-2px)}button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.action-buttons,.button-group,.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.action-buttons button,.button-group button,.form-actions button{flex:1 1}button span{color:inherit;font-weight:inherit}button svg{color:currentColor}.btn-primary{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--purple-primary),var(--purple-dark));border:none;border-radius:10px;color:#fff!important;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;min-height:48px;padding:.875rem 1.75rem;transition:all .3s}.btn-primary:hover:not(:disabled){box-shadow:0 8px 24px #8b5cf666;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-secondary{align-items:center;background:#151521;background:var(--bg-secondary);border:2px solid #ffffff1a;border:2px solid var(--border-color);border-radius:10px;color:#fff!important;color:var(--text-primary)!important;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;min-height:48px;padding:.875rem 1.75rem;transition:all .3s}.btn-secondary:hover:not(:disabled){background:#252540;background:var(--bg-hover);border-color:#8b5cf6;border-color:var(--purple-primary);color:#8b5cf6!important;color:var(--purple-primary)!important;transform:translateY(-2px)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.action-buttons{border-top:1px solid #ffffff1a;border-top:1px solid var(--border-color);display:flex;gap:1rem;margin-top:2rem;padding-top:2rem}.action-buttons .btn-primary:only-child,.action-buttons .btn-secondary:only-child{margin:0 auto;max-width:300px}
/*# sourceMappingURL=main.d5aee46f.css.map*/