.toast-container{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:300px;max-width:500px;padding:1rem 1.25rem;border-radius:8px;background:#1a1a2e;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 15px -3px #00000080,0 4px 6px -2px #0000004d;pointer-events:all;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-content{display:flex;align-items:center;gap:.75rem;flex:1;color:#fff;font-size:.9375rem}.toast-content svg{flex-shrink:0}.toast-success{border-left:4px solid #22c55e}.toast-success svg{color:#22c55e}.toast-error{border-left:4px solid #ef4444}.toast-error svg{color:#ef4444}.toast-warning{border-left:4px solid #fbbf24}.toast-warning svg{color:#fbbf24}.toast-info{border-left:4px solid #3b82f6}.toast-info svg{color:#3b82f6}.toast-close{flex-shrink:0;background:none;border:none;color:#fff9;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.toast-close:hover{background:#ffffff1a;color:#fff}.layout-container{min-height:100vh;background-color:#0f1115;color:#fff;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;flex-direction:column}.top-nav{position:sticky;top:1rem;z-index:40;padding:.75rem 2rem;margin:0 1rem}.top-nav:before{content:"";position:absolute;top:0;left:.75rem;right:.75rem;bottom:0;background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.1);border-radius:.75rem}.nav-content{max-width:1100px;margin:0 auto;height:48px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;position:relative;z-index:1}.nav-left{display:flex;align-items:center;gap:.75rem}.nav-logo-img{width:36px;height:36px;object-fit:contain}.nav-logo{font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:-.01em}.nav-cards{display:flex;align-items:center;gap:.75rem;flex:1;justify-content:center}.nav-card{display:inline-flex;align-items:center;justify-content:center;padding:.4rem 1.1rem;border-radius:.65rem;font-size:.9rem;font-weight:500;color:#ffffffb3;text-decoration:none;border:none;position:relative;transition:color .2s ease}.nav-card:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:0;height:2px;background-color:#fff;border-radius:2px;transition:width .2s ease}.nav-card:hover{color:#fff}.nav-card.active{color:#fff;background-color:transparent;box-shadow:none}.nav-card.active:after{width:calc(100% - 2.2rem)}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:inline-flex;align-items:center;gap:.375rem;cursor:pointer;background:transparent}.nav-dropdown-trigger svg{opacity:.6;transition:transform .2s ease,opacity .2s ease}.nav-dropdown:hover .nav-dropdown-trigger svg{opacity:1;transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%);background:#18181bf2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:8px;min-width:160px;padding:.375rem;box-shadow:0 8px 32px #0006;opacity:0;visibility:hidden;transform:translate(-50%) translateY(-8px);transition:all .2s ease;z-index:100}.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.nav-dropdown-item{display:block;padding:.625rem 1rem;color:#ffffffb3;text-decoration:none;font-size:.8125rem;font-weight:500;border-radius:6px;transition:all .15s ease}.nav-dropdown-item:hover{background:#ffffff14;color:#fff}.nav-dropdown-item.active{background:#3b82f626;color:#60a5fa}.nav-right{display:flex;align-items:center;gap:.75rem}.user-menu-container{position:relative}.user-menu-button{border:1px solid rgba(255,255,255,.1);background-color:transparent;color:#fffc;border-radius:999px;padding:.35rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.user-menu-button:hover{background-color:#ffffff0d;border-color:#ffffff26;color:#fff}.user-icon{width:20px;height:20px}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:.5rem;min-width:180px;box-shadow:0 4px 16px #0000001a;overflow:hidden}.dropdown-item{width:100%;padding:.75rem 1rem;background:none;border:none;color:#ffffffe6;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.75rem;font-size:.9rem;transition:background-color .2s ease;font-family:"Source Sans 3",sans-serif}.dropdown-item:hover{background-color:#ffffff0d}.dropdown-item+.dropdown-item{border-top:1px solid rgba(255,255,255,.1)}.dropdown-icon{width:18px;height:18px;color:#fff9}.layout-body{flex:1;display:flex;position:relative}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:3rem 2rem 4rem}.main-content-full{max-width:none;padding:1rem 2rem 2rem}@media (max-width: 768px){.nav-content{flex-wrap:wrap;height:auto;padding:.75rem 0;gap:1rem}.nav-cards{order:3;width:100%;justify-content:space-between;gap:.5rem}.nav-card{flex:1;font-size:.9rem;padding:.5rem .9rem}.main-content{width:100%;padding:2.5rem 1.25rem 3rem}}.landing-dark-root{min-height:100vh;background-color:#0f1115;display:flex;align-items:center;justify-content:center;padding:2rem;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;animation:fadeIn .4s ease-out}.landing-container{width:100%;max-width:1200px;display:grid;grid-template-columns:1fr 1fr;gap:0;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:1rem;overflow:hidden}.landing-form-panel{background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:3rem 3.5rem;display:flex;flex-direction:column;min-height:600px;position:relative}.landing-form-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:2.5rem}.landing-form-logo img{width:40px;height:40px}.landing-form-logo span{font-size:1.25rem;font-weight:700;color:#fff}.landing-form-content{flex:1;display:flex;flex-direction:column}.landing-form-title{font-size:1.875rem;font-weight:600;color:#fff;margin:0 0 .5rem;letter-spacing:-.02em;line-height:1.2}.landing-form-subtitle{font-size:.875rem;color:#9ca3af;margin:0 0 2.5rem;line-height:1.5}.landing-form{display:flex;flex-direction:column;gap:1.25rem;flex:1}.landing-form-label{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;font-weight:500;color:#ffffffe6}.landing-form-input{padding:.75rem 1rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);font-size:.9375rem;color:#fff;background-color:#ffffff0d;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}select.landing-form-input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23FFFFFF' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}select.landing-form-input option{background-color:#1a1c20;color:#fff;padding:.5rem}.landing-form-input::placeholder{color:#ffffff80}.landing-form-input:focus{outline:none;border-color:#fff3;background-color:#ffffff14}.landing-form-password-wrapper{position:relative;display:flex;align-items:center}.landing-form-password-wrapper .landing-form-input{padding-right:3rem;width:100%}.landing-form-password-toggle{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;color:#fff9;display:flex;align-items:center;justify-content:center;padding:.25rem;transition:color .2s ease}.landing-form-password-toggle:hover{color:#ffffffe6}.landing-form-submit{padding:.75rem 1.5rem;border-radius:.5rem;background-color:transparent;color:#fff;font-size:.9375rem;font-weight:500;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s ease;margin-top:.5rem;font-family:"Source Sans 3",sans-serif}.landing-form-submit:hover{background-color:#ffffff0d;border-color:#ffffff26}.landing-form-divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:#ffffff80;font-size:.8125rem}.landing-form-divider:before,.landing-form-divider:after{content:"";flex:1;border-bottom:1px solid rgba(255,255,255,.1)}.landing-form-divider span{padding:0 1rem}.landing-form-social{display:flex;gap:.75rem;justify-content:center}.landing-social-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);background-color:transparent;color:#ffffffe6;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.landing-social-btn:hover{background-color:#ffffff0d;border-color:#ffffff26}.landing-form-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:2rem;font-size:.8125rem;color:#9ca3af}.landing-form-link{color:#3b82f6;text-decoration:none;background:none;border:none;cursor:pointer;font-size:inherit;font-family:inherit;padding:0;transition:color .2s ease}.landing-form-link:hover{color:#60a5fa;text-decoration:underline}.landing-image-panel{position:relative;min-height:600px;overflow:hidden}.landing-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}@media (max-width: 968px){.landing-container{grid-template-columns:1fr;max-width:600px}.landing-image-panel{display:none}.landing-form-panel{padding:2.5rem 2rem}}@media (max-width: 640px){.landing-dark-root{padding:1rem}.landing-form-panel{padding:2rem 1.5rem}.landing-form-title{font-size:1.5rem}.landing-form-social{flex-direction:column}.landing-form-footer{flex-direction:column;gap:.75rem;align-items:flex-start}}:root{--discover-bg: #0F1115;--discover-surface: rgba(255, 255, 255, .03);--discover-border: rgba(255, 255, 255, .1);--discover-text: #FFFFFF;--discover-text-secondary: #9CA3AF;--discover-accent: #3B82F6;--discover-accent-hover: #60A5FA;--discover-success: #22C55E;--discover-danger: #EF4444}.discover-page{min-height:100vh;background-color:var(--discover-bg);color:var(--discover-text);font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}.discover-nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;position:fixed;top:0;left:0;right:0;z-index:100;background:#0f1115e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--discover-border)}.discover-nav-logo{display:flex;align-items:center;gap:.75rem}.discover-nav-logo img{width:32px;height:32px}.discover-nav-logo span{font-size:1.25rem;font-weight:700;color:var(--discover-text)}.discover-nav-links{display:flex;gap:2rem}.discover-nav-link{background:none;border:none;color:var(--discover-text-secondary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:color .2s}.discover-nav-link:hover{color:var(--discover-text)}.discover-nav-actions{display:flex;gap:1rem}.discover-nav-btn-secondary{padding:.5rem 1rem;background:transparent;border:1px solid var(--discover-border);border-radius:6px;color:var(--discover-text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.discover-nav-btn-secondary:hover{background:#ffffff0d;border-color:#fff3}.discover-nav-btn-primary{padding:.5rem 1.25rem;background:var(--discover-accent);border:none;border-radius:6px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.discover-nav-btn-primary:hover{background:var(--discover-accent-hover)}.discover-hero{display:grid;grid-template-columns:1fr 1fr;gap:4rem;min-height:100vh;padding:8rem 4rem 4rem;align-items:center;max-width:1400px;margin:0 auto}.discover-hero-content{max-width:560px}.discover-hero-title{font-size:3.5rem;font-weight:700;line-height:1.1;margin:0 0 1.5rem;letter-spacing:-.02em;background:linear-gradient(135deg,#fff,#9ca3af);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.discover-hero-subtitle{font-size:1.25rem;color:var(--discover-text-secondary);line-height:1.6;margin:0 0 2.5rem}.discover-hero-ctas{display:flex;gap:1rem}.discover-hero-btn-primary{display:flex;align-items:center;gap:.5rem;padding:1rem 1.75rem;background:var(--discover-accent);border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.discover-hero-btn-primary:hover{background:var(--discover-accent-hover);transform:translateY(-2px)}.discover-hero-btn-secondary{padding:1rem 1.75rem;background:transparent;border:1px solid var(--discover-border);border-radius:8px;color:var(--discover-text);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.discover-hero-btn-secondary:hover{background:#ffffff0d;border-color:#fff3}.discover-hero-visual{display:flex;justify-content:center;align-items:center}.discover-hero-chart{width:100%;max-width:500px;height:350px;background:var(--discover-surface);border:1px solid var(--discover-border);border-radius:16px;padding:2rem;position:relative;overflow:hidden}.fan-chart-container{position:absolute;top:2rem;right:2rem;bottom:2rem;left:2rem;display:flex;flex-direction:column;justify-content:center}.fan-chart-band{height:30px;border-radius:4px;margin:4px 0;animation:expandBand 2s ease-out forwards;transform-origin:left}.band-95{background:linear-gradient(90deg,#22c55e1a,#22c55e4d)}.band-75{background:linear-gradient(90deg,#22c55e33,#22c55e66)}.band-50{background:linear-gradient(90deg,#22c55e4d,#22c55e80)}.fan-chart-line.median-line{height:3px;background:var(--discover-success);border-radius:2px;margin:8px 0}@keyframes expandBand{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.chart-label-container{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1.5rem}.chart-label{font-size:.75rem;color:var(--discover-text-secondary);white-space:nowrap}.discover-section{padding:6rem 4rem;max-width:1400px;margin:0 auto}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.02em}.section-header p{font-size:1.125rem;color:var(--discover-text-secondary);margin:0}.discover-templates{background:var(--discover-surface)}.templates-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.template-card{background:var(--card-color, #FF6B6B);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all .3s;cursor:pointer;color:#1a1a1a;min-height:360px}.template-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000004d}.template-card-header{display:flex;justify-content:flex-start}.template-tag{padding:.375rem .75rem;background:#0003;border-radius:4px;font-size:.75rem;font-weight:600;color:#000c}.template-name{font-size:1.375rem;font-weight:700;margin:0;color:#000}.template-description{font-size:.875rem;color:#000000b3;margin:0;line-height:1.5;flex:1}.template-meta{display:flex;flex-direction:column;gap:.5rem}.template-meta-item{display:flex;flex-direction:column;gap:.125rem}.meta-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:#00000080}.meta-value{font-size:.875rem;font-weight:600;color:#000}.template-assets{display:flex;flex-direction:column;gap:.375rem}.asset-badges{display:flex;flex-wrap:wrap;gap:.375rem}.asset-badge{padding:.25rem .5rem;background:#00000026;border-radius:4px;font-size:.75rem;font-weight:600;color:#000}.template-cta{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:#000000e6;border:none;border-radius:8px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:auto}.template-cta:hover{background:#000}.discover-scenarios{background:var(--discover-bg)}.scenarios-content{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:center}.scenarios-demo{background:var(--discover-surface);border:1px solid var(--discover-border);border-radius:16px;padding:2rem}.demo-chart-container{margin-bottom:1.5rem}.demo-chart{position:relative;height:200px;margin-bottom:1rem}.demo-fan-chart,.fan-svg{width:100%;height:100%}.fan-band{animation:drawPath 2s ease-out forwards;stroke-dasharray:500;stroke-dashoffset:500}.median-path{animation:drawPath 2s ease-out .5s forwards;stroke-dasharray:500;stroke-dashoffset:500}@keyframes drawPath{to{stroke-dashoffset:0}}.demo-chart-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--discover-text-secondary)}.chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;position:absolute;left:0;top:0;bottom:0;padding:.5rem 0}.chart-x-axis{display:flex;justify-content:space-between;width:100%}.demo-scenario-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#ef4444;font-size:.875rem;font-weight:500}.demo-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.metric-card{background:#ffffff08;border:1px solid var(--discover-border);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.375rem}.metric-label{font-size:.75rem;color:var(--discover-text-secondary)}.metric-value{font-size:1.25rem;font-weight:700;font-family:Monaco,monospace}.metric-value.positive{color:var(--discover-success)}.metric-value.negative{color:var(--discover-danger)}.scenarios-info h3{font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.constraint-list{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-direction:column;gap:.75rem}.constraint-list li{display:flex;align-items:center;gap:.75rem;font-size:1rem;color:var(--discover-text)}.constraint-icon{font-size:1.25rem}.scenarios-description{font-size:.9375rem;color:var(--discover-text-secondary);line-height:1.6;margin:0 0 1.5rem}.scenarios-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:var(--discover-accent);border:none;border-radius:8px;color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.scenarios-cta:hover{background:var(--discover-accent-hover);transform:translateY(-2px)}.discover-assets{background:var(--discover-surface)}.assets-content{max-width:1000px;margin:0 auto}.assets-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.asset-tab{padding:.5rem 1rem;background:transparent;border:1px solid var(--discover-border);border-radius:6px;color:var(--discover-text-secondary);font-size:.875rem;cursor:pointer;transition:all .2s}.asset-tab:hover{background:#ffffff0d}.asset-tab.active{background:#ffffff1a;color:var(--discover-text);border-color:#fff3}.assets-table{background:#0000004d;border:1px solid var(--discover-border);border-radius:12px;overflow:hidden;margin-bottom:1.5rem}.assets-table-header{display:grid;grid-template-columns:80px 1fr 100px 120px 100px 80px;padding:1rem 1.5rem;background:#ffffff08;border-bottom:1px solid var(--discover-border);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--discover-text-secondary)}.assets-table-row{display:grid;grid-template-columns:80px 1fr 100px 120px 100px 80px;padding:1rem 1.5rem;border-bottom:1px solid var(--discover-border);align-items:center;transition:background .2s}.assets-table-row:last-child{border-bottom:none}.assets-table-row:hover{background:#ffffff05}.ticker-badge{display:inline-block;padding:.25rem .5rem;background:#ffffff1a;border-radius:4px;font-size:.8125rem;font-weight:600}.col-name{font-size:.875rem;color:var(--discover-text-secondary)}.type-badge{display:inline-block;padding:.25rem .5rem;background:transparent;border:1px solid;border-radius:4px;font-size:.75rem;font-weight:500}.col-corr,.col-return{font-family:Monaco,monospace;font-size:.875rem}.col-return.positive{color:var(--discover-success)}.col-return.negative{color:var(--discover-danger)}.view-btn{padding:.375rem .75rem;background:var(--discover-accent);border:none;border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.view-btn:hover{background:var(--discover-accent-hover)}.assets-browse-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:1px solid var(--discover-border);border-radius:8px;color:var(--discover-text);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s}.assets-browse-btn:hover{background:#ffffff0d;border-color:#fff3}.discover-metrics{background:var(--discover-bg);text-align:center}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:3rem}.metric-explainer{background:var(--discover-surface);border:1px solid var(--discover-border);border-radius:12px;padding:2rem;text-align:center}.metric-icon{font-size:2.5rem;margin-bottom:1rem}.metric-explainer h4{font-size:1.125rem;font-weight:600;margin:0 0 .75rem}.metric-explainer p{font-size:.875rem;color:var(--discover-text-secondary);line-height:1.5;margin:0}.metrics-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:var(--discover-accent);border:none;border-radius:8px;color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.metrics-cta:hover{background:var(--discover-accent-hover);transform:translateY(-2px)}.discover-how-it-works{background:var(--discover-surface)}.steps-container{display:flex;align-items:flex-start;justify-content:center;gap:0}.step{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:200px}.step-number{width:48px;height:48px;background:var(--discover-accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.step-content h4{font-size:1rem;font-weight:600;margin:0 0 .5rem}.step-content p{font-size:.8125rem;color:var(--discover-text-secondary);line-height:1.5;margin:0}.step-connector{display:flex;align-items:center;padding-top:1rem;color:var(--discover-text-secondary)}.discover-cta-section{background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);border-top:1px solid var(--discover-border);border-bottom:1px solid var(--discover-border);text-align:center;padding:5rem 4rem}.cta-content h2{font-size:2.25rem;font-weight:700;margin:0 0 1rem}.cta-content p{font-size:1.125rem;color:var(--discover-text-secondary);margin:0 0 2rem}.cta-buttons{display:flex;gap:1rem;justify-content:center}.cta-btn-primary{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:var(--discover-accent);border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.cta-btn-primary:hover{background:var(--discover-accent-hover);transform:translateY(-2px)}.cta-btn-secondary{padding:1rem 2rem;background:transparent;border:1px solid var(--discover-border);border-radius:8px;color:var(--discover-text);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.cta-btn-secondary:hover{background:#ffffff0d;border-color:#fff3}.discover-footer{padding:3rem 4rem;background:var(--discover-bg);text-align:center}.footer-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.footer-logo{display:flex;align-items:center;gap:.5rem}.footer-logo img{width:28px;height:28px}.footer-logo span{font-size:1.125rem;font-weight:600}.footer-tagline{font-size:.875rem;color:var(--discover-text-secondary);margin:0}.footer-copyright{font-size:.75rem;color:var(--discover-text-secondary);margin:0;opacity:.7}@media (max-width: 1200px){.templates-grid,.metrics-grid{grid-template-columns:repeat(2,1fr)}.steps-container{flex-wrap:wrap;gap:2rem}.step-connector{display:none}}@media (max-width: 968px){.discover-nav{padding:1rem 2rem}.discover-nav-links{display:none}.discover-hero{grid-template-columns:1fr;padding:7rem 2rem 4rem;text-align:center}.discover-hero-content{max-width:100%}.discover-hero-title{font-size:2.5rem}.discover-hero-ctas{justify-content:center}.discover-hero-visual{order:-1}.discover-section{padding:4rem 2rem}.scenarios-content{grid-template-columns:1fr;gap:3rem}.assets-table-header,.assets-table-row{grid-template-columns:70px 1fr 80px}.col-name,.col-corr,.col-return{display:none}}@media (max-width: 640px){.templates-grid,.metrics-grid{grid-template-columns:1fr}.discover-hero-ctas,.cta-buttons{flex-direction:column}.demo-metrics{grid-template-columns:1fr}}.ticker-search,.ticker-search-input-wrapper{position:relative;width:100%}.ticker-search-input{width:100%;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:#ffffff0d;color:#fff;font-size:.9375rem;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.ticker-search-input::placeholder{color:#ffffff80}.ticker-search-input:focus{outline:none;border-color:#fff3;background-color:#ffffff14}.ticker-search-spinner{position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.1);border-top-color:#fff9;border-radius:50%;animation:spin .6s linear infinite}.ticker-search-dropdown{position:absolute;top:calc(100% + .5rem);left:0;right:0;background-color:#0f1115f2;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.2);border-radius:.5rem;max-height:320px;overflow-y:auto;box-shadow:0 8px 32px #0006;z-index:20}.ticker-search-item{padding:.85rem 1rem;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid rgba(255,255,255,.1)}.ticker-search-item:last-child{border-bottom:none}.ticker-search-item:hover{background-color:#fff3}.ticker-search-item-main{display:flex;align-items:center;gap:.75rem;margin-bottom:.3rem}.ticker-symbol{font-weight:600;color:#fff;font-size:.9375rem;min-width:60px}.ticker-name{color:#fff;font-size:.875rem;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticker-search-item-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.ticker-type{color:#fff;background-color:#fff3;padding:.15rem .45rem;border-radius:.375rem}.ticker-exchange{color:#fffc}.ticker-search-no-results{padding:1rem;text-align:center;color:#ffffffb3;font-size:.875rem}.loading-state,.error-state{padding:2rem;text-align:center;color:#9ca3af}.error-state{color:#ef4444}.error-state p{margin-bottom:1rem}.weight-hint{font-size:.75rem;color:#6b7280;margin-left:.5rem}.portfolio-form-container{background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:2rem;display:flex;flex-direction:column;gap:2.5rem;animation:fadeIn .4s ease-out}.portfolio-form-header{display:flex;flex-direction:column;gap:.5rem}.portfolio-form-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;position:relative}.portfolio-form-title{font-size:1.5rem;font-weight:600;color:#fff;margin:0;letter-spacing:-.02em;line-height:1.2}.portfolio-form-subtitle{font-size:.875rem;color:#9ca3af;margin:.5rem 0 0;line-height:1.5}.portfolio-form-model-info{font-size:.875rem;color:#9ca3af;margin:.25rem 0 0;line-height:1.5}.portfolio-form-popup{position:relative;flex-shrink:0}.portfolio-form-popup-content{background-color:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:.5rem;padding:.75rem 1rem;font-size:.8125rem;color:#ffd700cc;white-space:nowrap;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 6px #0000001a}.portfolio-form{display:flex;flex-direction:column;gap:2rem}.form-section{display:flex;flex-direction:column;gap:.75rem}.text-input{padding:.75rem 1rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);font-size:.9375rem;color:#fff;background-color:#ffffff0d;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.text-input::placeholder{color:#ffffff80}.text-input:focus{outline:none;border-color:#fff3;background-color:#ffffff14}.portfolio-model-selector{width:100%;padding:.75rem 2.5rem .75rem 1rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:#ffffffe6;font-size:.9375rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px}.portfolio-model-selector:disabled{opacity:.5;cursor:not-allowed}.portfolio-model-selector option{background-color:#1a1a1a;color:#ffffffe6;padding:.5rem}.form-section-header{display:flex;justify-content:space-between;align-items:center}.form-label{font-size:.75rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em}.form-hint{font-size:.75rem;color:#6b7280}.portfolio-items{display:flex;flex-direction:column;gap:.75rem}.portfolio-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .2s ease}.portfolio-item:hover{background-color:#ffffff14;border-color:#ffffff26}.portfolio-item-info{display:flex;flex-direction:column;gap:.35rem}.portfolio-item-symbol{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#fff;font-size:.9375rem}.portfolio-item-type{font-size:.75rem;color:#fffc;background-color:#ffffff1a;border-radius:.375rem;padding:.2rem .5rem}.portfolio-item-name{font-size:.8125rem;color:#6b7280}.portfolio-item-weight{display:flex;align-items:center;gap:.5rem}.weight-input{width:94px;padding:.5rem .6rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;text-align:right;font-size:.9375rem;color:#fff;background-color:#ffffff0d;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.weight-input:focus{outline:none;border-color:#fff3;background-color:#ffffff14}.weight-unit{color:#6b7280;font-size:.8125rem}.remove-ticker-btn{border:none;background:none;color:#ffffff80;font-size:1.25rem;cursor:pointer;padding:.25rem .5rem;border-radius:.375rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.remove-ticker-btn:hover{background-color:#ffffff0d;color:#ef4444}.total-weight{font-size:.8125rem;color:#6b7280}.weight-valid{color:#16a34a;font-weight:600}.weight-invalid{color:#dc2626;font-weight:600}.capital-input-wrapper{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:.85rem;color:#6b7280;font-weight:600;font-size:.9375rem}.capital-input{width:100%;padding:.75rem 1rem .75rem 2.2rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;font-size:1rem;font-weight:600;color:#fff;background-color:#ffffff0d;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.capital-input:focus{outline:none;border-color:#fff3;background-color:#ffffff14}.form-error{color:#dc2626;font-size:.8125rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.btn-primary,.btn-secondary{padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid rgba(255,255,255,.1);transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.btn-primary{background-color:transparent;color:#fff}.btn-primary:hover{background-color:#ffffff0d;border-color:#ffffff26}.btn-secondary{background-color:transparent;color:#fffc}.btn-secondary:hover{background-color:#ffffff0d;border-color:#ffffff26;color:#fff}@media (max-width: 720px){.portfolio-form-container{padding:1.5rem;gap:2rem}.portfolio-item{flex-direction:column;align-items:flex-start;gap:.75rem}.portfolio-item-weight{width:100%}.weight-input{flex:1}.form-actions{flex-direction:column-reverse;align-items:stretch}}:root{--portfolio-bg: #0D0D0F;--portfolio-surface: #18181B;--portfolio-surface-elevated: #1F1F23;--portfolio-border: rgba(255, 255, 255, .08);--portfolio-border-hover: rgba(255, 255, 255, .15);--portfolio-text: #E4E4E7;--portfolio-text-secondary: #71717A;--portfolio-text-muted: #52525B;--portfolio-accent: #3B82F6;--portfolio-success: #10B981;--portfolio-warning: #F59E0B;--portfolio-danger: #EF4444}.portfolio-detail-page{min-height:calc(100vh - 80px);padding:.5rem 0;animation:fadeIn .3s ease-out;width:100%;color:var(--portfolio-text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.portfolio-detail-container{display:grid;grid-template-columns:1fr auto 380px;gap:0;width:100%;position:relative}.portfolio-detail-section{background:var(--portfolio-surface);border:1px solid var(--portfolio-border);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;overflow:hidden}.portfolio-detail-left{margin-right:0;min-width:0}.portfolio-detail-right{margin-left:0;min-width:320px;max-width:400px}.portfolio-metrics-section{grid-column:1 / -1;margin-top:1.5rem;background:var(--portfolio-surface);border:1px solid var(--portfolio-border);border-radius:8px;padding:1.5rem}.portfolio-metrics-row{display:flex;gap:1rem;flex-wrap:wrap}.portfolio-metric-card{flex:1 1 0;min-width:180px;background:var(--portfolio-surface-elevated);border-radius:8px;padding:1rem 1.25rem;border:1px solid var(--portfolio-border);display:flex;flex-direction:column;gap:.35rem}.portfolio-metric-card .metric-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.08em;color:var(--portfolio-text-muted);font-weight:500}.portfolio-metric-card .metric-value{font-size:1.125rem;font-weight:600;color:var(--portfolio-text)}.portfolio-metric-card-add{align-items:center;justify-content:center;text-align:center;gap:.4rem;border-style:dashed;border-color:#60a5fab3}.metric-add-btn{width:28px;height:28px;border-radius:999px;border:1px solid rgba(96,165,250,.9);background-color:transparent;color:#e5e7eb;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.metric-add-label{font-size:.9rem;font-weight:500;color:#e5e7eb}.portfolio-metrics-customize-row{margin:0}.portfolio-metrics-customize-card{background-color:#0f172ae6;border-radius:.75rem;border:1px dashed rgba(96,165,250,.6);padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;max-width:360px}.customize-header{display:flex;align-items:center;gap:.6rem}.customize-plus-btn{width:26px;height:26px;border-radius:999px;border:1px solid rgba(96,165,250,.8);background-color:transparent;color:#e5e7eb;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.customize-title{font-size:.95rem;font-weight:500;color:#e5e7eb}.customize-dropdown{margin-left:2.2rem;display:flex;flex-direction:column;gap:.35rem}.customize-dropdown-item{background-color:#111827e6;border-radius:.5rem;border:1px solid rgba(31,41,55,1);padding:.35rem .6rem;font-size:.85rem;color:#e5e7ebe6;text-align:left;cursor:default}.portfolio-detail-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;margin-bottom:1rem;border-bottom:1px solid var(--portfolio-border)}.portfolio-detail-header-left{display:flex;align-items:center;gap:1.5rem}.portfolio-detail-header h1{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--portfolio-text-secondary)}.portfolio-name-title{font-size:1.125rem;font-weight:500;color:var(--portfolio-text);margin:0}.portfolio-detail-header-right{display:flex;align-items:center;gap:.5rem}.portfolio-detail-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--portfolio-border);border-radius:6px;background:transparent;color:var(--portfolio-text-secondary);cursor:pointer;transition:all .15s ease}.portfolio-detail-icon-btn:hover{background:var(--portfolio-surface-elevated);border-color:var(--portfolio-border-hover);color:var(--portfolio-text)}.portfolio-detail-tabs{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.portfolio-detail-view-modes{display:flex;flex-wrap:wrap;gap:.375rem;align-items:center;padding:.25rem;background:#ffffff08;border-radius:.5rem;border:1px solid rgba(255,255,255,.06)}.portfolio-detail-view-mode-btn{padding:.5rem 1rem;border:none;border-radius:.375rem;background-color:transparent;color:#fff9;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:Inter,system-ui,-apple-system,sans-serif}.portfolio-detail-view-mode-btn:hover{background-color:#ffffff0d;color:#ffffffe6}.portfolio-detail-view-mode-btn.active{background-color:#3b82f6;color:#fff;font-weight:500}.portfolio-detail-tab{padding:.4rem .75rem;border:1px solid transparent;border-radius:.5rem;background-color:transparent;color:#ffffffb3;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;font-family:"Source Sans 3",sans-serif}.portfolio-detail-tab:after{content:"";position:absolute;bottom:-.25rem;left:.75rem;right:.75rem;height:2px;background-color:#fff;border-radius:2px;transform:scaleX(0);transition:transform .2s ease}.portfolio-detail-tab:hover{color:#ffffffe6}.portfolio-detail-tab.active{color:#fff}.portfolio-detail-tab.active:after{transform:scaleX(1)}.portfolio-detail-tab-add{padding:.4rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:transparent;color:#fffc;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.35rem;font-family:"Source Sans 3",sans-serif}.portfolio-detail-tab-add:hover{background-color:#ffffff0d;border-color:#ffffff26;color:#fff}.portfolio-detail-tab-show-more{padding:.4rem .75rem;border:none;background:none;color:#fff9;font-size:.8125rem;font-weight:500;cursor:pointer;transition:color .2s ease;font-family:"Source Sans 3",sans-serif}.portfolio-detail-tab-show-more:hover{color:#ffffffe6}.portfolio-detail-options{display:flex;gap:.75rem;align-items:center}.portfolio-detail-view-toggle{display:flex;gap:.5rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;padding:.25rem;background-color:#ffffff08}.portfolio-detail-view-btn{padding:.4rem .75rem;border:none;border-radius:.375rem;background-color:transparent;color:#ffffffb3;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.portfolio-detail-view-btn:hover{color:#ffffffe6;background-color:#ffffff0d}.portfolio-detail-view-btn.active{background-color:#ffffff1a;color:#fff}.portfolio-detail-option-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:transparent;color:#fffc;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.portfolio-detail-option-btn:hover:not(:disabled){background-color:#ffffff0d;border-color:#ffffff26;color:#fff}.portfolio-detail-option-btn:disabled{opacity:.5;cursor:not-allowed}.portfolio-detail-add-benchmark{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:transparent;color:#fffc;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-left:auto;font-family:"Source Sans 3",sans-serif}.portfolio-detail-add-benchmark:hover{background-color:#ffffff0d;border-color:#ffffff26;color:#fff}.portfolio-detail-value{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.portfolio-detail-value-amount{font-size:2.75rem;font-weight:600;letter-spacing:-.03em;color:var(--portfolio-text);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.1}.portfolio-detail-value-amount.positive{color:var(--portfolio-success)}.portfolio-detail-value-amount.negative{color:var(--portfolio-danger)}.portfolio-detail-value-change{display:flex;align-items:center;gap:.5rem;font-size:1.0625rem;font-weight:600;font-family:Inter,system-ui,-apple-system,sans-serif}.portfolio-detail-value-change.positive{color:var(--portfolio-success)}.portfolio-detail-value-change.negative{color:var(--portfolio-danger)}.portfolio-detail-timeframes{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.portfolio-detail-timeframes-left{display:flex;gap:.5rem;flex-wrap:wrap}.portfolio-detail-asset-overlay-wrapper{display:flex;align-items:center;gap:.75rem}.portfolio-asset-chips{display:flex;flex-wrap:wrap;gap:.5rem}.portfolio-asset-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .5rem .35rem .75rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:1rem;font-size:.75rem;font-weight:500;color:#8b5cf6;font-family:Inter,system-ui,sans-serif}.portfolio-asset-chip-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;border-radius:50%;background:#8b5cf633;color:#8b5cf6;font-size:14px;line-height:1;cursor:pointer;transition:all .15s ease}.portfolio-asset-chip-remove:hover{background:#8b5cf666;color:#fff}.portfolio-add-asset-wrapper{position:relative}.portfolio-add-asset-select{background:transparent;border:1px dashed rgba(255,255,255,.2);border-radius:.375rem;padding:.4rem .75rem;color:#fff9;font-size:.8125rem;font-weight:500;cursor:pointer;font-family:Inter,system-ui,sans-serif;transition:all .15s ease;min-width:100px}.portfolio-add-asset-select:hover{border-color:#ffffff4d;color:#fffc}.portfolio-add-asset-select:focus{outline:none;border-color:#3b82f680;border-style:solid}.portfolio-add-asset-select option{background:#1f1f23;color:#e4e4e7}.portfolio-detail-timeframe{padding:.4rem .85rem;border:1px solid rgba(255,255,255,.08);border-radius:.375rem;background-color:transparent;color:#ffffff80;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:Inter,system-ui,-apple-system,sans-serif}.portfolio-detail-timeframe:hover{background-color:#ffffff0d;border-color:#ffffff1f;color:#ffffffe6}.portfolio-detail-timeframe.active{background-color:#ffffff1a;border-color:#fff3;color:#fff;font-weight:500}.portfolio-detail-chart{position:relative;min-height:320px;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;background:linear-gradient(180deg,#0f172a99,#0f172af2);padding:1.25rem;box-shadow:0 4px 24px #00000026}.portfolio-detail-chart-placeholder{color:#ffffff80;font-size:.875rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:280px}.portfolio-detail-table-container{width:100%;overflow-x:auto;border-radius:.75rem;background:#0f172a99;border:1px solid rgba(255,255,255,.08)}.portfolio-detail-table-placeholder{padding:2rem;text-align:center;color:#fff9}.positions-table-wrapper{width:100%;overflow-x:auto}.positions-table{width:100%;border-collapse:collapse;font-size:.875rem;font-family:Inter,system-ui,-apple-system,sans-serif}.positions-table thead{background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.1)}.positions-table th{padding:1rem 1.25rem;text-align:left;font-weight:500;color:#fff9;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.positions-table th:not(:first-child){text-align:right}.positions-table td{padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.04);color:#ffffffe6;font-variant-numeric:tabular-nums}.positions-table td:not(:first-child){text-align:right}.positions-table tbody tr{transition:background-color .15s ease}.positions-table tbody tr:hover{background-color:#ffffff0a}.positions-table .asset-name{font-weight:500;color:#fff;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.positions-table .positive{color:#10b981;font-weight:500}.positions-table .negative{color:#ef4444;font-weight:500}.portfolio-detail-live-indicator{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.35rem;padding:.35rem .65rem;background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:1rem;font-size:.6875rem;font-weight:500;color:#10b981;letter-spacing:.02em}.live-dot{width:6px;height:6px;border-radius:50%;background-color:#10b981;animation:livePulse 1.5s ease-in-out infinite;box-shadow:0 0 6px #10b98180}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.portfolio-detail-allocation-chart{display:flex;align-items:center;justify-content:center;min-height:300px}.allocation-donut-chart-container{display:flex;gap:2rem;align-items:flex-start;width:100%;position:relative}.allocation-donut-chart{position:relative;width:200px;height:200px;flex-shrink:0}.donut-svg{width:100%;height:100%;transform:rotate(-90deg)}.allocation-chart-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:column;gap:.25rem}.allocation-chart-label{font-size:.75rem;color:#fff9}.allocation-chart-value{font-size:1.125rem;font-weight:600;color:#fff}.allocation-legend{flex:1;display:flex;flex-direction:column;gap:.75rem;min-width:200px}.legend-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:.5rem;transition:all .2s ease;cursor:pointer}.legend-item:hover,.legend-item.hovered{background-color:#ffffff0d}.legend-color{width:16px;height:16px;border-radius:4px;flex-shrink:0}.legend-text{flex:1;display:flex;flex-direction:column;gap:.25rem}.legend-label{font-size:.875rem;font-weight:500;color:#fff}.legend-value{font-size:.75rem;color:#fff9}.allocation-tooltip{background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);border-radius:.5rem;padding:.75rem 1rem;pointer-events:none;z-index:100;text-align:center;min-width:140px;box-shadow:0 4px 12px #0000004d;white-space:nowrap}.tooltip-label{font-size:.875rem;font-weight:600;color:#fff;margin-bottom:.25rem}.tooltip-value{font-size:1rem;font-weight:600;color:#60a5fa;margin-bottom:.25rem}.tooltip-percentage{font-size:.875rem;color:#fffc}.portfolio-detail-resizer{position:relative;width:1.5rem;cursor:col-resize;display:flex;align-items:center;justify-content:center;z-index:10;margin:0 -.75rem}.resizer-handle{width:2px;height:100%;background-color:#ffffff1a;border-radius:2px;transition:background-color .2s ease}.portfolio-detail-resizer:hover .resizer-handle,.portfolio-detail-resizer:active .resizer-handle{background-color:#ffffff4d;width:3px}.portfolio-detail-resizer:before{content:"";position:absolute;left:-.5rem;right:-.5rem;top:0;bottom:0;cursor:col-resize}.portfolio-detail-efficient-frontier{width:100%;max-width:800px;margin:0;padding:1.5rem 2rem;background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;display:flex;flex-direction:column;gap:1.5rem}.efficient-frontier-header h1{margin:0;font-size:1.25rem;font-weight:600;color:#fff;letter-spacing:-.01em}.efficient-frontier-content{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.efficient-frontier-chart{min-height:300px;max-width:400px;margin:0 auto;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:#ffffff05;padding:1.5rem;display:flex;align-items:center;justify-content:center}.efficient-frontier-chart-placeholder{text-align:center;color:#ffffff80}.efficient-frontier-chart-placeholder p{margin:0;font-size:.875rem}.efficient-frontier-chart-placeholder .chart-subtitle{margin-top:.5rem;font-size:.75rem;color:#fff6}.efficient-frontier-metrics{display:flex;flex-direction:column;gap:1rem}.efficient-frontier-metrics-header h2{margin:0;font-size:.875rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em}.efficient-frontier-metrics-list{display:flex;flex-direction:column;gap:1rem}.metric-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:#ffffff05}.metric-label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:.05em}.metric-value{font-size:1.125rem;font-weight:600;color:#fff}.portfolio-detail-back-btn{display:flex;align-items:center;gap:.5rem;margin:2rem auto 0;padding:.5rem 1rem;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;background-color:transparent;color:#fffc;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:"Source Sans 3",sans-serif}.portfolio-detail-back-btn:hover{background-color:#ffffff0d;border-color:#ffffff26;color:#fff}@media (max-width: 1200px){.portfolio-detail-container{display:flex;flex-direction:column;gap:1rem}.portfolio-detail-resizer{display:none}.portfolio-detail-left,.portfolio-detail-right{margin:0;max-width:100%;min-width:0}.portfolio-metrics-section{margin-top:0}.portfolio-lower-row{grid-template-columns:1fr;margin:1.5rem 1rem 0}}@media (max-width: 768px){.portfolio-detail-container{padding:0 1rem;gap:1rem}.portfolio-detail-section{padding:1rem}.portfolio-detail-value-amount{font-size:1.5rem}.portfolio-detail-efficient-frontier{padding:0 1rem;margin:1rem 0 0}.efficient-frontier-content{grid-template-columns:1fr}.allocation-donut-chart-container{flex-direction:column;align-items:center;gap:1.5rem}.allocation-legend{width:100%;max-width:300px}}.error-text{color:#ef4444cc;font-size:.875rem}.portfolio-detail-value-change .error-text{font-size:.75rem}.portfolio-chart-container{width:100%;height:300px;position:relative;display:flex;flex-direction:column;cursor:crosshair}.portfolio-chart-container svg{width:100%;height:100%}.chart-tooltip{position:absolute;pointer-events:none;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);border-radius:.5rem;padding:.5rem .75rem;z-index:1000;white-space:nowrap;box-shadow:0 4px 12px #0000004d}.tooltip-date{font-size:.75rem;color:#ffffffb3;margin-bottom:.25rem}.tooltip-value{font-size:.875rem;font-weight:600;color:#3b82f6}.efficient-frontier-chart-container{width:100%;max-width:350px;height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto}.efficient-frontier-chart-container svg{width:100%;height:100%}.efficient-frontier-legend{display:flex;gap:20px;margin-top:15px;justify-content:center;flex-wrap:wrap}.efficient-frontier-legend .legend-item{display:flex;align-items:center;gap:8px;font-size:12px;color:#fffc}.portfolio-lower-row{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:stretch;margin:1.5rem 2rem 0}.portfolio-detail-efficient-frontier{height:100%;display:flex;flex-direction:column}.portfolio-suggestions-header-section{margin:2rem 1rem;display:flex;flex-direction:column;gap:.75rem}.portfolio-suggestions-section-title{margin:0;font-size:2.5rem;font-weight:700;color:#f9fafb;display:flex;align-items:center;gap:1rem;line-height:1.2}.portfolio-suggestions-logo{width:48px;height:48px;border-radius:12px;background-color:#0f172a99;border:1.5px solid rgba(96,165,250,.6);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px #3b82f64d}.portfolio-suggestions-logo img{width:32px;height:32px}.portfolio-suggestions-subtitle-header{margin:0;font-size:1.2rem;color:#e5e7ebcc;font-weight:400;line-height:1.5;padding-left:calc(48px + 1rem)}@media (max-width: 768px){.portfolio-suggestions-header-section{margin:1.5rem 1rem}.portfolio-suggestions-section-title{font-size:2rem;gap:.75rem}.portfolio-suggestions-logo{width:40px;height:40px}.portfolio-suggestions-logo img{width:28px;height:28px}.portfolio-suggestions-subtitle-header{font-size:1.05rem;padding-left:calc(40px + .75rem)}}.portfolio-suggestions-row{display:flex;gap:1.5rem;align-items:stretch;margin:1.5rem 1rem;flex-wrap:wrap;justify-content:center}@media (max-width: 1200px){.portfolio-suggestions-row{flex-direction:column}.portfolio-suggestion-card-glass{min-width:100%;max-width:100%}}@media (min-width: 1201px){.portfolio-suggestions-row{flex-direction:row}.portfolio-suggestion-card-glass{flex:1 1 calc(33.333% - 1rem);max-width:calc(33.333% - 1rem)}}.portfolio-suggestion-card-glass{flex:1 1 0;min-width:280px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.portfolio-suggestion-card-glass:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172abf}.scenario-card-grid{display:grid;grid-template-columns:92px 1fr;gap:0;border-radius:1.5rem;background:#0f172af5;border:1px solid rgba(55,65,81,.9);box-shadow:0 10px 24px #0f172ad9;overflow:hidden;min-height:320px}.scenario-card-strip{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:1.1rem .9rem 1.1rem 1rem;background:#111827;border-right:1px solid rgba(55,65,81,.9)}.scenario-strip-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:#9ca3afe6}.scenario-strip-index{font-size:1.45rem;font-weight:700;color:#f9fafb}.scenario-strip-severity-badge{margin-top:.4rem;padding:.1rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(248,113,113,.85);color:#fef2f2e6;background:radial-gradient(circle at top,rgba(248,113,113,.3),transparent)}.scenario-positive .scenario-strip-severity-badge{border-color:#34d399e6;color:#f0fdfaf2;background:radial-gradient(circle at top,rgba(52,211,153,.32),transparent)}.scenario-neutral .scenario-strip-severity-badge{border-color:#3b82f6e6;color:#eff6fff2;background:radial-gradient(circle at top,rgba(59,130,246,.32),transparent)}.scenario-card-main{padding:1.25rem 1.6rem 1.35rem;display:flex;flex-direction:column;gap:1rem}.scenario-row{display:flex;flex-direction:column;gap:.75rem}.scenario-row-bottom{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1.1rem}.scenario-title-block{display:flex;flex-direction:column;gap:.22rem}.scenario-impulse-dot{width:10px;height:10px;border-radius:999px;margin-bottom:.25rem}.scenario-title-text{font-size:1.02rem;font-weight:600;color:#e5e7eb}.scenario-macro-headline{font-size:.78rem;color:#d1d5dbcc;max-width:32rem}.scenario-shocks-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.3rem}.scenario-shock-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.22rem .55rem;border-radius:.45rem;background-color:#020617;border:1px solid rgba(148,163,184,.9);font-size:.7rem;font-weight:600;color:#f9fafb}.scenario-shock-chip-label{text-transform:uppercase;letter-spacing:.08em}.scenario-shock-chip-arrow{font-size:.8rem}.scenario-column-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3afe6;margin-bottom:.45rem}.scenario-impact-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}.scenario-impact-list li{display:flex;align-items:flex-start;gap:.35rem;font-size:.8rem;color:#e5e7ebf2}.scenario-impact-arrow{font-size:.75rem;margin-top:.05rem}.scenario-assets-column{display:flex;flex-direction:column;gap:.4rem}.scenario-asset-badges{display:flex;flex-wrap:wrap;gap:.3rem}.scenario-asset-badge{padding:.2rem .5rem;border-radius:999px;background:#0f172ae6;border:1px solid rgba(148,163,184,.8);font-size:.75rem;font-weight:600;color:#e5e7eb}.scenario-card-cta{margin-top:.85rem;align-self:flex-end;display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .9rem;border-radius:999px;border:1px solid rgba(59,130,246,.6);background:#0f172afa;color:#e5e7eb;font-size:.78rem;font-weight:600;cursor:pointer;box-shadow:0 6px 16px #0f172ad9;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.scenario-card-cta svg{stroke:currentColor}.scenario-card-cta:hover{transform:translateY(-2px);border-color:#60a5fae6;box-shadow:0 10px 22px #0f172ae6;background:#111827}.scenario-negative .scenario-card-strip{box-shadow:inset 3px 0 #f87171e6}.scenario-positive .scenario-card-strip{box-shadow:inset 3px 0 #34d399e6}.scenario-neutral .scenario-card-strip{box-shadow:inset 3px 0 #3b82f6e6}.portfolio-suggestions-cta-wrapper{display:flex;justify-content:center;margin:2rem 1rem 1rem}.portfolio-suggestions-cta{min-width:220px;padding:1rem 1.5rem;border-radius:1.5rem;background:linear-gradient(135deg,#0f172a73,#1e3a8a59);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1.5px solid rgba(59,130,246,.5);color:#f9fafb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;box-shadow:0 8px 32px #00000080,inset 0 1px #ffffff1a,inset 0 -1px #0003;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.portfolio-suggestions-cta:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(147,197,253,.5),transparent);pointer-events:none}.portfolio-suggestions-cta span{font-size:1rem;font-weight:600;text-align:center;line-height:1.2;color:#f9fafb;position:relative;z-index:1}.portfolio-suggestions-cta svg{position:relative;z-index:1;stroke:#f9fafb}.portfolio-suggestions-cta:hover{transform:translateY(-8px);box-shadow:0 20px 50px #3b82f666,inset 0 1px #ffffff26,inset 0 -1px #0000004d;border-color:#60a5fa99}.portfolio-chat-toggle{position:fixed;right:2rem;bottom:2rem;width:44px;height:44px;border-radius:999px;border:1px solid rgba(148,163,184,.6);background-color:#0f172af2;color:#e5e7eb;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 30px #0009;z-index:1200;transition:all .2s ease}.portfolio-chat-toggle:hover{background-color:#1e40aff2;border-color:#818cf8e6}.portfolio-chat-panel{position:fixed;right:1.5rem;bottom:1.5rem;width:360px;max-height:520px;display:flex;flex-direction:column;background-color:#0f172afa;border-radius:1rem;border:1px solid rgba(31,41,55,.9);box-shadow:0 20px 40px #000c;z-index:1300;overflow:hidden}.portfolio-chat-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgba(31,41,55,.9);background:radial-gradient(circle at top left,rgba(37,99,235,.3),transparent),#0f172a}.portfolio-chat-title{display:flex;align-items:center;gap:.75rem}.portfolio-chat-avatar{width:32px;height:32px;border-radius:8px;background-color:#111827;border:1px solid #1e3a8a;display:flex;align-items:center;justify-content:center;overflow:hidden}.portfolio-chat-avatar img{width:20px;height:20px}.portfolio-chat-title-text{display:flex;flex-direction:column;gap:.15rem}.portfolio-chat-title-main{font-size:.9rem;font-weight:600;color:#f9fafb}.portfolio-chat-title-sub{font-size:.75rem;color:#9ca3aff2}.portfolio-chat-close-btn{border:none;background:transparent;color:#94a3b8e6;cursor:pointer;padding:.25rem;border-radius:999px;transition:all .15s ease}.portfolio-chat-close-btn:hover{background-color:#1f2937e6;color:#e5e7eb}.portfolio-chat-messages{flex:1;overflow-y:auto;padding:.75rem 1rem .5rem}.portfolio-chat-messages-content{display:flex;flex-direction:column;gap:.5rem}.portfolio-chat-input-wrapper{border-top:1px solid rgba(31,41,55,.9);padding:.5rem .75rem;background-color:#0f172afa}@media (max-width: 768px){.portfolio-chat-panel{right:.75rem;left:.75rem;width:auto;max-height:60vh}.portfolio-chat-toggle{right:1.25rem;bottom:1.25rem}}.efficient-frontier-legend .legend-color{width:12px;height:12px;border-radius:50%;border:1px solid rgba(255,255,255,.3)}.portfolio-console-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--portfolio-surface);border:1px solid var(--portfolio-border);border-radius:8px;margin-bottom:1.5rem}.portfolio-console-title-section{display:flex;align-items:center;gap:1.5rem}.portfolio-console-title{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--portfolio-text-secondary);margin:0}.portfolio-name-badge{font-size:1rem;font-weight:500;color:var(--portfolio-text);padding:.35rem .75rem;background:var(--portfolio-surface-elevated);border:1px solid var(--portfolio-border);border-radius:4px}.portfolio-console-actions{display:flex;gap:.5rem}.portfolio-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--portfolio-border);border-radius:6px;background:transparent;color:var(--portfolio-text-secondary);cursor:pointer;transition:all .15s ease}.portfolio-icon-btn:hover{background:var(--portfolio-surface-elevated);border-color:var(--portfolio-border-hover);color:var(--portfolio-text)}.portfolio-main-content{background:var(--portfolio-surface);border:1px solid var(--portfolio-border);border-radius:8px;padding:1.5rem}.portfolio-controls-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.portfolio-view-tabs{display:flex;gap:.25rem;padding:.25rem;background:#ffffff08;border-radius:6px;border:1px solid var(--portfolio-border)}.portfolio-tab-btn{padding:.5rem 1rem;border:none;border-radius:4px;background:transparent;color:var(--portfolio-text-secondary);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.portfolio-tab-btn:hover:not(:disabled){color:var(--portfolio-text);background:#ffffff0d}.portfolio-tab-btn.active{background:var(--portfolio-accent);color:#fff}.portfolio-tab-btn:disabled{opacity:.4;cursor:not-allowed}.portfolio-benchmark-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid var(--portfolio-border);border-radius:6px;background:transparent;color:var(--portfolio-text);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.portfolio-benchmark-btn:hover{background:var(--portfolio-surface-elevated);border-color:var(--portfolio-border-hover)}.portfolio-value-section{margin-bottom:1.5rem}.portfolio-value-main{font-size:2.5rem;font-weight:600;letter-spacing:-.03em;color:var(--portfolio-text);line-height:1.1;margin-bottom:.35rem}.portfolio-value-loading,.portfolio-value-error{color:var(--portfolio-text-muted)}.portfolio-value-change{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600}.portfolio-value-change.positive{color:var(--portfolio-success)}.portfolio-value-change.negative{color:var(--portfolio-danger)}.portfolio-value-change-amount{font-weight:500;opacity:.9}.portfolio-timeframe-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.portfolio-timeframe-buttons{display:flex;gap:.375rem}.portfolio-timeframe-btn{padding:.4rem .85rem;border:1px solid var(--portfolio-border);border-radius:4px;background:transparent;color:var(--portfolio-text-muted);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit}.portfolio-timeframe-btn:hover{background:#ffffff0d;border-color:var(--portfolio-border-hover);color:var(--portfolio-text)}.portfolio-timeframe-btn.active{background:#ffffff1a;border-color:#fff3;color:#fff}.portfolio-asset-selector{display:flex;align-items:center;gap:.5rem}.portfolio-asset-label{font-size:.8125rem;color:var(--portfolio-text-muted);font-weight:500}.portfolio-asset-select{background:var(--portfolio-surface-elevated);border:1px solid var(--portfolio-border);color:var(--portfolio-text);padding:.5rem 2rem .5rem .75rem;border-radius:4px;font-size:.8125rem;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2371717A' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;min-width:160px;transition:all .15s ease}.portfolio-asset-select:hover{border-color:var(--portfolio-border-hover)}.portfolio-asset-select:focus{outline:none;border-color:var(--portfolio-accent)}.portfolio-chart-container{background:linear-gradient(180deg,#0f172a66,#0f172acc);border:1px solid var(--portfolio-border);border-radius:8px;padding:1.25rem;position:relative;min-height:320px}.portfolio-table-container{border:1px solid var(--portfolio-border);border-radius:8px;overflow:hidden}@media (max-width: 1024px){.portfolio-controls-row{flex-direction:column;align-items:flex-start;gap:1rem}.portfolio-timeframe-row{flex-direction:column;align-items:flex-start}}.template-portfolio-modal{max-width:600px;max-height:90vh;overflow-y:auto}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:linear-gradient(135deg,#1a1f2e,#2a2f3e);border-radius:12px;box-shadow:0 20px 60px #00000080;width:100%}.modal-header h2{margin:0;color:#fff;font-size:1.5rem}.modal-close{background:transparent;border:none;color:#9ca3af;font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover{color:#fff;background:#ffffff1a;border-radius:4px}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.form-section{margin-bottom:1.5rem}.form-label{display:block;color:#d1d5db;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.form-select,.form-input,.form-textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:.75rem;border-radius:6px;font-size:.95rem;transition:all .2s}.form-select:focus,.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;background:#0006}.form-hint{margin-top:.5rem;font-size:.85rem;color:#9ca3af}.error-banner{background:#ef444433;border:1px solid #EF4444;color:#fca5a5;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.assets-grid{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.asset-row{display:flex;justify-content:space-between;align-items:center;background:#0003;padding:.75rem 1rem;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.asset-info{display:flex;flex-direction:column;gap:.25rem}.asset-ticker{color:#60a5fa;font-weight:600;font-size:.95rem}.asset-name{color:#9ca3af;font-size:.8rem}.asset-weight{display:flex;align-items:center;gap:.5rem}.weight-input{width:80px;background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:.5rem;border-radius:4px;text-align:right;font-size:.9rem}.weight-input:focus{outline:none;border-color:#3b82f6}.weight-symbol{color:#9ca3af;font-size:.9rem}.total-weight{padding:.75rem 1rem;border-radius:6px;font-weight:600;text-align:right;font-size:.95rem}.total-weight.valid{background:#10b98133;border:1px solid #10B981;color:#10b981}.total-weight.invalid{background:#ef444433;border:1px solid #EF4444;color:#ef4444}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-secondary{background:transparent;border:1px solid rgba(255,255,255,.2);color:#d1d5db}.btn-secondary:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff4d}@media (max-width: 640px){.template-portfolio-modal{max-width:100%}.modal-header h2{font-size:1.25rem}.asset-row{flex-direction:column;align-items:flex-start;gap:.5rem}.asset-weight{width:100%;justify-content:space-between}.weight-input{flex:1}}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{background:var(--color-surface, #1a1a2e);border:1px solid var(--color-border, #2a2a4e);border-radius:12px;width:100%;max-width:400px;box-shadow:0 20px 60px #0006;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-modal-header{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--color-border, #2a2a4e)}.confirm-modal-header.danger svg{color:#ff6b6b}.confirm-modal-header.warning svg{color:#ffa726}.confirm-modal-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text, #fff)}.confirm-modal-body{padding:20px 24px}.confirm-modal-body p{margin:0;color:var(--color-text-secondary, #a0a0b0);line-height:1.5;white-space:pre-line}.confirm-modal-actions{display:flex;gap:12px;padding:16px 24px;border-top:1px solid var(--color-border, #2a2a4e);justify-content:flex-end}.confirm-modal-actions button{padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-cancel{background:transparent;border:1px solid var(--color-border, #2a2a4e);color:var(--color-text-secondary, #a0a0b0)}.btn-cancel:hover{background:var(--color-surface-hover, #2a2a4e);color:var(--color-text, #fff)}.btn-confirm{border:none}.btn-confirm.danger{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);color:#fff}.btn-confirm.danger:hover{background:linear-gradient(135deg,#ff5252,#e53935);transform:translateY(-1px)}.btn-confirm.warning{background:linear-gradient(135deg,#ffa726,#fb8c00);color:#fff}.btn-confirm.warning:hover{background:linear-gradient(135deg,#ffb74d,#ffa726)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.portfolio-page{min-height:calc(100vh - 80px);display:flex;justify-content:center;align-items:flex-start;padding:4rem 0;animation:fadeIn .4s ease-out}.portfolio-card{width:100%;max-width:720px;background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:2rem;display:flex;flex-direction:column;gap:3rem}.portfolio-actions-container{display:flex;flex-direction:column;gap:2rem}.portfolio-card-header h1{margin:0;font-size:1.5rem;font-weight:600;color:#fff;letter-spacing:-.02em;line-height:1.2}.portfolio-card-header p{margin:.5rem 0 0;font-size:.875rem;color:#9ca3af;line-height:1.5}.portfolio-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start;align-items:center}.portfolio-action{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid rgba(255,255,255,.1);background-color:transparent;color:#ffffffe6;font-family:"Source Sans 3",sans-serif}.portfolio-action:hover{background-color:#ffffff0d;border-color:#ffffff26}.portfolio-action-primary{color:#ffffffe6}.portfolio-action-secondary{color:#fffc}.portfolio-action-icon{width:18px;height:18px;stroke-width:2}.portfolio-saved{display:flex;flex-direction:column;gap:1.5rem}.portfolio-saved-header{display:flex;justify-content:space-between;align-items:center}.portfolio-saved-header h2{margin:0;font-size:.875rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.portfolio-saved-header span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:999px;background-color:#ffffff1a;color:#ffffffb3;font-size:.75rem;font-weight:600}.portfolio-saved-empty{border:1px dashed rgba(255,255,255,.1);border-radius:.75rem;padding:2rem;text-align:center;background-color:#ffffff05;color:#6b7280;font-size:.875rem}.portfolio-saved-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.portfolio-saved-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-radius:.75rem;border:1px solid rgba(255,255,255,.1);background-color:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .2s ease;cursor:pointer}.portfolio-saved-item:hover{transform:translateY(-2px);background-color:#ffffff1a;border-color:#ffffff26}.portfolio-saved-item h3{margin:0;font-size:.9375rem;font-weight:600;color:#fff;line-height:1.4}.portfolio-saved-item p{margin:.25rem 0 0;font-size:.75rem;color:#6b7280;line-height:1.4}.portfolio-saved-item span{font-size:.75rem;color:#6b7280;white-space:nowrap}.portfolio-form-wrapper{width:100%;max-width:640px;animation:fadeIn .4s ease-out}@media (max-width: 768px){.portfolio-page{padding:2.5rem 0}.portfolio-card{padding:1.5rem;gap:2.5rem}.portfolio-card-header h1{font-size:1.375rem}.portfolio-actions{flex-direction:column}.portfolio-action{width:100%;justify-content:center}}.market-conditions-selector{display:flex;flex-direction:column;gap:1.75rem}.selector-header h3{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.selector-description{margin:.25rem 0 0;color:#a1a1aa;font-size:.8125rem}.search-container{position:relative}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:.875rem;width:16px;height:16px;color:#52525b;pointer-events:none}.search-input{width:100%;padding:.625rem 1rem .625rem 2.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#e4e4e7;font-size:.875rem;transition:all .15s}.search-input:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.search-input::placeholder{color:#52525b}.search-spinner{position:absolute;right:.875rem;width:16px;height:16px;border:2px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.search-helper{margin:.5rem 0 0;font-size:.75rem;color:#52525b;font-style:normal}.search-results{position:absolute;top:calc(100% + .375rem);left:0;right:0;background:#18181b;border:1px solid rgba(255,255,255,.1);border-radius:4px;max-height:240px;overflow-y:auto;z-index:10;box-shadow:0 8px 24px #0006}.search-result-item{padding:.625rem .875rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .15s;border-bottom:1px solid rgba(255,255,255,.04)}.search-result-item:last-child{border-bottom:none}.search-result-item:hover:not(.selected){background:#3b82f61a}.search-result-item.selected{background:#22c55e14;cursor:default}.result-info{display:flex;align-items:center;gap:.5rem}.result-ticker{font-family:JetBrains Mono,Monaco,monospace;font-weight:500;color:#e4e4e7;font-size:.8125rem}.result-separator{color:#52525b;font-size:.75rem}.result-name{color:#71717a;font-size:.75rem}.result-badge{font-size:.625rem;font-weight:500;color:#22c55e;background:#22c55e26;padding:.125rem .375rem;border-radius:2px}.search-result-empty{padding:1rem;text-align:center;color:#52525b;font-size:.8125rem}.popular-features{display:flex;flex-direction:column;gap:.875rem;margin-top:1rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.06)}.popular-features h4{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.popular-grid{display:flex;flex-wrap:wrap;gap:.5rem}.popular-chip{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#e4e4e7;cursor:pointer;transition:all .15s;font-size:.8125rem}.popular-chip:hover:not(.selected):not(:disabled){background:#3b82f61a;border-color:#3b82f64d}.popular-chip.selected{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.popular-chip:disabled{cursor:default}.chip-content{display:flex;align-items:center;gap:.375rem}.chip-ticker{font-family:JetBrains Mono,Monaco,monospace;font-weight:500;font-size:.75rem}.chip-separator{color:#52525b;font-size:.625rem}.chip-name{color:#a1a1aa;font-size:.75rem}.chip-check{color:#22c55e;font-size:.875rem}.selected-features{display:flex;flex-direction:column;gap:.875rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.08)}.selected-features h4{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.selected-list{display:flex;flex-wrap:wrap;gap:.625rem}.selected-chip{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:4px}.selected-chip-info{display:flex;align-items:center;gap:.375rem}.selected-chip-ticker{font-family:JetBrains Mono,Monaco,monospace;font-weight:500;color:#93c5fd;font-size:.75rem}.selected-chip-separator{color:#52525b;font-size:.625rem}.selected-chip-name{color:#60a5fa;font-size:.75rem}.selected-chip-remove{background:none;border:none;color:#93c5fd;cursor:pointer;padding:0;font-size:1rem;line-height:1;opacity:.6;transition:opacity .15s}.selected-chip-remove:hover{opacity:1}.simulation-settings{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.simulation-settings h4{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.setting-item{display:flex;flex-direction:column;gap:.375rem}.setting-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;font-weight:500;color:#e4e4e7}.setting-note{font-size:.6875rem;font-weight:400;color:#52525b}.setting-input{padding:.625rem .875rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#e4e4e7;font-size:.875rem;font-family:JetBrains Mono,Monaco,monospace}.setting-input:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.setting-input::placeholder{color:#52525b}.setting-description{margin:0;font-size:.75rem;color:#52525b}.validation-message{padding:.75rem 1rem;border-radius:4px;font-size:.8125rem}.validation-message p{margin:0}.validation-message.info{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:#60a5fa}.validation-message.warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);color:#f59e0b}@media (max-width: 600px){.settings-grid{grid-template-columns:1fr}.popular-grid{flex-direction:column}.popular-chip{width:100%}}.metrics-tabs{display:flex;gap:.5rem;padding:.25rem;background:#0003;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.metrics-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;background:transparent;border:none;border-radius:4px;color:#71717a;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.metrics-tab:hover{color:#a1a1aa;background:#ffffff08}.metrics-tab.active{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.tab-icon{font-size:1rem}.tab-icon-svg{width:16px;height:16px;flex-shrink:0}.metrics-tab.active .tab-icon-svg{stroke:#60a5fa}.tab-content{animation:fadeIn .2s ease;padding:1.25rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.calculated-content{display:flex;flex-direction:column;gap:1.25rem}.calculated-intro{padding:.75rem 1rem;background:#3b82f614;border:1px solid rgba(59,130,246,.15);border-radius:6px}.calculated-intro p{margin:0;font-size:.8125rem;color:#a1a1aa}.calculated-step{padding:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px}.step-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.875rem}.step-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;color:#fff;font-size:.75rem;font-weight:600}.step-title{font-size:.8125rem;font-weight:500;color:#e4e4e7;letter-spacing:.02em}.base-feature-search{position:relative}.base-feature-search .search-input{padding-left:1rem}.selected-base-feature{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.base-feature-chip{padding:.375rem .75rem;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:4px;color:#60a5fa;font-size:.8125rem}.clear-base{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:4px;color:#ef4444;font-size:1rem;cursor:pointer;transition:all .15s}.clear-base:hover{background:#ef444433}.indicator-categories{display:flex;gap:.375rem;margin-bottom:.75rem;flex-wrap:wrap}.category-tab{padding:.375rem .75rem;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:#71717a;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s}.category-tab:hover{border-color:#fff3;color:#a1a1aa}.category-tab.active{background:#3b82f626;border-color:#3b82f64d;color:#60a5fa}.indicator-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem}.indicator-card{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;cursor:pointer;transition:all .15s;text-align:left}.indicator-card:hover{background:#ffffff0d;border-color:#ffffff26}.indicator-card.selected{background:#3b82f61a;border-color:#3b82f666}.indicator-name{font-size:.8125rem;font-weight:500;color:#e4e4e7}.indicator-desc{font-size:.6875rem;color:#71717a;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;overflow:hidden}.indicator-category{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:#52525b;margin-top:.25rem}.no-indicators{grid-column:1 / -1;padding:1.5rem;text-align:center;color:#52525b;font-size:.8125rem}.params-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.param-item{display:flex;flex-direction:column;gap:.375rem}.param-label{font-size:.75rem;font-weight:500;color:#a1a1aa}.param-input{padding:.5rem .75rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#e4e4e7;font-size:.8125rem;transition:all .15s}.param-input:focus{outline:none;border-color:#3b82f680}.add-calculated-section{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#10b9810d;border:1px solid rgba(16,185,129,.15);border-radius:8px}.preview-calculated{display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.preview-label{color:#71717a}.preview-value{color:#10b981;font-weight:500}.btn-add-calculated{padding:.625rem 1rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-add-calculated:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.calculated-badge{padding:.125rem .375rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:3px;color:#a78bfa;font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;margin-left:.25rem}.constraint-builder{display:flex;flex-direction:column;gap:1.5rem}.builder-header h3{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.builder-description{margin:.25rem 0 0;color:#a1a1aa;font-size:.8125rem}.constraint-form{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.form-section{display:flex;flex-direction:column;gap:.375rem;flex:1}.form-label{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#52525b}.form-note{margin:.25rem 0 0;font-size:.6875rem;color:#52525b;font-style:normal}.form-select,.form-input{padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#e4e4e7;font-size:.8125rem;transition:all .15s;font-family:inherit}.form-select:focus,.form-input:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.form-select option{background:#18181b;color:#e4e4e7;padding:.5rem}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.range-inputs{display:flex;align-items:center;gap:.75rem}.range-input{width:60px;padding:.375rem .5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#e4e4e7;font-size:.75rem;font-family:JetBrains Mono,Monaco,monospace;text-align:center}.range-input:focus{outline:none;border-color:#3b82f680}.range-label{color:#52525b;font-size:.6875rem}.btn-add-constraint{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem 1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:4px;color:#60a5fa;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s;margin-top:.5rem}.btn-add-constraint:hover:not(:disabled){background:#3b82f626;border-color:#3b82f680}.btn-add-constraint:disabled{opacity:.4;cursor:not-allowed}.constraints-list{display:flex;flex-direction:column;gap:.75rem}.constraints-list h4{margin:0 0 .5rem;font-size:.625rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.constraints-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.constraint-card{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:.875rem 1rem;transition:all .15s}.constraint-card:hover{background:#ffffff0a;border-color:#ffffff1f}.constraint-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.625rem;padding-bottom:.625rem;border-bottom:1px solid rgba(255,255,255,.06)}.constraint-feature{font-family:JetBrains Mono,Monaco,monospace;font-size:.75rem;font-weight:500;color:#e4e4e7}.constraint-remove{background:none;border:none;color:#52525b;font-size:1.25rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all .15s}.constraint-remove:hover{background:#ef44441a;color:#ef4444}.constraint-details{display:flex;flex-direction:column;gap:.375rem}.constraint-detail{display:flex;gap:.5rem;font-size:.75rem}.detail-label{color:#52525b;min-width:70px;font-size:.6875rem}.detail-value{color:#a1a1aa;font-family:JetBrains Mono,Monaco,monospace;font-size:.6875rem}.info-box p{margin:0;color:#93c5fd;font-size:.75rem;line-height:1.5}.info-box strong{color:#93c5fd;font-weight:600}@media (max-width: 768px){.form-row,.constraints-grid{grid-template-columns:1fr}}.success-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.success-modal{background:#131316;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:2rem;max-width:480px;width:90%;position:relative;text-align:center;box-shadow:0 24px 80px #0009}.success-icon{margin-bottom:1.25rem}.success-icon svg{width:48px;height:48px}.success-icon svg circle:first-child{fill:#22c55e26}.success-icon svg circle:last-of-type{fill:#22c55e}.success-modal h2{margin:0 0 1.25rem;font-size:1rem;font-weight:600;color:#e4e4e7}.success-content{text-align:left}.success-message{margin:0 0 1.25rem;font-size:.875rem;color:#a1a1aa;text-align:center}.success-message strong{color:#e4e4e7}.info-cards{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.info-card{display:flex;gap:.875rem;padding:.875rem 1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:6px}.info-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#3b82f626;border-radius:50%;font-size:.6875rem;font-weight:600;color:#93c5fd;flex-shrink:0}.info-text h4{margin:0 0 .25rem;font-size:.8125rem;font-weight:500;color:#e4e4e7}.info-text p{margin:0;font-size:.75rem;color:#71717a;line-height:1.4}.success-actions{display:flex;gap:.75rem;justify-content:center}.success-actions .btn-secondary{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#a1a1aa;padding:.625rem 1.25rem;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s}.success-actions .btn-secondary:hover{background:#ffffff0f;color:#e4e4e7}.success-actions .btn-primary{background:#3b82f6;border:none;color:#fff;padding:.625rem 1.25rem;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:600;transition:all .15s}.success-actions .btn-primary:hover{background:#2563eb}.close-button{position:absolute;top:.875rem;right:.875rem;background:none;border:none;color:#52525b;font-size:1.25rem;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s}.close-button:hover{background:#ffffff14;color:#e4e4e7}.wizard-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.wizard-modal{background:#131316;border:1px solid rgba(255,255,255,.08);border-radius:8px;width:90%;max-width:680px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 80px #0009}.wizard-header{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;background:#ffffff05}.wizard-header h2{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.wizard-close{background:none;border:none;color:#52525b;font-size:1.5rem;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s}.wizard-close:hover{background:#ffffff14;color:#e4e4e7}.wizard-content{padding:1.5rem;overflow-y:auto;flex:1}.wizard-step{display:flex;flex-direction:column;gap:1.25rem}.wizard-step h3{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.wizard-step>p.step-description,.wizard-step>.step-description{color:#a1a1aa;margin:-.75rem 0 .5rem;font-size:.8125rem;line-height:1.5}.wizard-error{background:#ef444414;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:.875rem 1rem;border-radius:6px;display:flex;justify-content:space-between;align-items:center;font-size:.8125rem}.wizard-error button{background:none;border:none;color:#fca5a5;font-size:1.25rem;cursor:pointer;padding:0;width:20px;height:20px}.wizard-progress{background:#3b82f614;border:1px solid rgba(59,130,246,.2);color:#93c5fd;padding:1.25rem;border-radius:6px;text-align:center}.wizard-progress p{font-size:.8125rem;margin:0}.spinner{border:2px solid rgba(59,130,246,.2);border-top:2px solid #3B82F6;border-radius:50%;width:28px;height:28px;animation:spin .8s linear infinite;margin:0 auto .75rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.type-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.type-option{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1.25rem;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:.75rem}.type-option:hover{background:#ffffff0a;border-color:#ffffff26}.type-option.selected{background:#3b82f614;border-color:#3b82f666}.type-option h4{margin:0;color:#e4e4e7;font-size:.8125rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;display:flex;align-items:center;gap:.5rem}.thunder-icon{color:#fbbf24;flex-shrink:0}.type-option p{margin:0;color:#71717a;font-size:.8125rem;line-height:1.4}.type-option .divider{height:1px;background:#ffffff0f;margin:.25rem 0}.type-option ul{margin:0;padding-left:1rem;color:#a1a1aa;font-size:.75rem;line-height:1.6}.type-option ul li{margin:.125rem 0}.btn-outline{background:none;border:1px solid rgba(255,255,255,.12);color:#e4e4e7;padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:all .15s;font-size:.75rem;font-weight:500;margin-top:auto}.btn-outline:hover{background:#ffffff0d;border-color:#3b82f666}.model-list{display:flex;flex-direction:column;gap:.75rem}.model-option{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1rem 1.25rem;cursor:pointer;transition:all .15s}.model-option:hover{background:#ffffff0a;border-color:#ffffff26}.model-option.selected{background:#3b82f614;border-color:#3b82f666}.model-option-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.model-option-header h4{margin:0;color:#e4e4e7;font-size:.875rem;font-weight:500;flex:1}.model-option-header input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6}.status-badge{font-size:.625rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:.25rem .5rem;border-radius:3px;background:#22c55e1a;color:#22c55e}.status-badge.trained{background:#22c55e1a;color:#22c55e}.status-badge.training{background:#f59e0b1a;color:#f59e0b}.model-description{color:#71717a;font-size:.8125rem;margin:0 0 .75rem;line-height:1.4}.model-meta{display:flex;flex-direction:column;gap:1rem;font-size:.75rem;color:#52525b;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06)}.feature-set-details{display:flex;flex-direction:column;gap:.5rem}.feature-set-label{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#52525b}.feature-set-name{color:#a1a1aa;font-size:.75rem;font-weight:500}.feature-list{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.25rem}.feature-chip{display:inline-flex;align-items:center;padding:.25rem .5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:4px;font-size:.6875rem;font-family:JetBrains Mono,Monaco,monospace;color:#a1a1aa}.model-meta span{display:flex;gap:.375rem}.model-meta-label{color:#52525b}.model-meta-value{color:#a1a1aa;font-family:JetBrains Mono,Monaco,monospace}.portfolio-list{display:flex;flex-direction:column;gap:.75rem}.portfolio-option{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1rem 1.25rem;cursor:pointer;transition:all .15s}.portfolio-option:hover{background:#ffffff0a;border-color:#ffffff26}.portfolio-option.selected{background:#3b82f614;border-color:#3b82f666}.portfolio-option-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.375rem}.portfolio-option-header h4{margin:0;color:#e4e4e7;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.75rem}.portfolio-option-header input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6}.portfolio-capital{color:#71717a;font-size:.8125rem;font-family:JetBrains Mono,Monaco,monospace}.portfolio-assets{color:#a1a1aa;font-size:.75rem;font-family:JetBrains Mono,Monaco,monospace;margin:0}.portfolio-meta{color:#52525b;font-size:.75rem;margin:.375rem 0 0}.config-section{display:flex;flex-direction:column;gap:1.5rem}.config-group{display:flex;flex-direction:column;gap:.625rem}.config-label{display:flex;flex-direction:column;gap:.25rem;color:#e4e4e7;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.config-hint{font-size:.75rem;font-weight:400;letter-spacing:0;text-transform:none;color:#52525b}.config-input{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#e4e4e7;padding:.625rem .875rem;border-radius:4px;font-size:.875rem;font-family:JetBrains Mono,Monaco,monospace;width:120px}.config-input:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.config-presets{display:flex;gap:.5rem;flex-wrap:wrap}.preset-btn{background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#a1a1aa;padding:.375rem .75rem;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .15s}.preset-btn:hover{background:#ffffff0f;border-color:#ffffff26}.preset-btn.active{background:#3b82f626;border-color:#3b82f666;color:#93c5fd}.simulation-info-card{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1rem 1.25rem}.simulation-info-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.06)}.simulation-info-header h4{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.simulation-info-icon{display:none}.simulation-info-content{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 1.5rem}.simulation-info-row{display:flex;gap:.5rem;align-items:baseline}.simulation-info-label{font-size:.6875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:#52525b;min-width:60px}.simulation-info-value{font-size:.8125rem;color:#e4e4e7;font-family:JetBrains Mono,Monaco,monospace}.simulation-info-row-assets{flex-direction:column;align-items:flex-start;grid-column:span 2;gap:.5rem}.asset-chips{display:flex;flex-wrap:wrap;gap:.375rem}.asset-chip{display:inline-flex;align-items:center;padding:.25rem .5rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.25);border-radius:4px;font-size:.6875rem;font-family:JetBrains Mono,Monaco,monospace;color:#93c5fd}.review-section{display:flex;flex-direction:column;gap:1.25rem}.review-section label{display:flex;flex-direction:column;gap:.375rem;color:#71717a;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.review-section input,.review-section textarea{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#e4e4e7;padding:.625rem .875rem;border-radius:4px;font-size:.875rem;font-family:inherit}.review-section input:focus,.review-section textarea:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.review-section textarea{min-height:60px;resize:vertical}.summary-card{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1rem 1.25rem}.summary-card h4{margin:0 0 .75rem;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#71717a;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.06)}.summary-card p{margin:.375rem 0;color:#a1a1aa;font-size:.8125rem;display:flex;gap:.5rem}.summary-card strong{color:#52525b;font-weight:500;font-size:.6875rem;letter-spacing:.05em;text-transform:uppercase;min-width:100px}.info-box{background:#3b82f60d;border:1px solid rgba(59,130,246,.15);border-radius:6px;padding:.875rem 1rem}.info-box p{margin:.25rem 0;color:#93c5fd;font-size:.8125rem;line-height:1.5}.info-box strong{color:#93c5fd}.warning-box{background:#f59e0b0d;border:1px solid rgba(245,158,11,.15);border-radius:6px;padding:.875rem 1rem}.warning-box p{margin:.25rem 0;color:#fcd34d;font-size:.8125rem;line-height:1.5}.warning-box strong{color:#fbbf24}.wizard-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.08)}.btn-secondary{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#a1a1aa;padding:.625rem 1.25rem;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s}.btn-secondary:hover{background:#ffffff0f;color:#e4e4e7}.btn-primary{background:#3b82f6;border:none;color:#fff;padding:.625rem 1.25rem;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:600;transition:all .15s}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.loading-state{text-align:center;padding:2rem 1rem;color:#71717a}.loading-state p{font-size:.8125rem;margin:0}.empty-state{text-align:center;padding:2rem 1rem;color:#71717a}.empty-state p{font-size:.8125rem;margin:.25rem 0}@media (max-width: 600px){.wizard-modal{width:95%;max-height:95vh}.type-options,.simulation-info-content{grid-template-columns:1fr}.config-presets{flex-wrap:wrap}}:root{--scenario-bg: #0D0D0F;--scenario-surface: #18181B;--scenario-surface-elevated: #1F1F23;--scenario-border: rgba(255, 255, 255, .08);--scenario-border-hover: rgba(255, 255, 255, .15);--scenario-text: #E4E4E7;--scenario-text-secondary: #71717A;--scenario-text-muted: #52525B;--scenario-accent: #3B82F6;--scenario-success: #22C55E;--scenario-warning: #F59E0B;--scenario-danger: #EF4444}.scenarios-page{padding:1.5rem 2rem;max-width:1600px;margin:0 auto;color:var(--scenario-text);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.console-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--scenario-surface);border:1px solid var(--scenario-border);border-radius:8px;margin-bottom:1.5rem}.console-title-section{display:flex;align-items:center;gap:2rem}.console-title{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--scenario-text-secondary);margin:0}.console-controls{display:flex;align-items:center;gap:1.5rem}.console-control{display:flex;align-items:center;gap:.5rem}.control-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--scenario-text-muted)}.control-select{background:var(--scenario-surface-elevated);border:1px solid var(--scenario-border);color:var(--scenario-text);padding:.5rem 2rem .5rem .75rem;border-radius:4px;font-size:.8125rem;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2371717A' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;transition:all .15s}.control-select:hover{border-color:var(--scenario-border-hover)}.control-select:focus{outline:none;border-color:var(--scenario-accent)}.status-indicator{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--scenario-text)}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--scenario-success)}.status-dot.warning{background:var(--scenario-warning)}.status-dot.error{background:var(--scenario-danger)}.console-actions{display:flex;gap:.75rem}.btn-primary{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:var(--scenario-accent);border:none;border-radius:4px;color:#fff;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-primary:hover{background:#2563eb}.btn-secondary{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--scenario-border);border-radius:4px;color:var(--scenario-text);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:var(--scenario-surface-elevated);border-color:var(--scenario-border-hover)}.templates-section{margin-top:2.5rem;margin-bottom:2rem;padding-top:1.5rem;border-top:1px solid var(--scenario-border)}.section-label{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--scenario-text-muted);margin-bottom:.75rem}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.template-compact{background:var(--scenario-surface);border:1px solid var(--scenario-border);border-radius:6px;padding:1rem;cursor:pointer;transition:all .15s}.template-compact:hover{border-color:var(--scenario-accent);background:var(--scenario-surface-elevated)}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.template-name{font-size:.875rem;font-weight:600;color:var(--scenario-text);margin:0}.template-tag{font-size:.625rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--scenario-accent);background:#3b82f61a;padding:.125rem .375rem;border-radius:2px}.template-constraints{font-size:.75rem;color:var(--scenario-text-secondary);font-family:JetBrains Mono,Monaco,monospace;margin-bottom:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-meta{display:flex;justify-content:space-between;align-items:center}.template-specs{font-size:.6875rem;color:var(--scenario-text-muted)}.template-apply-btn{font-size:.6875rem;font-weight:500;color:var(--scenario-accent);background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.template-apply-btn:hover{color:#60a5fa}.scenarios-section{background:var(--scenario-surface);border:1px solid var(--scenario-border);border-radius:8px;overflow:hidden}.scenarios-table-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--scenario-border);background:#ffffff05}.table-title{display:flex;align-items:center;gap:.75rem}.table-title h2{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--scenario-text-secondary);margin:0}.scenario-count-badge{font-size:.6875rem;font-weight:500;color:var(--scenario-text);background:var(--scenario-surface-elevated);padding:.125rem .5rem;border-radius:10px;border:1px solid var(--scenario-border)}.table-filters{display:flex;align-items:center;gap:.75rem}.filter-select{background:var(--scenario-surface-elevated);border:1px solid var(--scenario-border);color:var(--scenario-text);padding:.375rem 1.5rem .375rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath fill='%2371717A' d='M4 5L0 0h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.scenarios-table{width:100%}.table-row{display:grid;grid-template-columns:minmax(140px,1.5fr) 70px 70px minmax(160px,1.8fr) 110px minmax(120px,1fr) 80px;align-items:center;padding:.875rem 1.25rem;border-bottom:1px solid var(--scenario-border);transition:background .1s;gap:.5rem}.table-row:last-child{border-bottom:none}.table-row.header{background:#ffffff05}.table-row:not(.header):hover{background:#ffffff05}.table-cell{font-size:.8125rem}.table-cell.header{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--scenario-text-muted)}.table-cell.header:nth-child(2),.table-cell.header:nth-child(3),.table-cell.header:nth-child(5){text-align:center}.scenario-name-cell{display:flex;flex-direction:column;gap:.125rem}.scenario-name{font-size:.8125rem!important;font-weight:500;color:var(--scenario-text)}.scenario-description{font-size:.6875rem;color:var(--scenario-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-cell{font-family:JetBrains Mono,Monaco,monospace;font-size:.75rem;color:var(--scenario-text-secondary);text-align:center}.constraints-cell{display:flex;gap:.375rem;flex-wrap:wrap}.constraint-tag{font-size:.6875rem;font-family:JetBrains Mono,Monaco,monospace;padding:.125rem .375rem;background:#ffffff0d;border:1px solid var(--scenario-border);border-radius:3px;color:var(--scenario-text-secondary)}.constraint-tag.positive{color:var(--scenario-success);border-color:#22c55e33;background:#22c55e0d}.constraint-tag.negative{color:var(--scenario-danger);border-color:#ef444433;background:#ef44440d}.status-badge{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;border-radius:3px;min-width:58px}.status-badge.completed{color:var(--scenario-success);background:#22c55e1a}.status-badge.running{color:var(--scenario-warning);background:#f59e0b1a}.status-badge.draft{color:var(--scenario-text-muted);background:#ffffff0d}.status-badge.failed{color:var(--scenario-danger);background:#ef44441a}.tickers-cell{display:flex;align-items:center}.ticker-tags{display:flex;gap:.375rem;flex-wrap:wrap}.ticker-tag{font-family:JetBrains Mono,Monaco,monospace;font-size:.6875rem;font-weight:500;padding:.25rem .5rem;background:#60a5fa1a;border:1px solid rgba(96,165,250,.2);border-radius:4px;color:#60a5fa}.ticker-tag.more{background:#71717a1a;border-color:#71717a33;color:#71717a}.actions-cell{display:flex;gap:.5rem;justify-content:flex-end}.action-btn{padding:.375rem .75rem;font-size:.6875rem;font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s;text-decoration:none;min-width:54px;text-align:center}.action-btn.view{background:transparent;border:1px solid var(--scenario-border);color:var(--scenario-text)}.action-btn.view:hover{border-color:var(--scenario-border-hover);background:var(--scenario-surface-elevated)}.action-btn.run{background:var(--scenario-accent);border:none;color:#fff}.action-btn.run:hover{background:#2563eb}.action-btn.run:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:4rem 2rem}.empty-icon{width:48px;height:48px;margin:0 auto 1rem;opacity:.3}.empty-state h3{font-size:.875rem;font-weight:500;color:var(--scenario-text);margin:0 0 .5rem}.empty-state p{font-size:.8125rem;color:var(--scenario-text-muted);margin:0 0 1.5rem;max-width:400px;margin-left:auto;margin-right:auto}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--scenario-text-muted)}.loading-spinner{width:24px;height:24px;border:2px solid var(--scenario-border);border-top-color:var(--scenario-accent);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:.75rem}.loading-state p{font-size:.75rem;margin:0}.progress-container{display:flex;flex-direction:column;gap:.375rem;width:100%}.progress-info{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.progress-message{font-size:.6875rem;color:#a1a1aa;font-weight:500}.progress-percentage{font-size:.6875rem;color:#3b82f6;font-family:JetBrains Mono,Monaco,monospace;font-weight:600}.progress-bar{width:100%;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:2px;transition:width .3s ease}.running-indicator{font-size:.75rem;color:#f59e0b;font-weight:500}@media (max-width: 1200px){.table-row{grid-template-columns:minmax(120px,1.5fr) 60px 60px minmax(140px,1.5fr) 80px 80px}.tickers-cell{display:none}}@media (max-width: 968px){.scenarios-page{padding:1rem}.console-header{flex-direction:column;gap:1rem;align-items:flex-start}.table-row{grid-template-columns:1fr 60px 80px 80px}.data-cell:nth-child(3),.constraints-cell{display:none}.templates-grid{grid-template-columns:1fr}}.scenario-results-page{min-height:100vh;background:#0a0a0b;color:#fff;padding:1.5rem 2rem}.results-header{max-width:1400px;margin:0 auto 1rem}.btn-back{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#71717a;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.8125rem;transition:all .15s}.btn-back:hover{background:#ffffff0f;color:#a1a1aa;border-color:#ffffff26}.results-content{max-width:1400px;margin:0 auto}.scenario-definition-card{background:linear-gradient(135deg,#3b82f60f,#14b8a60f);border:1px solid rgba(59,130,246,.15);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.scenario-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem}.scenario-title-block{display:flex;align-items:flex-start;gap:1rem}.scenario-icon-box{width:40px;height:40px;background:linear-gradient(135deg,#3b82f633,#10b98133);border:1px solid rgba(59,130,246,.3);border-radius:8px;flex-shrink:0}.scenario-name{font-size:1.75rem;font-weight:700;margin:0;color:#e4e4e7}.scenario-subtitle{font-size:.875rem;color:#71717a;margin:.25rem 0 0}.scenario-meta-badges{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.meta-badge{display:flex;flex-direction:column;align-items:center;background:#0000004d;padding:.5rem 1rem;border-radius:6px;border:1px solid rgba(255,255,255,.06)}.meta-label{font-size:.625rem;text-transform:uppercase;letter-spacing:.08em;color:#71717a}.meta-value{font-size:1rem;font-weight:600;color:#e4e4e7}.status-pill{padding:.375rem .875rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-pill.status-simulated{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.status-pill.status-draft{background:#9ca3af26;color:#9ca3af;border:1px solid rgba(156,163,175,.3)}.status-pill.status-tested{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3)}.constraints-box{background:#00000040;border-radius:8px;padding:1rem;border:1px solid rgba(255,255,255,.05)}.constraints-label{font-size:.6875rem;font-weight:600;letter-spacing:.1em;color:#71717a;margin-bottom:.75rem;display:block}.constraint-chips{display:flex;gap:.5rem;flex-wrap:wrap}.constraint-chip{display:flex;align-items:center;gap:.5rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.25);border-radius:6px;padding:.5rem .875rem}.chip-feature{font-weight:600;color:#60a5fa;font-family:JetBrains Mono,monospace}.chip-operator{color:#60a5fa;font-family:JetBrains Mono,monospace}.chip-value{font-weight:600;color:#e4e4e7;font-family:JetBrains Mono,monospace}.chip-period{font-size:.75rem;color:#71717a;background:#0000004d;padding:.125rem .5rem;border-radius:4px}.section-title{font-size:1.125rem;font-weight:600;color:#e4e4e7;margin:0 0 .25rem}.section-subtitle{font-size:.8125rem;color:#71717a;margin:0 0 1rem}.asset-overview-section{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;overflow:visible}.asset-table{width:100%;overflow:visible}.asset-table-header,.asset-table-row{display:grid;grid-template-columns:40px 1.5fr 1fr 1fr 1fr .8fr .8fr;gap:.75rem;padding:.75rem 1rem;align-items:center}.asset-table-header{background:#0003;border-radius:6px;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#71717a;position:relative;z-index:10}.asset-table-header span{display:flex;align-items:center;gap:.375rem}.info-tooltip{display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;color:#52525b;cursor:help;position:relative;transition:color .15s}.info-tooltip:hover{color:#a1a1aa}.info-tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#18181b;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:.625rem .875rem;font-size:.75rem;font-weight:400;letter-spacing:0;text-transform:none;color:#e4e4e7;white-space:normal;width:220px;line-height:1.5;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;z-index:100;box-shadow:0 4px 12px #0006;pointer-events:none}.info-tooltip:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#18181b;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;z-index:100}.info-tooltip:hover:after,.info-tooltip:hover:before{opacity:1;visibility:visible}.asset-table-row{border-bottom:1px solid rgba(255,255,255,.04);cursor:pointer;transition:background .1s}.asset-table-row:hover{background:#ffffff08}.asset-table-row.selected{background:#3b82f61a;border-color:#3b82f633}.col-status{display:flex;justify-content:center}.trend-indicator{width:10px;height:10px;border-radius:50%}.trend-indicator.trend-up{background:#10b981;box-shadow:0 0 6px #10b98166}.trend-indicator.trend-down{background:#ef4444;box-shadow:0 0 6px #ef444466}.trend-indicator.trend-neutral{background:#f59e0b;box-shadow:0 0 6px #f59e0b66}.col-asset{font-weight:500;color:#e4e4e7;font-size:.875rem}.col-return,.col-percentile{font-family:JetBrains Mono,monospace;font-size:.875rem;font-weight:500}.col-return.positive,.col-percentile.positive{color:#10b981}.col-return.negative,.col-percentile.negative{color:#ef4444}.col-price{font-family:JetBrains Mono,monospace;font-size:.8125rem;color:#a1a1aa}.comparative-chart-section{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.comparative-chart-container{width:100%;aspect-ratio:2.25 / 1;min-height:350px;max-height:450px}.comparative-chart-svg{width:100%;height:100%}.deep-dive-section{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.deep-dive-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.asset-selector{display:flex;align-items:center;gap:.75rem}.asset-selector label{font-size:.8125rem;color:#71717a}.asset-selector select{background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;min-width:180px}.asset-selector select:focus{outline:none;border-color:#3b82f680}.deep-dive-content{display:grid;grid-template-columns:1fr 280px;gap:1.5rem}.deep-dive-chart{min-height:350px}.fan-chart-svg{width:100%;height:100%}.stats-panel{background:#0003;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:1.25rem}.stats-panel h3{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#71717a;margin:0 0 1rem}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px solid rgba(255,255,255,.04)}.stat-item:last-child{border-bottom:none}.stat-label{font-size:.8125rem;color:#a1a1aa;display:flex;align-items:center;gap:.375rem}.stat-value{font-weight:600;font-size:.9375rem;font-family:JetBrains Mono,monospace}.stat-value.positive{color:#10b981}.stat-value.negative{color:#ef4444}.loading-state,.error-state,.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;gap:1rem}.spinner{width:40px;height:40px;border:3px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.error-state h2,.no-results h2{color:#fff;margin:0}.error-state p,.no-results p{color:#71717a;margin:0}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.9375rem;font-weight:600;transition:all .2s}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}@media (max-width: 1024px){.deep-dive-content{grid-template-columns:1fr}.stats-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.stats-panel h3{grid-column:1 / -1}.stat-item{flex-direction:column;text-align:center;padding:.75rem;background:#0003;border-radius:6px;border-bottom:none}}@media (max-width: 768px){.scenario-results-page{padding:1rem}.scenario-header-row{flex-direction:column}.scenario-meta-badges{width:100%;justify-content:flex-start}.asset-table-header,.asset-table-row{grid-template-columns:30px 1.2fr 1fr 1fr;font-size:.75rem}.col-percentile:last-child,.col-price{display:none}.deep-dive-header{flex-direction:column;align-items:flex-start}.comparative-chart-container{aspect-ratio:1.5 / 1;min-height:280px}.stats-panel{grid-template-columns:repeat(2,1fr)}}:root{--analytics-bg: #09090B;--analytics-surface: #18181B;--analytics-border: rgba(255, 255, 255, .08);--analytics-text: #E4E4E7;--analytics-text-muted: #71717A;--analytics-text-secondary: #A1A1AA;--analytics-accent: #3B82F6}.analytics-page *{box-sizing:border-box}.analytics-page{min-height:100vh;background:var(--analytics-bg);padding:0}.analytics-header{padding:1.5rem 2rem;background:var(--analytics-surface);border-bottom:1px solid var(--analytics-border)}.analytics-header h1{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--analytics-text-muted)}.analytics-subtitle{margin:.25rem 0 0;color:var(--analytics-text-secondary);font-size:.8125rem}.scenario-selector{padding:1.5rem 2rem;background:var(--analytics-surface);border-bottom:1px solid var(--analytics-border);display:flex;flex-direction:column;gap:.5rem}.scenario-selector label{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--analytics-text-muted)}.scenario-selector select{padding:.625rem .875rem;background:#ffffff08;border:1px solid var(--analytics-border);border-radius:4px;color:var(--analytics-text);font-size:.875rem;max-width:400px;cursor:pointer;transition:all .15s}.scenario-selector select:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.scenario-selector select option{background:#18181b;color:var(--analytics-text)}.tab-navigation{display:flex;gap:.25rem;padding:.25rem;background:#0000004d;border-radius:6px;margin:2rem 2rem 0}.tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;background:transparent;border:1px solid transparent;border-radius:4px;color:var(--analytics-text-muted);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.tab-btn:hover{color:var(--analytics-text-secondary);background:#ffffff08}.tab-btn.active{background:#3b82f626;color:#60a5fa;border-color:#3b82f64d}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .375rem;background:#ffffff1a;border-radius:10px;font-size:.6875rem;font-family:JetBrains Mono,Monaco,monospace}.tab-btn.active .tab-badge{background:#3b82f64d;color:#93c5fd}.tab-content{padding:2rem}.simulations-tab,.portfolio-test-tab{background:#ffffff05;border:1px solid var(--analytics-border);border-radius:8px;overflow:hidden}.tab-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--analytics-border);background:#ffffff03}.tab-header h2{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--analytics-text-muted)}.tab-header p{margin:.25rem 0 0;color:var(--analytics-text-secondary);font-size:.8125rem}.simulations-list{display:flex;flex-direction:column}.simulation-card-link{text-decoration:none;color:inherit}.simulation-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:1rem 1.5rem;background:transparent;border-bottom:1px solid var(--analytics-border);transition:background .1s;gap:1.5rem}.simulation-card:last-child{border-bottom:none}.simulation-card:hover{background:#ffffff05}.simulation-header{display:flex;align-items:center;gap:.75rem}.simulation-number{font-family:JetBrains Mono,Monaco,monospace;font-size:.75rem;color:var(--analytics-text-muted);min-width:40px}.simulation-status{display:inline-flex;padding:.125rem .375rem;border-radius:2px;font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.simulation-status.simulated{background:#22c55e26;color:#22c55e}.simulation-status.tested{background:#3b82f626;color:#3b82f6}.simulation-status.pending{background:#f59e0b26;color:#f59e0b}.simulation-details{display:flex;gap:2rem}.detail-row{display:flex;flex-direction:column;gap:.125rem}.detail-label{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--analytics-text-muted)}.detail-value{font-size:.8125rem;color:var(--analytics-text-secondary)}.detail-value.mono{font-family:JetBrains Mono,Monaco,monospace}.simulation-actions{display:flex;align-items:center;gap:.5rem}.empty-state{padding:3rem 2rem;text-align:center;color:var(--analytics-text-secondary)}.empty-state h3{margin:0 0 .5rem;font-size:.875rem;font-weight:500;color:var(--analytics-text)}.empty-state p{margin:0;font-size:.8125rem}.loading-state{padding:3rem 2rem;text-align:center;color:var(--analytics-text-secondary);font-size:.8125rem}.tests-list{padding:1.5rem}.tests-list h3{margin:0 0 1rem;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--analytics-text-muted)}.test-card{background:#ffffff05;border:1px solid var(--analytics-border);border-radius:6px;padding:1.25rem;margin-bottom:.75rem;transition:all .15s}.test-card:hover{background:#ffffff0a;border-color:#ffffff1f}.test-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--analytics-border)}.test-portfolio{font-size:.875rem;font-weight:500;color:var(--analytics-text)}.test-status{display:inline-flex;padding:.125rem .5rem;border-radius:2px;font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.test-status.completed{background:#22c55e26;color:#22c55e}.test-status.pending{background:#f59e0b26;color:#f59e0b}.test-status.failed{background:#ef444426;color:#ef4444}.test-details{display:flex;gap:2rem;margin-bottom:1rem}.btn-view-test{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:4px;color:#60a5fa;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-view-test:hover{background:#3b82f626;border-color:#3b82f680}.no-tests-state{padding:1.5rem}.no-tests-card{background:#ffffff05;border:1px dashed var(--analytics-border);border-radius:8px;padding:2rem}.no-tests-card h3{margin:0 0 .5rem;font-size:.875rem;font-weight:500;color:var(--analytics-text)}.no-tests-card>p{margin:0 0 1.5rem;color:var(--analytics-text-secondary);font-size:.8125rem}.run-test-section{display:flex;flex-direction:column;gap:1rem;max-width:400px}.run-test-section label{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--analytics-text-muted)}.run-test-section select{padding:.625rem .875rem;background:#ffffff08;border:1px solid var(--analytics-border);border-radius:4px;color:var(--analytics-text);font-size:.875rem;cursor:pointer;width:100%;transition:all .15s}.run-test-section select:focus{outline:none;border-color:#3b82f680;background:#ffffff0d}.run-test-section select option{background:#18181b;color:var(--analytics-text)}.compatible-info{padding:.5rem .75rem;background:#22c55e14;border:1px solid rgba(34,197,94,.2);border-radius:4px}.compatible-info p{margin:0;font-size:.75rem;color:#22c55e}.btn-run-test{padding:.75rem 1.5rem;background:var(--analytics-accent);border:none;border-radius:4px;color:#fff;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s;width:fit-content}.btn-run-test:hover:not(:disabled){background:#2563eb}.btn-run-test:disabled{opacity:.4;cursor:not-allowed}.warning-box{padding:1rem;background:#f59e0b14;border:1px solid rgba(245,158,11,.2);border-radius:6px}.warning-box p{margin:0;font-size:.8125rem;color:#fbbf24}.warning-box .warning-detail{margin-top:.5rem;font-size:.75rem;color:#d4a437}.error-box{padding:.75rem 1rem;background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:4px;color:#fca5a5;font-size:.8125rem}@media (max-width: 768px){.tab-navigation{margin:1rem}.tab-content{padding:1rem}.simulation-card{grid-template-columns:1fr;gap:.75rem}.simulation-details,.test-details{flex-direction:column;gap:.5rem}.run-test-section{max-width:100%}}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-container{background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h2{font-size:1.5rem;font-weight:600;color:#fff;margin:0}.modal-close-btn{background:none;border:none;color:#fff9;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close-btn:hover{background:#ffffff1a;color:#fff}.modal-body{padding:1.5rem;overflow-y:auto}.modal-loading,.modal-error{padding:2rem;text-align:center;color:#ffffffb3}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.form-group{margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-label{display:block;font-size:.875rem;font-weight:500;color:#ffffffe6;margin-bottom:.5rem}.form-input,.form-textarea,.form-select{width:100%;padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:1rem;transition:all .2s}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#3b82f6;background:#ffffff14}.form-textarea{resize:vertical;font-family:inherit}.form-select{cursor:pointer}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;color:#ffffffe6;font-size:.9375rem}.checkbox-label input[type=checkbox]{margin-top:.25rem;width:18px;height:18px;cursor:pointer}.checkbox-label span{flex:1;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.btn-primary{padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:.75rem 1.5rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#ffffff26}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.job-progress-compact{margin-top:.5rem;padding:.5rem 0}.compact-progress-bar{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-bottom:.5rem}.compact-progress-bar .progress-bar-fill{height:100%}.compact-info{display:flex;gap:1rem;font-size:.8125rem;color:#ffffffb3}.compact-info span{white-space:nowrap}.job-progress-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;margin:16px 0}.job-progress-card.job-error{border-color:#ef44444d}.job-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff05}.job-title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:#fffffff2}.job-title svg{color:#2563eb}.job-error .job-title svg{color:#ef4444}.job-cancel-button{padding:6px 14px;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.job-cancel-button:hover{background:#ef444433;border-color:#ef44444d}.job-body{padding:20px}.job-metric{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-label{font-size:13px;color:#fff9;font-weight:500}.metric-value{font-size:14px;color:#fffffff2;font-weight:600;font-variant-numeric:tabular-nums}.progress-bar-container{width:100%;height:8px;background:#ffffff0d;border-radius:4px;overflow:hidden;margin:16px 0 8px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:4px;transition:width .3s ease}.progress-bar-fill.progress-bar-purple{background:linear-gradient(90deg,#a855f7,#c084fc)}.progress-percentage{text-align:right;font-size:12px;color:#ffffff80;margin-bottom:16px;font-variant-numeric:tabular-nums}.job-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.optimization-best{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.optimization-params{margin-top:16px;padding:16px;background:#a855f70d;border:1px solid rgba(168,85,247,.1);border-radius:8px}.params-title{font-size:12px;color:#fff9;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.params-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.param-item{display:flex;gap:6px;font-size:13px}.param-key{color:#fff9}.param-value{color:#ffffffe6;font-weight:500;font-variant-numeric:tabular-nums}.error-message{color:#ef4444;font-size:14px;line-height:1.6;margin:0}.loading-skeleton{height:100px;background:linear-gradient(90deg,#ffffff08 25%,#ffffff0d,#ffffff08 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:8px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.validation-steps{margin:20px 0;padding:16px;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.validation-step{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:13px;color:#ffffff80;transition:all .2s}.validation-step.active{color:#3b82f6;font-weight:500}.validation-step.completed{color:#ffffffb3}.step-indicator{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);flex-shrink:0;transition:all .2s}.validation-step.active .step-indicator{background:#3b82f633;border-color:#3b82f6}.validation-step.completed .step-indicator{background:#22c55e33;border-color:#22c55e;color:#22c55e}.step-number{font-size:11px;font-weight:600;color:#fff6}.validation-step.active .step-number{color:#3b82f6}.step-name{flex:1}.validation-results-container{display:grid;grid-template-columns:250px 1fr;gap:1.5rem;margin-top:1rem}.validation-selector{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:1rem}.validation-selector h5{font-size:.875rem;font-weight:600;color:#fffc;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.validation-option{width:100%;padding:.75rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;cursor:pointer;transition:all .2s;margin-bottom:.5rem;text-align:left}.validation-option:hover{background:#ffffff0d;border-color:#ffffff26}.validation-option.active{background:#3b82f61a;border-color:#3b82f64d}.validation-option-date{font-size:.8125rem;color:#ffffffe6;margin-bottom:.25rem}.validation-option-type{font-size:.75rem;color:#fff9;margin-bottom:.25rem}.validation-option-quality{font-size:.75rem;color:#22c55ee6;font-weight:500}.validation-details{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:1.5rem}.validation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.validation-header h4{font-size:1.125rem;font-weight:600;color:#fffffff2}.validation-meta{display:flex;gap:.75rem;align-items:center}.validation-type-badge{padding:.375rem .75rem;background:#3b82f61a;color:#60a5fa;border:1px solid rgba(59,130,246,.2);border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.validation-date{color:#fff9;font-size:.875rem}.metrics-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.summary-card{padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;text-align:center}.summary-label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.summary-value{font-size:1.5rem;font-weight:700;color:#fffffff2;font-family:Monaco,monospace}.summary-value.success{color:#22c55e}.key-metrics{margin-bottom:2rem}.key-metrics h5{font-size:.875rem;font-weight:600;color:#fffc;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.key-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.key-metric-card{padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px}.metric-name{font-size:.75rem;color:#fff9;margin-bottom:.5rem}.metric-value{font-size:1.25rem;font-weight:700;color:#fffffff2;font-family:Monaco,monospace;margin-bottom:.5rem}.metric-hint{font-size:.75rem;color:#ffffffb3}.detailed-metrics{margin-top:2rem}.detailed-metrics h5{font-size:.875rem;font-weight:600;color:#fffc;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.metrics-table{display:flex;flex-direction:column;gap:.75rem}.metric-row{padding:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:6px;transition:all .2s}.metric-row:hover{background:#ffffff0a;border-color:#ffffff26}.metric-row.passed{border-left:3px solid #22c55e}.metric-row.failed{border-left:3px solid #ef4444}.metric-row-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.metric-row-name{font-weight:600;color:#fffffff2;text-transform:capitalize}.metric-row-badges{display:flex;gap:.5rem;align-items:center}.quality-badge{padding:.25rem .5rem;border:1px solid;border-radius:4px;font-size:.625rem;font-weight:600;letter-spacing:.05em}.pass-badge{padding:.25rem .5rem;border-radius:4px;font-size:.625rem;font-weight:600;letter-spacing:.05em}.pass-badge.passed{background:#22c55e1a;color:#22c55e}.pass-badge.failed{background:#ef44441a;color:#ef4444}.metric-row-value{font-size:.875rem;color:#fffc;margin-bottom:.5rem;font-family:Monaco,monospace}.metric-row-value strong{color:#fffffff2;font-weight:600}.metric-row-interpretation{font-size:.8125rem;color:#ffffffb3;line-height:1.5}.validation-loading,.validation-error,.validation-empty{padding:2rem;text-align:center;color:#fff9}.validation-error{color:#ef4444e6}.model-row-container{border:1px solid rgba(255,255,255,.1);border-radius:8px;margin-bottom:.5rem;background:#ffffff05;transition:all .2s}.model-row-container:hover{background:#ffffff0a;border-color:#fff3}.model-row{display:grid;grid-template-columns:2fr .5fr .5fr .5fr 1fr;align-items:center;padding:.75rem 1rem;cursor:pointer;gap:1rem}.model-row.expanded{border-bottom:1px solid rgba(255,255,255,.1)}.model-row-name{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#fffffff2}.expand-icon{font-size:.75rem;color:#ffffff80}.model-row-badge{display:flex;justify-content:center}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.badge-warning{background:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.2)}.badge-empty{background:#94a3b80d;color:#94a3b8;border:1px solid rgba(148,163,184,.1)}.badge-running{background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.model-row-actions{display:flex;gap:.5rem;justify-content:flex-end}.action-btn{padding:.375rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fffc;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.action-btn:hover{background:#ffffff1a;border-color:#ffffff4d;color:#fff}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-label{margin-left:.25rem;font-size:.75rem;font-weight:500}.template-label{font-size:.75rem;color:#ffffff80;font-style:italic}.action-btn-danger{background:#ef44440d;border-color:#ef444433;color:#ef4444}.action-btn-danger:hover{background:#ef444426;border-color:#ef444466}.model-details{padding:1.5rem;background:#ffffff03}.details-loading{padding:2rem;text-align:center;color:#fff9}.details-section{margin-bottom:1.5rem}.details-section:last-child{margin-bottom:0}.details-section h4{font-size:.875rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.details-section p{color:#ffffffb3;font-size:.9375rem;line-height:1.5}.feature-sets-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.model-info-grid{display:flex;flex-direction:column;gap:.5rem}.info-item{display:flex;gap:.5rem;font-size:.875rem}.info-label{color:#fff9;font-weight:500;min-width:100px}.info-value{color:#ffffffe6}.info-time{color:#ffffff80;font-size:.8125rem}.feature-set{padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px}.feature-set-label{font-size:.75rem;color:#fff9;text-transform:uppercase;margin-bottom:.25rem}.feature-set-name{font-weight:500;color:#fffffff2;margin-bottom:.5rem}.feature-list{display:flex;flex-wrap:wrap;gap:.375rem}.feature-tag{display:inline-block;padding:.125rem .5rem;background:#3b82f61a;color:#60a5fa;border-radius:3px;font-size:.75rem}.params-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.param-item{display:flex;justify-content:space-between;padding:.5rem;background:#ffffff08;border-radius:4px}.param-key{font-size:.8125rem;color:#ffffffb3;font-weight:500}.param-value{font-size:.8125rem;color:#ffffffe6;font-family:Monaco,monospace}.validations-list{display:flex;flex-direction:column;gap:.75rem}.validation-summary{padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px}.validation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.validation-date{font-size:.875rem;color:#ffffffb3}.validation-status{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:500}.validation-status.status-completed{background:#22c55e1a;color:#22c55e}.validation-status.status-failed{background:#ef44441a;color:#ef4444}.validation-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.metric{display:flex;flex-direction:column;gap:.25rem}.metric-label{font-size:.75rem;color:#fff9}.metric-value{font-size:1rem;font-weight:600;color:#fffffff2;font-family:Monaco,monospace}.training-stats{display:flex;flex-direction:column;gap:.75rem}.stat-item{display:flex;gap:.75rem;align-items:center}.stat-label{font-size:.875rem;color:#fff9;min-width:100px}.stat-value{font-size:.875rem;color:#ffffffe6}.stat-value.success{color:#22c55e}.training-note{margin-top:.5rem;padding:.75rem;background:#3b82f61a;border-left:3px solid rgba(59,130,246,.5);font-size:.8125rem;color:#ffffffb3;border-radius:4px}.optimization-summary{display:flex;flex-direction:column;gap:1rem}.optimization-status{padding:.75rem;background:#22c55e1a;border-left:3px solid rgba(34,197,94,.5);font-size:.875rem;color:#ffffffe6;border-radius:4px;margin:0}.param-note{font-size:.75rem;color:#ffffff80;font-style:italic}.validation-badge-container{display:flex;align-items:center;gap:.5rem}.view-metrics-btn{padding:.25rem .5rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:4px;color:#60a5fa;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.view-metrics-btn:hover{background:#3b82f633;border-color:#3b82f666;color:#3b82f6;transform:translateY(-1px)}.view-metrics-btn:active{transform:translateY(0)}.validation-results-section{scroll-margin-top:20px}.models-container{padding:2rem;max-width:1400px;margin:0 auto}.models-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-left h1{font-size:2rem;font-weight:700;color:#fffffff2;margin-bottom:.5rem}.header-subtitle{color:#fff9;font-size:.9375rem}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:8px;color:#60a5fa;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover{background:#3b82f640;border-color:#3b82f680}.search-bar{position:relative;margin-bottom:2rem}.search-bar svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#fff6}.search-bar input{width:100%;padding:.875rem 1rem .875rem 3rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fffffff2;font-size:.9375rem;transition:all .2s}.search-bar input:focus{outline:none;background:#ffffff0d;border-color:#3b82f666}.search-bar input::placeholder{color:#fff6}.models-section{margin-bottom:3rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{font-size:1.25rem;font-weight:600;color:#ffffffe6}.model-count{color:#ffffff80;font-size:.875rem}.models-table-header{display:grid;grid-template-columns:2fr .5fr .5fr .5fr 1fr;gap:1rem;padding:.75rem 1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:8px 8px 0 0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff9}.col-name{text-align:left}.col-status{text-align:center}.col-actions{text-align:right}.models-list{border:1px solid rgba(255,255,255,.08);border-top:none;border-radius:0 0 8px 8px;background:#ffffff03;padding:.5rem}.empty-state{padding:4rem 2rem;text-align:center;color:#ffffff80}.empty-state svg{margin:0 auto 1rem;opacity:.5}.empty-state p{font-size:1rem;margin-bottom:.5rem}.empty-state-hint{font-size:.875rem!important;color:#fff6!important}.template-row-wrapper{position:relative}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.loading-spinner{width:48px;height:48px;border:3px solid rgba(255,255,255,.1);border-top-color:#3b82f6cc;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-state p{color:#ef4444e6;font-size:1rem}:root{--featureset-bg: #09090B;--featureset-surface: #18181B;--featureset-border: rgba(255, 255, 255, .08);--featureset-border-hover: rgba(255, 255, 255, .12);--featureset-text: #E4E4E7;--featureset-text-muted: #71717A;--featureset-text-secondary: #A1A1AA;--featureset-accent: #3B82F6;--featureset-accent-hover: #2563EB}.feature-sets-container{min-height:100vh;background:var(--featureset-bg);padding:0}.feature-sets-header{padding:1.5rem 2rem;background:var(--featureset-surface);border-bottom:1px solid var(--featureset-border)}.feature-sets-header h1{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--featureset-text-muted)}.feature-sets-header .subtitle{margin:.25rem 0 0;color:var(--featureset-text-secondary);font-size:.8125rem;font-weight:400;letter-spacing:normal;text-transform:none}.feature-sets-tabs{display:flex;gap:.5rem;padding:.25rem;background:#0003;border-radius:6px;border:1px solid rgba(255,255,255,.05);margin:1.5rem 2rem}.tab-button{flex:1;display:flex;align-items:center;justify-content:center;padding:.625rem 1rem;background:transparent;border:none;border-radius:4px;color:var(--featureset-text-muted);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.tab-button:hover{color:var(--featureset-text-secondary);background:#ffffff08}.tab-button.active{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.feature-sets-content{padding:0 2rem 2rem}.feature-sets-section{margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--featureset-border)}.section-header h3{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--featureset-text-muted)}.section-subtitle{color:#52525b;font-size:.75rem;margin-left:.75rem;font-weight:400;letter-spacing:normal;text-transform:none}.feature-sets-grid{display:flex;flex-direction:column;gap:0}.feature-set-card{display:grid;grid-template-columns:minmax(200px,1fr) 150px 120px 180px;align-items:center;padding:.875rem 1.25rem;background:transparent;border:none;border-bottom:1px solid var(--featureset-border);border-radius:0;transition:background .1s;gap:1rem}.feature-set-card:hover{background:#ffffff05}.feature-set-card:last-child{border-bottom:none}.feature-set-header{display:flex;flex-direction:column;gap:.125rem;margin:0}.feature-set-header h4{margin:0;font-size:.8125rem;font-weight:500;color:var(--featureset-text)}.template-badge{display:inline-flex;padding:.125rem .375rem;background:#22c55e26;color:#22c55e;border-radius:2px;font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;align-self:flex-start;margin-top:.25rem}.feature-set-description{color:var(--featureset-text-secondary);font-size:.6875rem;margin:.25rem 0 0;line-height:1.4}.feature-set-meta{display:flex;flex-direction:column;gap:.25rem;margin:0;font-size:.75rem}.feature-count{font-family:JetBrains Mono,Monaco,monospace;color:var(--featureset-text-secondary);font-size:.75rem}.feature-type{color:var(--featureset-text-muted);font-size:.6875rem;text-transform:capitalize}.feature-data-status{display:flex;align-items:center;gap:.375rem;font-size:.75rem}.status-dot{width:6px;height:6px;border-radius:50%;background:#71717a}.status-dot.available{background:#22c55e}.status-dot.pending{background:#f59e0b}.status-text{color:var(--featureset-text-secondary);font-size:.75rem}.feature-set-actions{display:flex;gap:.5rem;padding:0;border:none;margin:0;justify-content:flex-end}.loading-state,.error-state{text-align:center;padding:3rem 2rem;color:var(--featureset-text-secondary);font-size:.875rem}.empty-state{text-align:center;padding:3rem 2rem;background:#ffffff05;border:1px dashed rgba(255,255,255,.08);border-radius:8px;margin:1rem 0}.empty-state p{margin:0 0 .5rem;color:var(--featureset-text-secondary);font-size:.875rem}.empty-state-hint{margin:.5rem 0 0;font-size:.75rem;color:#52525b}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--featureset-surface);border:1px solid var(--featureset-border);border-radius:12px;padding:2rem;max-width:600px;width:90%;box-shadow:0 25px 50px -12px #00000080}.modal-content h2{color:var(--featureset-text);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.modal-content p{color:var(--featureset-text-secondary);margin:0 0 1.5rem;font-size:.875rem}.delete-confirmation{max-width:480px}.modal-header{margin-bottom:1rem}.modal-header h2{margin:0}.modal-body{margin-bottom:1.5rem}.modal-body p{margin:0 0 .75rem}.modal-body p:last-child{margin-bottom:0}.warning-text{color:#f59e0b!important;font-size:.8125rem!important;font-weight:500}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-actions .btn-secondary,.modal-actions .btn-danger{padding:.625rem 1.25rem;font-size:.875rem}.btn-primary{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:var(--featureset-accent);color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary svg{width:14px;height:14px}.btn-primary:hover{background:var(--featureset-accent-hover)}.btn-secondary{padding:.375rem .75rem;background:#ffffff0d;color:var(--featureset-text);border:1px solid rgba(255,255,255,.1);border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:#ffffff14;border-color:#ffffff26}.btn-danger{padding:.375rem .75rem;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2);border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-danger:hover{background:#ef444426;border-color:#ef44444d}.btn-sm{padding:.25rem .625rem;font-size:.6875rem}.feature-sets-table-header{display:grid;grid-template-columns:minmax(200px,1fr) 150px 120px 180px;padding:.625rem 1.25rem;background:#ffffff05;border-bottom:1px solid var(--featureset-border);gap:1rem}.table-header-cell{font-size:.625rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--featureset-text-muted)}@media (max-width: 1024px){.feature-set-card,.feature-sets-table-header{grid-template-columns:1fr;gap:.5rem}.feature-set-actions{justify-content:flex-start;padding-top:.75rem;border-top:1px solid var(--featureset-border)}}.apis-page{padding:2rem;max-width:900px;margin:0 auto;background:#09090b;min-height:100vh}.apis-header{margin-bottom:2rem}.apis-header h1{font-size:1.875rem;font-weight:700;color:#e4e4e7;margin:0 0 .5rem;letter-spacing:-.02em}.apis-subtitle{font-size:.875rem;color:#71717a;margin:0}.apis-error,.apis-success{padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-size:.875rem}.apis-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444}.apis-success{background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:#10b981}.error-icon,.success-icon{font-weight:600}.providers-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3rem}.provider-card{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem;transition:all .2s}.provider-card:hover{border-color:#ffffff1f;background:#ffffff08}.provider-card.has-key{border-color:#10b9814d}.provider-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1rem}.provider-info h3{font-size:1.125rem;font-weight:600;color:#e4e4e7;margin:0 0 .5rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.provider-info p{font-size:.8125rem;color:#71717a;margin:0;line-height:1.6}.required-badge{background:#f59e0b26;color:#f59e0b;padding:.125rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;white-space:nowrap}.status-badge.connected{background:#10b98126;color:#10b981}.status-badge.not-connected{background:#9ca3af26;color:#9ca3af}.key-details{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:1rem;gap:1.5rem;flex-wrap:wrap}.key-info{display:flex;gap:2rem;flex-wrap:wrap}.key-details .detail-row{display:flex;gap:.5rem}.key-details .detail-label{color:#71717a;font-size:.8125rem}.key-details .detail-value{color:#e4e4e7;font-size:.8125rem}.key-details .detail-value.active{color:#10b981;font-weight:500}.key-actions{display:flex;gap:.75rem}.btn-update,.btn-delete{padding:.5rem 1rem;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-update{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#60a5fa}.btn-update:hover{background:#3b82f626;border-color:#3b82f680}.btn-delete{background:transparent;border:1px solid rgba(239,68,68,.3);color:#ef4444}.btn-delete:hover:not(:disabled){background:#ef44441a}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.key-input-section{display:flex;flex-direction:column;gap:.75rem}.input-row{display:flex;gap:.75rem}.input-row input{flex:1;background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#e4e4e7;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;font-family:JetBrains Mono,Monaco,monospace}.input-row input:focus{outline:none;border-color:#3b82f680;background:#0006}.input-row input::placeholder{color:#52525b}.btn-save{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff;padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.btn-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none}.get-key-link{font-size:.8125rem;color:#60a5fa;text-decoration:none;display:inline-block;transition:color .15s}.get-key-link:hover{color:#93c5fd;text-decoration:underline}.apis-info-section{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem}.apis-info-section h2{font-size:1rem;font-weight:600;color:#e4e4e7;margin:0 0 1rem}.info-content p{font-size:.8125rem;color:#71717a;line-height:1.7;margin:0 0 1rem}.info-content p:last-child{margin-bottom:0}.info-content strong{color:#a1a1aa}.loading-state{text-align:center;padding:3rem 1rem;color:#71717a}@media (max-width: 768px){.apis-page{padding:1rem}.provider-header{flex-direction:column;gap:1rem}.key-details{flex-direction:column;align-items:flex-start}.key-info{flex-direction:column;gap:.5rem}.input-row{flex-direction:column}.input-row input{width:100%}}.portfolio-test-results{min-height:100vh;background:#0a0a0b;padding:1.5rem 2rem}.portfolio-test-results.loading,.portfolio-test-results.error{display:flex;align-items:center;justify-content:center}.loading-spinner{color:#71717a;font-size:1rem}.error-message{text-align:center;padding:3rem}.error-message h2{color:#ef4444;margin-bottom:1rem}.error-message p{color:#71717a;margin-bottom:1.5rem}.error-message button{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#60a5fa;padding:.75rem 1.5rem;border-radius:6px;cursor:pointer;transition:all .15s}.error-message button:hover{background:#3b82f633}.results-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.back-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#a1a1aa;padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .15s;font-size:.875rem}.back-btn:hover{background:#ffffff1a;color:#e4e4e7}.header-info h1{font-size:1.375rem;font-weight:600;color:#e4e4e7;margin:0 0 .25rem}.header-info .scenario-label{font-size:.8125rem;color:#71717a;margin:0}.main-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.view-toggle{display:flex;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:3px}.view-toggle button{background:none;border:none;color:#71717a;padding:.4rem .875rem;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s}.view-toggle button:hover{color:#a1a1aa}.view-toggle button.active{background:#ffffff14;color:#e4e4e7}.metric-select{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#e4e4e7;padding:.4rem .75rem;border-radius:4px;font-size:.8125rem;cursor:pointer;min-width:130px}.metric-select:focus{outline:none;border-color:#fff3}.visualization-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;margin-bottom:1.25rem;overflow:hidden}.card-content{display:grid;grid-template-columns:1fr 180px}.chart-area{padding:1.25rem 1.5rem;background:#0003}.chart-title{font-size:.8125rem;font-weight:500;color:#a1a1aa;margin:0 0 .75rem;text-align:center;line-height:1.4}.chart-subtitle{font-size:.75rem;color:#71717a;font-weight:400}.chart-svg{width:100%;height:auto;display:block}.metrics-panel{background:#18181b;padding:1rem;display:flex;flex-direction:column;gap:.5rem;border-left:1px solid rgba(255,255,255,.06)}.metrics-header{font-size:.6875rem;font-weight:600;letter-spacing:.08em;color:#71717a;margin-bottom:.375rem}.metric-box{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:.625rem .75rem}.metric-label{display:block;font-size:.625rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#71717a;margin-bottom:.125rem}.metric-value{display:block;font-size:1.125rem;font-weight:700;color:#e4e4e7;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.paths-selector{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:#00000026;border-bottom:1px solid rgba(255,255,255,.04)}.selector-label{font-size:.6875rem;font-weight:600;letter-spacing:.08em;color:#71717a;text-transform:uppercase}.paths-dropdown{background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:#e4e4e7;padding:.375rem .75rem;border-radius:4px;font-size:.8125rem;cursor:pointer;min-width:120px}.paths-dropdown:focus{outline:none;border-color:#fff3}@media (max-width: 1024px){.card-content{grid-template-columns:1fr}.metrics-panel{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;border-left:none;border-top:1px solid rgba(255,255,255,.06)}.metrics-header{grid-column:1 / -1}}@media (max-width: 768px){.portfolio-test-results{padding:1rem}.results-header{flex-direction:column;align-items:flex-start}.main-controls{flex-direction:column;gap:.75rem;align-items:stretch}.metrics-panel{grid-template-columns:repeat(2,1fr)}.chart-area{padding:1rem}}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0f1115;color:#fff}#root{width:100%;min-height:100vh}
