body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{background:#181a20;background:var(--primary-bg);color:#f3f6fb;color:var(--text-color);font-family:Inter,Roboto,Arial,sans-serif;margin:0;min-height:100vh;transition:background .3s ease,color .3s ease}:root{--primary-bg:#181a20;--secondary-bg:#23263a;--card-bg:#23263a;--border-color:#404552;--input-bg:#0f172a;--text-color:#f3f6fb;--text-secondary:#9ca3af;--text-muted:#64748b;--accent-blue:#2979ff;--accent-green:#4ade80;--accent-secondary:#22c55e;--accent-red:#ef4444;--accent-yellow:#eab308;--accent-orange:#f97316;--border-radius:8px;--border-radius-xs:4px;--box-shadow:0 4px 20px #0000004d;--box-shadow-sm:0 2px 10px #0003;--text-shadow:var(--text-shadow);--transition:all 0.3s ease;--accent-gradient:linear-gradient(135deg,#2979ff,#1a237e);--accent-tertiary:linear-gradient(135deg,#4ade80,#22c55e);--text-gradient:linear-gradient(135deg,#f3f6fb,#aab4be);--success-gradient:linear-gradient(135deg,#4ade80,#22c55e);--error-gradient:linear-gradient(135deg,#f87171,#dc2626);--info-gradient:linear-gradient(135deg,#60a5fa,#3b82f6);--table-input-bg:#333;--table-input-label-bg:#404040;--table-input-label-text:#e0e0e0;--table-input-border:#555;--table-calculated-bg:#4caf504d;--table-calculated-text:#e8f5e8;--table-calculated-label-bg:#4caf5033}[data-theme=light]{--primary-bg:#f1f5f9;--secondary-bg:#fff;--card-bg:#fff;--border-color:#e2e8f0;--input-bg:#f8fafc;--text-color:#1e293b;--text-secondary:#475569;--text-muted:#94a3b8;--accent-blue:#2563eb;--accent-green:#16a34a;--accent-secondary:#15803d;--accent-red:#dc2626;--accent-yellow:#ca8a04;--accent-orange:#ea580c;--box-shadow:0 4px 20px #00000014;--box-shadow-sm:0 2px 10px #0000000d;--text-shadow:none;--accent-gradient:linear-gradient(135deg,#2563eb,#1e40af);--text-gradient:linear-gradient(135deg,#1e293b,#475569);--table-input-bg:#fff;--table-input-label-bg:#f1f5f9;--table-input-label-text:#1e293b;--table-input-border:#cbd5e1;--table-calculated-bg:#16a34a1a;--table-calculated-text:#14532d;--table-calculated-label-bg:#16a34a26}.app-container{display:flex;min-height:100vh;width:100%}.sidebar{background:#23263a;background:var(--secondary-bg);border-right:1px solid #404552;border-right:1px solid var(--border-color);overflow-y:auto;padding:1.5rem 1rem;z-index:100}.sidebar-header{cursor:pointer;margin-bottom:2rem;padding:0 .5rem}.sidebar-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2979ff,#1a237e);background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;font-size:1.5rem;margin:0}.sidebar-section{margin-bottom:2rem}.sidebar-section h3{color:#64748b;color:var(--text-muted);font-size:.75rem;letter-spacing:.05em;margin-bottom:.75rem;padding-left:.75rem;text-transform:uppercase}.nav-item{align-items:center;border-radius:8px;border-radius:var(--border-radius);color:#9ca3af;color:var(--text-secondary);cursor:pointer;display:flex;margin-bottom:.25rem;padding:.75rem;transition:all .3s ease;transition:var(--transition)}.nav-item:hover{background:#ffffff0d;color:#f3f6fb;color:var(--text-color)}.nav-item.active{background:#2979ff;background:var(--accent-blue);color:#fff}.nav-item.locked{opacity:.7}.nav-icon{font-size:1.2rem;margin-right:.75rem}.nav-label{flex:1 1;font-weight:500}.lock-icon{font-size:.8rem}.sidebar-footer{border-top:1px solid #404552;border-top:1px solid var(--border-color);padding-top:1rem}.main-content{flex:1 1;margin-left:260px;padding:2rem;width:calc(100% - 260px)}.ai-insights-page{margin:0 auto;max-width:1200px}.ai-tabs{border-bottom:1px solid #404552;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem}.ai-tabs button{background:#0000;border:none;border-radius:8px;border-radius:var(--border-radius);color:#9ca3af;color:var(--text-secondary);cursor:pointer;font-size:1rem;padding:.5rem 1rem;transition:all .3s ease;transition:var(--transition)}.ai-tabs button.active{background:#2979ff;background:var(--accent-blue);color:#fff}.swot-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.swot-box{background:#23263a;background:var(--card-bg);border:1px solid #404552;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--border-radius);padding:1.5rem}.swot-box h4{font-size:1.1rem;margin-bottom:1rem;margin-top:0}.swot-box ul{margin:0;padding-left:1.5rem}.swot-box li{color:#9ca3af;color:var(--text-secondary);margin-bottom:.5rem}.swot-summary{border-left:4px solid #2979ff;border-left:4px solid var(--accent-blue);padding:1.5rem}.moat-container,.swot-summary{background:#23263a;background:var(--card-bg);border-radius:8px;border-radius:var(--border-radius)}.moat-container{padding:2rem}.moat-header{border-bottom:1px solid #404552;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.moat-header div{align-items:center;display:flex;flex-direction:column}.moat-header span{color:#64748b;color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.moat-header strong{color:#2979ff;color:var(--accent-blue);font-size:1.5rem}.moat-factor{margin-bottom:1.5rem}.moat-factor h5{color:#f3f6fb;color:var(--text-color);margin:0 0 .5rem}.moat-factor p{color:#9ca3af;color:var(--text-secondary);margin:0}.moat-verdict{border-top:1px solid #404552;border-top:1px solid var(--border-color);margin-top:2rem;padding-top:1rem}.grades-commentary{grid-gap:1.5rem;display:grid;gap:1.5rem}.commentary-section{background:#23263a;background:var(--card-bg);border-radius:8px;border-radius:var(--border-radius);padding:1.5rem}.commentary-section h4{color:#2979ff;color:var(--accent-blue);margin-top:0}.overall-verdict{background:linear-gradient(135deg,#23263a,#181a20);background:linear-gradient(135deg,var(--secondary-bg),var(--primary-bg));border:1px solid #2979ff;border:1px solid var(--accent-blue);border-radius:8px;border-radius:var(--border-radius);padding:2rem;text-align:center}.overall-verdict h4{color:#2979ff;color:var(--accent-blue);font-size:1.2rem;margin-top:0}.overall-verdict p{font-size:1.1rem;font-weight:500}.table-container{background:var(--primary-bg);border:1px solid #404552;border-radius:16px;box-shadow:0 10px 40px #0009;padding:20px}.projection-table{margin:0 auto;max-width:1400px}.projection-table table{background:#0000;border-collapse:collapse;margin-top:30px;table-layout:fixed;width:100%}.projection-table td,.projection-table th{border:1px solid #444;font-size:14px;font-weight:500;padding:14px 16px;text-align:center}.projection-table th{background:var(--accent-gradient);border-radius:8px 8px 0 0;color:#fff;font-size:18px;font-weight:700;position:relative}.metric-label{border-left:4px solid #4ade80;min-width:200px;padding:14px 16px;text-align:left}.metric-label,.projection-table td input{background:var(--primary-bg);color:#e0e0e0;font-size:14px}.projection-table td input{border:2px solid #404552;border-radius:4px;box-sizing:border-box;font-weight:600;outline:none;padding:14px;text-align:center;transition:all .3s ease;width:100%}.projection-table td input:hover{background:var(--secondary-bg);border-color:#4ade80;box-shadow:0 6px 20px #4ade804d;transform:translateY(-2px)}.projection-table td input:focus{background:var(--secondary-bg);border-color:#4ade80;box-shadow:0 0 0 3px #4ade804d;color:#fff;transform:scale(1.02);z-index:10}.projection-table td input::placeholder{color:#a0a0a0}.calculated{background:var(--primary-bg);border:1px solid #404552;color:#e0e0e0;font-style:italic;font-weight:500;padding:14px;position:relative;text-align:center}.revenue-row .metric-label{border-left:4px solid #4ade80}.growth-row .metric-label{border-left:4px solid #3b82f6}.margin-row .metric-label{border-left:4px solid #8b5cf6}.share-row .metric-label{border-left:4px solid #f87171}.ratio-row .metric-label{border-left:4px solid #4ade80}.historical-year{background:var(--accent-gradient);color:#fff}.historical-data{background:var(--primary-bg);border:1px solid #404552;color:#e0e0e0}@media (max-width:768px){.metric-label,.projection-table table{font-size:12px}.metric-label{min-width:150px}.projection-table td,.projection-table th{padding:10px 8px}.projection-table td input{font-size:12px;padding:10px}.calculated{padding:10px}.legend{flex-direction:column;gap:15px}}.legend{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 10px 40px #0009;display:flex;gap:30px;justify-content:center;margin-top:20px;padding:15px}.legend-item{color:#fff;font-size:14px;font-weight:500}.legend-box{align-items:center;border-radius:4px;display:flex;font-size:12px;height:20px;justify-content:center;width:20px}.income-charts-row{display:flex;gap:24px;margin-bottom:32px}.price-history-chart-container{margin-bottom:0}.price-history-chart-container,.revenue-netincome-chart-container{background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;padding:16px}.revenue-netincome-chart-container{height:360px}@media (max-width:900px){.income-charts-row{flex-direction:column;gap:18px}.price-history-half,.revenue-netincome-half{margin:0}.price-history-chart-container,.revenue-netincome-chart-container{height:260px;padding:10px}}.growth-charts-row{display:flex;gap:24px;margin-bottom:0}.growth-chart-half{flex:1 1;min-width:0}.growth-chart-full{flex:1 1 100%;min-width:0}@media (max-width:900px){.growth-charts-row{flex-direction:column;gap:0}}.quality-charts-row{display:flex;gap:24px;margin-bottom:0}.quality-chart-half{flex:1 1;min-width:0}@media (max-width:900px){.quality-charts-row{flex-direction:column;gap:0}}.combined-charts-section{margin-top:24px}.primary-charts-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}@media (min-width:1600px){.primary-charts-row{grid-template-columns:repeat(3,1fr)}}@media (max-width:1200px){.primary-charts-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.primary-charts-row{grid-template-columns:1fr}}.financial-statements{margin:0 auto;max-width:1400px;padding:20px}.financial-statements h2{color:#fff;font-size:2.2rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}.financial-table-container{margin-bottom:40px}.balance-chart-container,.cashflow-chart-container,.income-chart-container{background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;height:360px;margin:20px 0 40px;padding:16px}.financial-table-container h3{color:#fff;font-size:1.5rem;margin-bottom:20px;text-align:center}@media (max-width:768px){.table-wrapper.scrolled:before,.table-wrapper:after{opacity:1}.table-wrapper.at-end:after{opacity:0}}.financial-table{border-collapse:collapse;font-size:14px;table-layout:auto;width:100%}.financial-table th{background:var(--accent-gradient);border:1px solid #ffffff1a;color:#fff;font-size:14px;font-weight:700;padding:15px 12px;position:-webkit-sticky;position:sticky;text-align:center;top:0;z-index:10}.financial-table td:not(.metric-label),.financial-table th:not(:first-child){min-width:140px;padding:12px 16px;white-space:nowrap}.financial-table td{font-feature-settings:"tnum";border:1px solid #ffffff1a;color:#fff;font-size:14px;font-variant-numeric:tabular-nums;padding:14px 16px;text-align:center}.metric-label{background:#ffffff1a!important;color:#fff!important;font-weight:700;max-width:220px;min-width:220px;overflow:hidden;padding-left:18px!important;padding-right:12px!important;text-align:left!important;text-overflow:ellipsis;white-space:nowrap;width:220px}.metric-header{max-width:220px;max-width:200px;min-width:220px;min-width:200px;padding:15px 18px;padding-left:15px!important;text-align:left!important;width:220px;width:200px}.metric-header,.year-header{background:var(--accent-gradient);border:1px solid #ffffff1a;color:#fff;font-size:14px;font-weight:700;position:-webkit-sticky;position:sticky;top:0;z-index:10}.year-header{padding:15px 12px;text-align:center}.year-cell{border:1px solid #ffffff1a;color:#fff;padding:12px 8px;text-align:center}.currency-cell{color:#e8f5e8;font-weight:700}.error-message,.loading-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;margin:20px 0;padding:30px;text-align:center}.error-message p{color:#ff6b6b;font-size:1.2rem;margin-bottom:15px}.statement-content{animation:fadeIn .5s ease-in}.income-charts-grid{margin-top:16px}.income-charts-grid .charts-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.income-charts-grid .metric-chart-card{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;padding:12px 12px 8px}.income-charts-grid .metric-chart-card h4{color:#e5e7eb;font-size:.9rem;margin:0 0 8px}.income-charts-grid .chart-wrapper{height:360px;position:relative;width:100%}@media (max-width:1200px){.income-charts-grid .charts-container{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.income-charts-grid .charts-container{grid-template-columns:1fr}}.cashflow-charts-grid{margin-top:16px}.cashflow-charts-grid .charts-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.cashflow-charts-grid .metric-chart-card{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;padding:12px 12px 8px}.cashflow-charts-grid .metric-chart-card h4{color:#e5e7eb;font-size:.9rem;margin:0 0 8px}.cashflow-charts-grid .chart-wrapper{height:360px;position:relative;width:100%}@media (max-width:1200px){.cashflow-charts-grid .charts-container{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.cashflow-charts-grid .charts-container{grid-template-columns:1fr}}.balance-charts-grid{margin-top:16px}.balance-charts-grid .charts-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.balance-charts-grid .metric-chart-card{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;padding:12px 12px 8px}.balance-charts-grid .metric-chart-card h4{color:#e5e7eb;font-size:.9rem;margin:0 0 8px}.balance-charts-grid .chart-wrapper{height:360px;position:relative;width:100%}@media (max-width:1200px){.balance-charts-grid .charts-container{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.balance-charts-grid .charts-container{grid-template-columns:1fr}.financial-statements{padding:10px}.financial-statements h2{font-size:1.8rem}.statement-tabs{align-items:center;flex-direction:column}.tab-button{margin-bottom:5px;width:200px}.table-wrapper{overflow-x:auto;padding-bottom:10px}.table-wrapper:before{display:none}.financial-table{font-size:13px;min-width:800px}.financial-table td:not(.metric-label),.financial-table th:not(:first-child){min-width:130px;padding:10px 12px}.metric-label{padding-right:8px!important}.metric-header,.metric-label{font-size:12px;max-width:160px;min-width:160px;padding-left:12px!important;width:160px}}@media (max-width:480px){.financial-table{font-size:12px;min-width:650px}.financial-table td:not(.metric-label),.financial-table th:not(:first-child){min-width:120px;padding:10px}.metric-header,.metric-label{max-width:140px;min-width:140px;padding-left:10px!important;width:140px}}.cache-status{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--primary-bg);border:1px solid #404552;border-radius:25px;box-shadow:0 10px 40px #0009;gap:15px;justify-content:center;margin-bottom:20px;padding:10px 20px}.cache-indicator,.cache-status{align-items:center;display:flex}.cache-indicator{border-radius:15px;font-size:14px;font-weight:700;gap:5px;padding:5px 15px}.cache-indicator.cached{background:var(--success-gradient);color:#fff}.cache-indicator.fresh{background:var(--info-gradient);color:#fff}.clear-cache-button{background:var(--accent-gradient);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:12px;font-weight:700;padding:8px 16px;transition:all .3s ease}.clear-cache-button:hover{box-shadow:0 5px 15px #0000004d;transform:translateY(-2px)}.balance-charts-grid h3,.cashflow-charts-grid h3,.earnings-charts-grid h3{color:#fff;font-size:1.8rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}@media (max-width:1400px){.charts-container{gap:12px;grid-template-columns:repeat(3,1fr)}}@media (max-width:1200px){.charts-container{gap:12px;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.charts-container{gap:10px;grid-template-columns:repeat(1,1fr)}.metric-chart-card{padding:12px}.chart-wrapper{height:240px}.metric-chart-card h4{font-size:1rem;margin-bottom:8px}}@media (max-width:480px){.charts-container{gap:10px;grid-template-columns:1fr}.metric-chart-card{padding:10px}.chart-wrapper{height:220px}}.chart-wrapper{height:360px;position:relative}.combined-charts-section,.individual-charts-section{margin-top:30px}.combined-charts-section h3,.individual-charts-section h3{border-bottom:2px solid #4ade804d;color:#e0e0e0;font-size:1.4rem;margin-bottom:20px;padding-bottom:10px;text-align:left}.individual-charts-section{border-top:1px solid #ffffff1a;padding-top:30px}.statements-header{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;margin-bottom:24px;padding:16px 20px}.statements-header h2{color:#fff;font-size:1.3rem;font-weight:600;letter-spacing:.5px;margin:0}.chart-period-toggle{justify-content:flex-end;margin-bottom:16px;margin-top:24px}.financial-period-toggle{background:#1a1d29;border-radius:8px;box-shadow:0 2px 8px #0000004d;gap:8px;padding:4px}@media (max-width:768px){.chart-period-toggle{justify-content:center}.financial-period-toggle{width:100%}.period-button{flex:1 1}}.chart-with-toggle-container{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 4px 12px #0000004d;margin-bottom:24px;padding:16px}.chart-with-toggle-container.compact{margin-left:auto;margin-right:auto;max-width:1200px;padding:10px}.chart-with-toggle-container.compact .chart-info h4{font-size:.95rem}.chart-with-toggle-container.compact .chart-info p{font-size:.75rem}.chart-with-toggle-container.compact .chart-toggle-header{margin-bottom:12px}.chart-with-toggle-container.compact .charts-container{gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:10px}.chart-with-toggle-container.compact .metric-chart-card{padding:10px}.chart-with-toggle-container.compact .metric-chart-card h4{font-size:.9rem;margin-bottom:8px;padding-bottom:4px}.chart-with-toggle-container.compact .chart-wrapper{height:120px}.chart-toggle-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.chart-info{flex:1 1}.chart-info h4{color:#e0e0e0;font-size:1.1rem;font-weight:600;margin:0 0 8px}.chart-info p{color:#94a3b8;font-size:.85rem;line-height:1.4;margin:0}.chart-period-selector{background:#1a1d29;border-radius:6px;display:flex;flex-shrink:0;gap:4px;padding:3px}.chart-period-btn{background:#0000;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 16px;transition:all .2s ease;white-space:nowrap}.chart-period-btn:hover{background:#4ade801a;color:#4ade80}.chart-period-btn.active{background:#4ade80;color:#0f1219;font-weight:600}.chart-period-btn:focus{outline:none}@media (max-width:768px){.chart-toggle-header{align-items:stretch;flex-direction:column}.chart-period-selector{width:100%}.chart-period-btn{flex:1 1}}.earnings{margin:0 auto;max-width:1400px;padding:20px}.earnings h2{color:#fff;font-size:2.2rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}.cache-controls{gap:20px;justify-content:center;margin-bottom:20px}.cache-status{color:#e0e0e0;font-size:14px;opacity:.8}.no-data-message{background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;padding:50px 20px}.no-data-message h2{color:#e0e0e0;font-size:1.8rem;margin-bottom:20px}.no-data-message p{color:#a0a0a0;font-size:1.2rem;opacity:.8}.no-data-message .info-note{background:#3b82f61a;border-left:3px solid #3b82f6;border-radius:8px;color:#93c5fd;font-size:1rem;margin-left:auto;margin-right:auto;margin-top:15px;max-width:600px;padding:15px;text-align:left}.statement-tabs{flex-wrap:wrap;gap:10px;margin-bottom:30px}.statement-tabs,.view-toggle{display:flex;justify-content:center}.view-toggle{gap:8px;margin-bottom:12px}.tab-button{background:var(--primary-bg);border:2px solid #404552;border-radius:25px;color:#e0e0e0;cursor:pointer;font-size:14px;font-weight:700;padding:12px 30px;transition:all .3s ease}.tab-button:hover{background:var(--secondary-bg)}.tab-button.active,.tab-button:hover{border-color:#404552;color:#fff;transform:translateY(-2px)}.tab-button.active{background:var(--accent-gradient);box-shadow:0 5px 15px #16a34a66}.earnings-table-container{margin-bottom:40px}.earnings-table-container h3{color:#fff;font-size:1.5rem;margin-bottom:20px;text-align:center}.table-section{margin-bottom:30px}.table-section h4{border-bottom:2px solid #ffffff4d;color:#fff;font-size:1.2rem;margin-bottom:15px;padding-bottom:5px}.table-wrapper{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;margin-bottom:20px;overflow:hidden;overflow-x:auto;position:relative;scroll-behavior:smooth}.table-wrapper:after,.table-wrapper:before{bottom:0;content:"";opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:30px;z-index:2}.table-wrapper:before{background:linear-gradient(90deg,#1a1e26f2,#0000);left:0}.table-wrapper:after{background:linear-gradient(270deg,#1a1e26f2,#0000);right:0}@media (max-width:768px){.table-wrapper:after{opacity:1}}.earnings-table{border-collapse:collapse;font-size:13px;width:100%}.earnings-table th{background:#ffffff1a;border-bottom:1px solid #fff3;color:#fff;font-weight:700;padding:15px 10px;text-align:left}.earnings-table td{border-bottom:1px solid #ffffff1a;color:#fff;padding:12px 10px}.earnings-table tr:nth-child(2n){background:#ffffff05}.earnings-table tr:hover{background:#ffffff0d}.date-cell{color:#4ecdc4;font-weight:500}.currency-cell,.percentage-cell{font-family:Courier New,monospace;font-weight:500;text-align:right}.percentage-cell.positive{color:#4ade80}.percentage-cell.negative{color:#f87171}.number-cell{font-weight:500;text-align:center}.loading-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;margin:20px 0;padding:40px 20px;text-align:center}.loading-message p{color:#fff;font-size:1.2rem;margin:0}.error-message{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--primary-bg);border:1px solid #f87171;border-radius:15px;box-shadow:0 10px 40px #0009;margin:20px 0;padding:20px;text-align:center}.error-message p{color:#f87171;font-size:1.1rem;margin:0 0 15px}.retry-button{background:var(--accent-gradient);border:none;border-radius:25px;color:#fff;cursor:pointer;font-weight:700;padding:10px 20px;transition:all .3s ease}.retry-button:hover{box-shadow:0 5px 15px #0000004d;transform:translateY(-2px)}.statement-content{animation:fadeIn .5s ease-in-out}@media (max-width:768px){.earnings{padding:10px}.earnings h2{font-size:1.8rem}.statement-tabs{align-items:center;flex-direction:column}.tab-button{margin-bottom:10px;width:200px}.period-toggle{align-items:center;flex-direction:column}.period-button{margin-bottom:8px;width:150px}.table-view-toggle{align-items:center;flex-direction:column}.toggle-button{margin-bottom:10px;width:180px}.table-wrapper{overflow-x:auto;padding-bottom:10px}.table-wrapper:before{display:none}.earnings-table{font-size:11px;min-width:650px}}.period-toggle{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:15px}.period-button{background:var(--primary-bg);border:2px solid #404552;border-radius:18px;color:#fff;font-size:12px;font-weight:700;transition:all .3s ease}.period-button:hover{background:var(--secondary-bg)}.period-button.active,.period-button:hover{border-color:#404552;transform:translateY(-1px)}.period-button.active{background:var(--accent-gradient);box-shadow:0 3px 8px #16a34a66}.period-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.period-button:disabled:hover{background:#ffffff1a;transform:none}.table-view-toggle{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}.toggle-button{border:2px solid #404552;border-radius:20px;color:#fff;font-size:13px;font-weight:700;padding:10px 25px;transition:all .3s ease}.toggle-button:hover:not(:disabled){background:var(--secondary-bg);border-color:#404552;transform:translateY(-2px)}.toggle-button.active{background:var(--accent-gradient);border-color:#404552;box-shadow:0 5px 15px #16a34a66;transform:translateY(-2px)}.toggle-button:disabled{border-color:#ffffff1a;cursor:not-allowed;opacity:.4}.toggle-button:disabled,.toggle-button:disabled:hover{background:#ffffff0d;transform:none}.integrated-tabs{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:15px;padding:10px}.integrated-tab{background:var(--primary-bg);border:2px solid #404552;border-radius:18px;color:#e0e0e0;cursor:pointer;font-size:12px;font-weight:700;min-width:80px;padding:8px 20px;text-align:center;transition:all .3s ease}.integrated-tab:hover:not(.disabled){background:var(--secondary-bg);border-color:#404552;color:#fff;transform:translateY(-1px)}.integrated-tab.active{background:var(--accent-gradient);border-color:#404552;box-shadow:0 3px 8px #16a34a66;color:#fff;transform:translateY(-1px)}.integrated-tab.disabled{border-color:#ffffff1a;cursor:not-allowed;opacity:.4}.integrated-tab.disabled,.integrated-tab.disabled:hover{background:#ffffff0d;color:#888;transform:none}.chart-note{background:#ffc1071a;border:1px solid #ffc1074d;border-radius:8px;color:#fff3cd;font-size:13px;font-style:italic;margin-bottom:15px;padding:8px 16px;text-align:center}.chart-note p{margin:0;opacity:.9}.earnings-chart-container{margin-bottom:30px}.earnings-chart-container .chart-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.earnings-chart-container .chart-header h3{color:#fff;flex:1 1;font-size:1.5rem;margin:0;min-width:250px}.chart-period-toggle{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:8px;padding:4px}.period-toggle-btn{background:var(--primary-bg);border:2px solid #404552;border-radius:10px;color:#e0e0e0;cursor:pointer;font-size:12px;font-weight:700;min-width:90px;padding:8px 20px;text-align:center;transition:all .3s ease}.period-toggle-btn:hover:not(:disabled){background:var(--secondary-bg);border-color:#404552;color:#fff;transform:translateY(-1px)}.period-toggle-btn.active{background:var(--accent-gradient);border-color:#404552;box-shadow:0 3px 8px #16a34a66;color:#fff;transform:translateY(-1px)}.period-toggle-btn.disabled,.period-toggle-btn:disabled{background:#ffffff08;border-color:#ffffff14;color:#666;cursor:not-allowed;opacity:.3;transform:none}.period-toggle-btn.disabled:hover,.period-toggle-btn:disabled:hover{background:#ffffff08;color:#666;transform:none}.no-chart-data{color:#fff;font-size:1.1rem;opacity:.7;text-align:center}.analysis-dashboard{display:flex;flex-direction:column;gap:2rem}.analysis-header{align-items:flex-end;display:flex;justify-content:space-between}.analysis-period-toggle{align-items:center;display:flex;gap:.75rem}.analysis-period-label{color:#9ca3af;font-size:.85rem}.analysis-period-buttons{background-color:#111827;border:1px solid #020617;border-radius:999px;display:inline-flex;padding:2px}.analysis-period-button{background:#0000;border:none;border-radius:999px;color:#9ca3af;cursor:pointer;font-size:.85rem;padding:4px 12px;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.analysis-period-button:hover{background-color:#111827}.analysis-period-button.active{background-color:#22c55e;box-shadow:0 0 0 1px #16a34a;color:#020617;font-weight:600}.analysis-period-button:focus{box-shadow:0 0 0 2px #3b82f699;outline:none}.analysis-subtitle{color:#9ca3af;font-size:.9rem;margin-top:.25rem}.analysis-section{margin-top:.5rem}.analysis-section-title{font-size:1.1rem;margin-bottom:.75rem}.analysis-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.estimates-grid-two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-card{background:#020617;border:1px solid #1f2937;border-radius:.75rem;display:flex;flex-direction:column;min-width:0;padding:.75rem .75rem .5rem}.analysis-card-chart{height:260px;position:relative;width:100%}.analysis-empty-state{background:#020617;border:1px dashed #1f2937;border-radius:.75rem;color:#9ca3af;padding:2rem 1.5rem;text-align:center}@media (max-width:768px){.analysis-grid{grid-template-columns:repeat(2,1fr)}}.cashflow-summary-chart-container{display:flex;flex-direction:column;height:100%}.cashflow-summary-header{display:flex;justify-content:flex-end;margin-bottom:8px}.cashflow-summary-chart-inner{flex:1 1;min-height:260px}.overview-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px;padding:24px 0;position:relative}.overview-header:after,.overview-header:before{content:none}.header-left{display:flex;flex-direction:column;gap:12px;position:relative;z-index:5}.ticker-name-block{align-items:center;display:flex;flex-direction:row;gap:16px}.company-name-row{gap:8px}.company-name-row,.company-ratings-inline{align-items:center;display:flex}.stock-logo-wrapper{height:64px;width:64px}.company-logo{object-fit:contain}.company-logo,.company-logo-fallback{border-radius:8px;height:64px;width:64px}.company-logo-fallback{align-items:center;background:linear-gradient(135deg,#3b82f633,#6366f133);border:2px solid #6366f14d;color:#a5b4fc;display:flex;font-size:1.8rem;font-weight:700;justify-content:center;text-transform:uppercase}.company-ticker{margin:0}.ratings-snapshot{align-items:flex-start;background:#0f172ae6;border:1px solid #94a3b880;border-radius:999px;display:inline-flex;flex-direction:column;font-size:.75rem;gap:2px;line-height:1;padding:4px 10px}.ratings-chip-label{color:#9ca3af;letter-spacing:.06em;text-transform:uppercase}.ratings-chip-value{font-size:1.05rem;font-weight:700;letter-spacing:.03em}.ratings-chip-main{align-items:baseline;display:flex;gap:6px}.ratings-chip-meta{align-items:center;display:flex;gap:6px}.ratings-chip-sub{color:#9ca3af;font-size:.7rem}.ratings-chip-descriptor{background:#0f172ae6;border:1px solid #94a3b880;border-radius:999px;font-size:.7rem;letter-spacing:.06em;padding:2px 6px;text-transform:uppercase}.ratings-chip-na{color:#9ca3af}.ratings-snapshot-neutral{border-color:#94a3b899}.ratings-snapshot-score-1{background:linear-gradient(90deg,#7f1d1de6,#0f172af2);border-color:#f87171d9}.ratings-snapshot-score-2{background:linear-gradient(90deg,#b91c1cbf,#0f172af2);border-color:#f87171b3}.ratings-snapshot-score-3{background:linear-gradient(90deg,#1e40afb3,#0f172af2);border-color:#94a3b8bf}.ratings-snapshot-score-4{background:linear-gradient(90deg,#166534cc,#0f172af2);border-color:#4ade80b3}.ratings-snapshot-score-5{background:linear-gradient(90deg,#047857e6,#0f172af2);border-color:#22c55ee6}.company-meta{color:#94a3b8bf;font-size:.8rem;letter-spacing:.35px;text-transform:uppercase}.header-right{gap:16px;position:relative;z-index:1}.header-right,.watchlist-controls{align-items:flex-end;display:flex;flex-direction:column}.watchlist-controls{gap:8px}.watchlist-bar{align-items:center;display:flex;gap:12px}.watchlist-pill-group{align-items:center;background:#0f172ae6;border:1px solid #334155e6;border-radius:999px;display:flex;gap:6px;padding:4px 8px}.watchlist-select-row{align-items:center;display:flex;gap:8px}.watchlist-label{color:#94a3b8e6;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.watchlist-pill-button{align-items:center;display:flex;padding:0;position:relative}.watchlist-pill-button,.watchlist-select-native{background:#0000;border:none;border-radius:999px}.watchlist-select-native{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:#e5e7eb;cursor:pointer;font-size:.8rem;padding:2px 18px 2px 8px}.watchlist-select-native:focus{outline:none}.watchlist-pill-secondary{background:#0f172a99;border:1px solid #94a3b880;border-radius:999px;color:#e5e7eb;cursor:pointer;font-size:.75rem;padding:2px 10px}.watchlist-new-row{display:flex;gap:8px}.watchlist-new-input{background:#0f172ab3;border:1px solid #334155e6;border-radius:999px}.watchlist-new-button,.watchlist-new-input{color:#e5e7eb;font-size:.8rem;padding:4px 10px}.watchlist-new-button{background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:999px;cursor:pointer}.watchlist-new-button:disabled{cursor:default;opacity:.5}.watchlist-toggle-button{background:#0f172acc;border:1px solid #94a3b899;border-radius:999px;color:#e5e7eb;cursor:pointer;font-size:.8rem;padding:6px 14px}.watchlist-toggle-button.active{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#0000;color:#022c22}.watchlist-error-text{color:#f97373;font-size:.75rem}.header-price-block{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.current-price{color:#4ade80;font-size:2.4rem;font-weight:700;line-height:1}.price-change{font-size:.95rem;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.price-change.up{color:#4ade80}.price-change.down{color:#f87171}.price-change.flat{color:#94a3b8}.header-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,auto);justify-items:end}.stat-item{align-items:flex-end;display:flex;flex-direction:column;gap:4px;min-width:90px}.stat-label{color:#94a3b8cc;font-size:.7rem;letter-spacing:.5px}.stat-value{color:#e2e8f0;font-size:1.05rem;font-weight:600}.header-volume-row{display:flex;gap:24px;margin-top:8px}.header-volume-item{align-items:flex-end;display:flex;flex-direction:column}.header-marketcap-row .label,.header-volume-item .label{color:#94a3b8cc;font-size:.7rem;letter-spacing:.5px;text-transform:uppercase}.header-marketcap-row .value,.header-volume-item .value{color:#e2e8f0;font-size:1rem;font-weight:600}.header-marketcap-row{margin-top:8px}.stock-price-with-metrics{grid-gap:18px;align-items:stretch;display:grid;gap:18px;grid-template-columns:minmax(0,2.4fr) minmax(260px,1.2fr)}.stock-price-chart-panel{display:flex;flex-direction:column}.stock-price-metrics-panel{align-items:stretch;display:flex}.price-metrics-card-combined{background:linear-gradient(135deg,#0f172af5,#111827f5 40%,#1e40afe6);border:1px solid #94a3b82e;border-radius:16px;box-shadow:0 18px 40px #0f172a8c;display:flex;flex:1 1;flex-direction:column;gap:12px;padding:20px 24px 18px}.price-metrics-row{display:flex;gap:14px;justify-content:space-between}.main-price-row{align-items:flex-start}.metrics-price-main{align-items:baseline;display:flex;flex-direction:row;gap:12px}.metrics-current-price{color:#4ade80;font-size:2.4rem;font-weight:700}.metrics-price-change{font-size:.95rem}.metrics-volume-block{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.metrics-block .metric-label,.metrics-volume-item .label{color:#94a3b8cc;font-size:.7rem;letter-spacing:.5px;text-transform:uppercase}.metrics-block .metric-value,.metrics-volume-item .value{color:#e2e8f0;font-size:1rem;font-weight:600}.metric-diff{font-size:.85rem;margin-top:4px}.metric-diff.positive{color:#4ade80}.metric-diff.negative{color:#f97373}.metrics-block{display:flex;flex-direction:column;gap:2px}.metrics-row-grid{grid-gap:6px 18px;display:grid;gap:6px 18px;grid-template-columns:repeat(6,minmax(0,1fr))}.price-metric-item{display:flex;flex-direction:column;gap:2px;padding:4px 0 5px;position:relative}.price-metric-item .label{color:#94a3b8e6;font-size:.68rem;letter-spacing:.45px;text-transform:uppercase}.price-metric-item .value{color:#e2e8f0;font-size:1.15rem;font-weight:650;line-height:1.35;min-height:1.4em}.price-metric-item .sub{color:#94a3b8d9;font-size:.68rem}.price-metric-item .sub.positive{color:#4ade80}.price-metric-item .sub.negative{color:#f97373}@media (max-width:1024px){.stock-price-with-metrics{grid-template-columns:minmax(0,1fr)}.stock-price-metrics-panel{order:-1}}.overview-left{display:flex;flex-direction:column;gap:10px}.overview-title-block{display:flex;flex-direction:column;gap:4px}.price-cluster{align-items:baseline;display:flex;gap:12px}.price-now{color:#4ade80;font-size:1.6rem;font-weight:700}.micro-stats{display:flex;flex-wrap:wrap;gap:16px}.micro-item{align-items:baseline;color:#94a3b8;display:flex;gap:6px}.micro-item strong{color:#e5e7eb;font-weight:700}.header-metric-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.badge{align-items:baseline;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:9999px;display:flex;gap:6px;padding:6px 10px}.badge-label{color:#94a3b8;font-size:.7rem;letter-spacing:.4px;text-transform:uppercase}.badge-value{color:#e5e7eb;font-size:.95rem;font-weight:700}.badge-subtle{color:#94a3b8;font-size:.7rem}.overview-right-panel{grid-gap:10px 18px;background:var(--primary-bg);border:1px solid #404552;border-radius:10px;display:grid;gap:10px 18px;grid-template-columns:repeat(2,minmax(180px,1fr));padding:12px 16px}.panel-row{align-items:center;display:flex;justify-content:space-between}.panel-label{color:#94a3b8;font-size:.75rem;letter-spacing:.4px;text-transform:uppercase}.panel-value{color:#e5e7eb;font-size:1rem;font-weight:600}.company-ticker{color:#f8fafc;font-size:3rem;font-weight:800;letter-spacing:2px;text-transform:uppercase}.company-name{color:#cbd5f5;font-size:1.1rem;font-weight:500;letter-spacing:.4px}.overview-key-metrics{display:none}.overview-company-profile-row{margin-bottom:0;margin-top:0}.overview-company-profile{min-width:0}.growth-forward-band{background:linear-gradient(135deg,#0f172af5,#111827f5 40%,#1e40afe6);border:1px solid #94a3b82e;border-radius:18px;box-shadow:0 18px 40px #0f172a8c;margin-bottom:24px;margin-top:0;padding:18px 24px 16px}.band-header-row{margin-bottom:8px}.band-title{color:#bfdbfee6;font-size:.82rem;letter-spacing:.4px;text-transform:uppercase}.band-metrics-row{grid-gap:6px 18px;display:grid;gap:6px 18px;grid-template-columns:repeat(6,minmax(0,1fr))}.overview-forward-growth-item{display:flex;flex-direction:column;gap:2px;padding:4px 0 5px;position:relative}.overview-forward-growth-item .label{color:#94a3b8e6;font-size:.68rem;letter-spacing:.45px;text-transform:uppercase}.overview-forward-growth-item .value{font-size:1.15rem;font-weight:650;line-height:1.35;min-height:1.4em}.overview-forward-growth-item .sub{color:#94a3b8d9;font-size:.68rem}.traffic-good{color:#4ade80}.traffic-neutral{color:#e5e7eb}.traffic-bad{color:#f97373}@media (max-width:1024px){.overview-forward-growth-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.overview-forward-growth{padding:14px 14px 12px}.overview-forward-growth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.key-metric{align-items:flex-start;display:flex;flex-direction:column;gap:4px}.key-metric-label{color:#94a3b8;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.key-metric-value{color:#fff;font-size:1.1rem;font-weight:600}.key-metric-value.price{color:#4ade80;font-size:1.3rem}.top-metrics-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin-bottom:24px;overflow:visible}.metric-section{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#0f172aeb,#080f1ee6);border:1px solid #94a3b824;border-radius:18px;box-shadow:0 18px 32px #080f234d;overflow:visible;padding:24px}.metric-section-title{color:#e2e8f0e6;font-size:1.1rem;font-weight:600;letter-spacing:.6px;margin-bottom:18px;text-transform:uppercase}.metric-with-bar{margin-bottom:16px}.metric-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.metric-label-new{color:#e0e0e0;font-size:.9rem;font-weight:500}.metric-value-new{color:#fff;font-size:1rem;font-weight:700}.comparison-bar-container{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}.comparison-bar{border-radius:3px;height:100%;transition:width .3s ease}.chart-controls{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.edit-button,.reset-button{background:var(--primary-bg);border:1px solid #404552;border-radius:8px;color:#60a5fa;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.edit-button:hover,.reset-button:hover{background:#2a2d42;border-color:#60a5fa}.toggle-buttons{border:1px solid #404552;border-radius:8px;display:flex;gap:0;overflow:hidden}.toggle-button{background:var(--primary-bg);border:none;border-right:1px solid #404552;color:#e0e0e0;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 32px;transition:all .2s ease}.toggle-button:last-child{border-right:none}.toggle-button.active{background:#60a5fa;color:#fff}.toggle-button:hover:not(.active){background:#2a2d42}.analyst-insights-section{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#1e40af4d,#6b21a84d);border:1px solid #3b82f659;border-radius:18px;box-shadow:0 22px 44px #1e40af40;display:flex;flex-direction:column;gap:24px;margin-bottom:24px;margin-top:0;padding:28px}.analyst-insights-section .analyst-section-title{align-items:center;color:#e2e8f0e6;display:flex;font-size:1rem;font-weight:600;gap:10px;margin-bottom:0}.analyst-insights-section .analyst-section-title:before{content:"💡";font-size:1.1rem}.analyst-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.analyst-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172a8c;border:1px solid #94a3b81f;border-radius:16px;box-shadow:0 16px 28px #080f2340;display:flex;flex-direction:column;gap:12px;padding:18px 20px}.analyst-card-header{margin-bottom:8px}.analyst-icon{font-size:1rem}.analyst-card-header h4{color:#64748b;font-size:.85rem}.target-price-main{gap:10px}.target-price-value{font-size:1.85rem;line-height:1}.target-price-change{background:#0000;border-radius:0;font-size:.85rem;padding:0}.target-price-change.negative,.target-price-change.positive{background:#0000}.current-price-label{color:#64748b;font-size:.75rem}@media (max-width:1200px){.analyst-grid,.hero-metrics{grid-template-columns:repeat(2,1fr)}.bottom-charts-row{grid-template-columns:1fr}}@media (max-width:800px){.analyst-grid,.hero-metrics,.key-financials{grid-template-columns:1fr}.overview-header{align-items:flex-start;flex-direction:column;gap:24px;margin:-28px -28px 24px;padding:28px}.header-right{width:100%}.header-price-block,.header-right{align-items:flex-start}.header-stats-grid{gap:16px;grid-template-columns:repeat(2,minmax(120px,1fr));width:100%}.stat-item{align-items:flex-start}}@media (max-width:520px){.header-stats-grid{gap:12px;grid-template-columns:1fr}.current-price{font-size:2.8rem}}.hero-metrics{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin:0 0 24px}.hero-tile{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#1e293bf2,#0f172af0);border:1px solid #94a3b829;border-radius:18px;box-shadow:0 18px 32px #080f2359;display:flex;flex-direction:column;gap:8px;padding:22px}.hero-tile .hero-label{color:#94a3b8d9;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.hero-tile .hero-value{color:#fff;font-size:2.15rem;font-weight:700;line-height:1}.hero-caption{color:#94a3b8b3;font-size:.72rem;margin-top:3px}.accent-amber{color:#fbbf24}.accent-green{color:#4ade80}.trend-icon{display:inline-block;font-size:1.1rem;margin-left:6px;opacity:.8}.hero-tile.good{border-color:#4ade804d}.hero-tile.neutral{border-color:#60a5fa33}.hero-tile.bad{border-color:#ef44444d}.quick-signal-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.quick-signal-badges .badge{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a80;border:1px solid #94a3b833;border-radius:999px;font-size:.82rem;padding:6px 12px}.badge.risk.low{border-color:#4ade804d;color:#4ade80}.badge.risk.moderate{border-color:#fbbf244d;color:#fbbf24}.badge.risk.high{border-color:#ef44444d;color:#ef4444}.badge.momentum.bull{border-color:#60a5fa59;color:#60a5fa}.badge.momentum.bear{border-color:#ef444459;color:#ef4444}.badge.momentum.na{color:#94a3b8}.badge.valuation{color:#e5e7eb}.header-stats .vol-up{color:#4ade80}.header-stats .vol-down{color:#ef4444}@media (max-width:1200px){.hero-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.hero-metrics{grid-template-columns:1fr}}.key-financials{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin:0 0 24px}.kf-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(180deg,#1e293beb,#0f172ae6);border:1px solid #94a3b829;border-radius:16px;box-shadow:0 18px 32px #080f234d;padding:20px 24px}.kf-label{color:#94a3b8c7;font-size:.78rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.kf-value{color:#fff;font-size:1.8rem;font-weight:700}@media (max-width:900px){.key-financials{grid-template-columns:1fr}.price-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.price-metrics-grid{grid-template-columns:1fr}.current-price{font-size:2.4rem}.company-ticker{font-size:2.1rem}}.stock-price-section{display:flex;flex-direction:column;margin-bottom:20px;max-height:none;overflow:visible;padding:0 0 24px}.stock-price-section.full-width{margin-bottom:24px;margin-top:0;max-height:none}.stock-price-section .price-history-header{margin-bottom:20px}.stock-price-section .price-history-title{font-size:1.25rem}.timeframe-selector{background:#0f172a99;border:1px solid #94a3b82e;border-radius:10px;gap:4px;padding:4px}.timeframe-button{background:#0000;border:none;border-radius:8px;color:#94a3b8;padding:6px 14px}.timeframe-button.active{background:linear-gradient(135deg,#60a5fa,#38bdf8);box-shadow:0 8px 16px #38bdf859;color:#0b1220}.timeframe-button:hover:not(.active){background:#60a5fa1a;color:#60a5fa}.target-range-bar-wrapper{display:flex;flex-direction:column;gap:10px;margin-top:16px}.target-range-scale{color:#64748b;display:flex;font-size:.75rem;justify-content:space-between;letter-spacing:0;text-transform:none}.target-range-bar{background:linear-gradient(90deg,#ef4444,#fbbf24 50%,#4ade80);border-radius:4px;height:8px;overflow:visible;position:relative}.current-price-marker{background:#60a5fa;border-radius:2px;box-shadow:0 0 8px #60a5facc;height:20px;position:absolute;top:50%;transform:translate(-50%,-50%);width:3px}.target-range-na{color:#64748b;font-size:.8rem;margin-top:8px}.ratings-breakdown{display:flex;flex-direction:column;gap:12px}.ratings-row{display:flex;gap:12px;justify-content:space-between}.rating-block{align-items:center;background:#0000;border:none;border-radius:0;display:flex;flex:1 1;flex-direction:column;padding:0}.rating-value{font-size:1.5rem;font-weight:700;line-height:1}.rating-value.buy{color:#4ade80}.rating-value.hold{color:#fbbf24}.rating-value.sell{color:#ef4444}.rating-label{letter-spacing:.5px;margin-top:6px;text-transform:uppercase}.coverage-line,.rating-label{color:#64748b;font-size:.7rem}.coverage-line{border-top:1px solid #374151;letter-spacing:0;padding-top:8px;text-align:center;text-transform:none}.valuation-badge-wrapper{display:flex;flex-direction:column;gap:6px}.valuation-peg{color:#94a3b8;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.valuation-grade{border-radius:6px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.4px;padding:6px 10px}.valuation-grade.undervalued{background:#4ade8026;color:#4ade80}.valuation-grade.fair{background:#fbbf2426;color:#fbbf24}.valuation-grade.overvalued{background:#ef444426;color:#ef4444}.valuation-grade.na{background:#94a3b826;color:#94a3b8}.peg-note{color:#64748b;font-size:.65rem;line-height:1.3;margin-top:6px}.stock-price-section .price-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.stock-price-section .price-history-title{color:#fff;font-size:1.2rem;font-weight:600;margin:0}.price-metrics-grid{grid-gap:18px;border-top:1px solid #94a3b824;display:grid;gap:18px;grid-template-columns:repeat(4,1fr);margin-top:24px;padding-top:24px}.price-metric-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f172a8c;border:1px solid #94a3b81f;border-radius:14px;box-shadow:inset 0 0 0 1px #ffffff05;display:flex;flex-direction:column;gap:8px;padding:14px 16px}.price-metric-label{color:#94a3b8bf;font-size:.72rem;font-weight:600;letter-spacing:.45px;text-transform:uppercase}.price-metric-value{color:#fff;font-size:1.25rem;font-weight:600}.price-metric-diff{color:#4ade80;font-size:.78rem;font-weight:600}.price-metric-diff.positive{color:#4ade80}.price-metric-diff.negative{color:#ef4444}.analyst-ratings-section{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;display:flex;flex-direction:column;gap:16px;padding:20px}.analyst-section-title{color:#fff;font-size:1.2rem;font-weight:600;margin:0 0 8px}.analyst-card{background:#ffffff08;border:1px solid #ffffff1a;border-radius:8px;padding:16px}.analyst-card-header{align-items:center;display:flex;gap:8px;margin-bottom:12px}.analyst-icon{font-size:1.2rem}.analyst-card-header h4{color:#94a3b8;font-size:.95rem;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.analyst-card-content{display:flex;flex-direction:column;gap:8px}.target-price-main{align-items:baseline;display:flex;gap:12px;margin-bottom:4px}.target-price-value{color:#60a5fa;font-size:2rem;font-weight:700}.target-price-change{border-radius:4px;font-size:.95rem;font-weight:600;padding:4px 8px}.target-price-change.positive{background:#4ade801a;color:#4ade80}.target-price-change.negative{background:#ef44441a;color:#ef4444}.current-price-label{color:#94a3b8;font-size:.85rem}.peg-main-value{align-items:flex-start;display:flex;flex-direction:column;margin-bottom:8px}.peg-value{color:#fff;font-size:2rem;font-weight:700}.peg-label{color:#94a3b8;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.peg-interpretation{margin:8px 0}.peg-status{border-radius:6px;display:inline-block;font-size:.9rem;font-weight:600;padding:6px 12px}.peg-status.good{background:#4ade801a;color:#4ade80}.peg-status.neutral{background:#fbbf241a;color:#fbbf24}.peg-status.poor{background:#ef44441a;color:#ef4444}.peg-components{border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:6px;margin-top:12px;padding-top:12px}.peg-component{align-items:center;display:flex;justify-content:space-between}.peg-component-label{color:#94a3b8;font-size:.85rem}.peg-component-value{color:#fff;font-size:.9rem;font-weight:600}.analyst-metrics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.analyst-metric-small{background:#ffffff08;border:1px solid #ffffff1a;border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:12px}.metric-small-label{color:#94a3b8;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.metric-small-value{color:#fff;font-size:1.3rem;font-weight:700}.metric-small-subtle{color:#94a3b8;display:block;font-size:.7rem;letter-spacing:.4px;margin-top:2px}.timeframe-selector{gap:8px}.timeframe-button{background:var(--primary-bg);font-size:.85rem;font-weight:600;padding:8px 16px}.timeframe-button.active{background:#60a5fa;border-color:#60a5fa}.timeframe-button:hover:not(.active){background:#2a2d42;border-color:#60a5fa}.bottom-charts-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:24px;margin-top:0}.bottom-chart{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(180deg,#0f172aeb,#080f1eeb);border:1px solid #94a3b829;border-radius:16px;box-shadow:0 18px 32px #080f234d;display:flex;flex-direction:column;height:auto;max-height:none;overflow:visible;padding:24px}.bottom-chart h3{color:#fff;font-size:1rem;font-weight:600;margin:0 0 20px}.chart-placeholder{align-items:flex-start;color:#94a3b8;display:flex;flex-direction:column;height:auto;justify-content:flex-start;text-align:left}.chart-placeholder h4{color:#94a3b8;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.chart-placeholder p{color:#94a3b8;font-size:.85rem;line-height:1.6}@media (max-width:1400px){.overview-key-metrics{gap:16px}.key-metric-label{font-size:.7rem}.key-metric-value{font-size:1rem}}@media (max-width:1200px){.bottom-charts-row,.price-and-analyst-row,.top-metrics-grid{gap:16px;grid-template-columns:1fr}.stock-price-section{max-height:400px;padding:12px}.analyst-ratings-section{max-height:none}}.advanced-metrics{margin-top:16px}.advanced-toggle{background:var(--primary-bg);border:1px solid #404552;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 14px;transition:all .2s ease}.advanced-toggle:hover{background:#2a2d42;border-color:#60a5fa}.advanced-content{background:#ffffff08;border:1px solid #404552;border-radius:12px;margin-top:12px;padding:16px}@media (max-width:900px){.overview-header{align-items:flex-start;flex-direction:column;gap:16px}.overview-key-metrics{flex-wrap:wrap;gap:12px}.chart-controls{flex-direction:column;gap:12px}.toggle-buttons{width:100%}.toggle-button{flex:1 1}.peg-value,.target-price-value{font-size:1.5rem}.analyst-card{padding:12px}.analyst-section-title{font-size:1rem}.price-metrics-grid{gap:6px;grid-template-columns:repeat(2,1fr);margin-top:8px;padding-top:8px}.price-metric-card{padding:6px}.price-metric-value{font-size:.95rem}.stock-price-section{max-height:none;min-height:480px;padding:8px}.stock-price-section .price-history-header{margin-bottom:8px}.stock-price-section .price-history-title{font-size:1rem}}.metrics-container,.overview-charts-row,.overview-stats,.overview-symbol,.overview-top,.price-text,.symbol-text{display:none}.price-history-half,.revenue-netincome-half{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.price-history-half{margin-right:0}.revenue-netincome-half{margin-left:0}.revenue-netincome-chart-container{background:#0000;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;height:100%;margin-bottom:0;max-height:100%;overflow:hidden;padding:0}@media (max-width:900px){.overview-charts-row{flex-direction:column;gap:18px}.price-history-half,.revenue-netincome-half{margin:0}.revenue-netincome-chart-container{height:280px;padding:12px}}.overview{background:radial-gradient(120% 140% at 50% 0,#16213c 0,#0f172a 55%,#0b1120 100%);border:1px solid #94a3b81f;border-radius:26px;box-shadow:0 32px 80px #080f2373;color:#e2e8f0;font-family:Inter,SF Pro Display,Segoe UI,sans-serif;margin:24px 0;overflow:hidden;padding:36px;position:relative}.overview:before{background:radial-gradient(circle at center,#2563eb4d 0,#2563eb00 75%);content:"";height:260px;inset:-20% 45% auto -10%;opacity:.85;pointer-events:none;position:absolute;width:320px}.overview-symbol{align-items:flex-start;display:flex;flex-direction:column}.symbol-text{-webkit-text-fill-color:#0000;background:var(--text-gradient);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:3rem;font-weight:700;margin:0;text-shadow:0 2px 8px #00000080}.price-text{color:#94a3b8;font-size:1.8rem;font-weight:500;margin-top:8px}.overview-top{border-bottom:1px solid #404552;gap:2rem;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.overview-stats,.overview-top{align-items:center;display:flex}.overview-stats{gap:1.5rem}.stat{align-items:center;display:flex;flex-direction:column;min-width:100px;text-align:center}.stat .label{color:#94a3b8;font-size:.9rem;font-weight:500;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.stat .value{color:#fff;font-size:1.2rem;font-weight:600}@media (max-width:768px){.overview{margin:6px;padding:1.25rem}.overview-symbol{align-items:center;text-align:center}.symbol-text{font-size:2.1rem}.price-text{font-size:1.4rem;text-align:center}.overview-top{align-items:center;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:.875rem}.overview-stats{flex-wrap:wrap;gap:1rem;justify-content:center}.stat{min-width:85px;padding:.375rem .625rem}}@media (max-width:480px){.overview{margin:4px;padding:1rem}.overview-symbol{flex-direction:column;gap:.5rem}.symbol-text{font-size:1.8rem}.price-text{font-size:1.2rem}.overview-top{margin-bottom:1.25rem;padding:.75rem}.overview-stats{gap:.75rem}.stat{font-size:.875rem;min-width:70px;padding:.25rem .5rem}.metrics-container{gap:.75rem!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important}.analyst-summary{display:flex;flex-direction:column;gap:.4rem}.analyst-summary-row{align-items:center;background:radial-gradient(circle at 0 0,#22c55e26,#0f172af2);border-radius:999px;display:flex;font-size:.8rem;justify-content:space-between;padding:.35rem .6rem}.analyst-summary-row:nth-child(2){background:radial-gradient(circle at 0 0,#60a5fa26,#0f172af2)}.analyst-summary-row:nth-child(3){background:radial-gradient(circle at 0 0,#f8717126,#0f172af2)}.analyst-summary-label{color:#9ca3af;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.analyst-summary-value{font-size:.9rem;font-weight:600}.analyst-summary-footer{color:#9ca3af;font-size:.7rem;margin-top:.35rem}.analyst-summary-error,.analyst-summary-loading{color:#9ca3af;font-size:.8rem}.analyst-summary-error{color:#f97373}.metrics-column{padding:.875rem!important}.metrics-column h3{font-size:1.1rem;margin-bottom:1rem}.overview-grid{gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.overview-cache-note{font-size:11px;line-height:1.4;margin-top:8px;padding:12px}.overview-error,.overview-loading{font-size:13px;margin-top:10px;padding:14px}}@media (max-width:600px){.overview{margin:6px;padding:1.25rem}.symbol-text{font-size:2rem}.price-text{font-size:1.4rem}.overview-top{margin-bottom:1.5rem;padding:.875rem}.overview-stats{flex-wrap:wrap;gap:8px}.stat{min-width:90px;padding:.375rem .75rem}.metrics-container{gap:.625rem!important;grid-template-columns:1fr!important}.metrics-column{padding:.875rem!important}.metrics-column h3{font-size:1.2rem;margin-bottom:1.25rem}.overview-grid{gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.overview-cache-note{font-size:11px;line-height:1.4;margin-top:8px;padding:12px}.overview-error,.overview-loading{font-size:13px;margin-top:10px;padding:14px}}@media (max-width:480px){.overview{border-radius:10px;padding:1rem}.overview-symbol{align-items:center;text-align:center}.symbol-text{font-size:1.8rem}.price-text{color:#39db15;font-size:1.3rem;text-align:center}.overview-stats{flex-direction:row;flex-wrap:wrap;gap:.5rem;width:100%}.stat{flex:1 1;min-width:80px;padding:.25rem .5rem;text-align:center}.stat .label{font-size:10px}.stat .value{font-size:14px}.metrics-container{gap:.5rem!important;grid-template-columns:1fr!important}.metrics-column{min-height:auto;padding:.75rem!important}.metrics-column h3{font-size:1.1rem;margin-bottom:1rem}.metric-row{align-items:center;border-radius:6px;gap:.25rem;justify-content:center;min-height:3rem;padding:.5rem 0!important;text-align:center;transition:background-color .2s ease}.metric-row:hover{background-color:#ffffff05}.metric-label{color:#cbd5e1!important;font-size:12px!important;font-weight:600!important;margin-bottom:.125rem;opacity:.9}.metric-label,.metric-value{text-align:center!important;width:100%!important}.metric-value{font-size:14px!important;font-weight:700!important;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;overflow-wrap:break-word;word-break:break-word}.overview-grid{gap:8px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.overview-cache-note{font-size:11px;line-height:1.4;margin-top:8px;padding:12px}.overview-error,.overview-loading{font-size:13px;margin-top:10px;padding:14px}}@media (max-width:360px){.overview{margin:2px;padding:.75rem}.overview-top{margin-bottom:.75rem;padding:.5rem}.overview-symbol{align-items:center;text-align:center}.symbol-text{font-size:1.5rem}.price-text{font-size:1.2rem;text-align:center}.overview-stats{gap:.25rem}.stat{min-width:70px;padding:.2rem .25rem}.stat .label{font-size:9px}.stat .value{font-size:12px}.metrics-column{padding:.5rem!important}.metrics-column h3{font-size:1rem;margin-bottom:.75rem}.metric-row{align-items:center;border-radius:4px;flex-direction:column;gap:.125rem;justify-content:center;min-height:2.5rem;padding:.375rem 0!important;text-align:center;transition:background-color .2s ease}.metric-row:hover{background-color:#ffffff05}.metric-label{font-size:11px!important;font-weight:600!important;margin-bottom:.125rem;opacity:.9}.metric-label,.metric-value{text-align:center!important;width:100%!important}.metric-value{font-size:12px!important;font-weight:700!important;line-height:1.3;overflow-wrap:anywhere;word-break:break-all}.overview-cache-note{font-size:10px;line-height:1.3;margin-top:6px;padding:8px}.overview-error,.overview-loading{font-size:11px;margin-top:6px;padding:10px}}@media (min-width:1440px){.overview{margin:12px auto;max-width:1400px}.metrics-container{gap:1.5rem!important;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important}.metric-row{gap:1.5rem!important;padding:.75rem 0!important}.metric-label{flex:1 1 40%!important;font-size:15px!important}.metric-value{flex:1 1 60%!important;font-size:15px!important;max-width:60%!important;text-align:left!important}}.price-history-section{border-top:1px solid #404552;margin-bottom:2rem;margin-top:1rem;padding-top:1rem}.price-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.price-history-title{color:#fff;font-size:1.5rem;font-weight:600;margin:0}.timeframe-selector{display:flex;gap:.5rem}.timeframe-button{background:var(--secondary-bg);border:1px solid #404552;border-radius:6px;color:#e0e0e0;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.timeframe-button.active,.timeframe-button:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.timeframe-button.active{box-shadow:0 2px 8px #3b82f64d}.price-history-chart-container{background:#0000;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;height:360px;overflow:hidden;padding:0;width:100%}@media (max-width:768px){.price-history-chart-container{height:350px;padding:0}}@media (max-width:480px){.price-history-chart-container{height:340px;padding:0}}.price-history-chart-placeholder{align-items:center;background:#0000;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;height:360px;justify-content:center;width:100%}@media (max-width:768px){.price-history-chart-placeholder{height:350px}}@media (max-width:480px){.price-history-chart-placeholder{height:340px}}.chart-placeholder-content{color:#94a3b8;font-size:1.1rem;text-align:center}@media (max-width:768px){.chart-placeholder-content{font-size:1rem}}@media (max-width:480px){.chart-placeholder-content{font-size:.9rem}}.price-history-loading{color:#94a3b8;font-size:1.1rem;padding:2rem;text-align:center}.price-history-error{background:#ef44441a;border:1px solid #ef4444;border-radius:8px;color:#ef4444;margin-top:1rem;padding:1rem;text-align:center}.charts-section{grid-gap:1.5rem;border-top:1px solid #404552;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:2rem;margin-top:1rem;padding-top:1rem}.chart-container{background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;min-width:0;overflow:hidden;padding:16px}@media (max-width:1024px){.charts-section{gap:1.5rem;grid-template-columns:1fr}}.cagr-progression-title{color:#fff;font-size:1.2rem;font-weight:600;margin:0 0 .5rem}.cagr-progression-description{color:#94a3b8;font-size:.85rem;line-height:1.4;margin-bottom:1rem}.cagr-progression-chart{background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;box-sizing:border-box;height:320px;overflow:hidden;padding:16px;width:100%}@media (max-width:768px){.cagr-progression-chart{border-radius:12px;height:280px;padding:12px}}@media (max-width:480px){.cagr-progression-chart{height:260px;padding:10px}}.cagr-chart-placeholder{align-items:center;background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;box-sizing:border-box;display:flex;height:320px;justify-content:center;width:100%}.cagr-chart-placeholder p{color:#94a3b8;font-size:1rem;margin:0;text-align:center}@media (max-width:768px){.cagr-chart-placeholder{border-radius:12px;height:280px}.cagr-chart-placeholder p{font-size:.9rem}}@media (max-width:480px){.cagr-chart-placeholder{height:260px}.cagr-chart-placeholder p{font-size:.8rem}}.financial-period-toggle{align-items:center;background:var(--primary-bg);border:1px solid #404552;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.chart-section-title{color:#fff;font-size:1.1rem;font-weight:600;letter-spacing:.5px;margin:0}.period-selector{background:#1a1d29;border-radius:8px;display:flex;gap:8px;padding:4px}.period-button{background:#0000;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:.9rem;font-weight:500;letter-spacing:.3px;padding:8px 20px;transition:all .2s ease}.period-button:hover{background:#4ade801a;color:#4ade80}.period-button.active{background:#4ade80;color:#0f1219;font-weight:600}.period-button:focus{outline:none}.ratings-content{align-items:center;display:flex;gap:16px}.ratings-grade{color:#e2e8f0;font-size:2.5rem;font-weight:800;line-height:1;min-width:60px;text-align:center}.ratings-details{display:flex;flex:1 1;flex-direction:column;gap:6px}.ratings-score-text{align-items:baseline;display:flex;font-size:.85rem;justify-content:space-between}.score-val{color:#94a3b8;font-weight:500}.score-desc{color:#e2e8f0;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.ratings-score-bar-bg{background:#94a3b833;border-radius:999px;height:6px;overflow:hidden}.ratings-score-bar-fill{background:linear-gradient(90deg,#ef4444,#eab308 50%,#22c55e);border-radius:999px;height:100%}.analyst-breakdown-chart{background:#94a3b81a;border-radius:999px;display:flex;height:12px;margin-bottom:16px;overflow:hidden}.breakdown-bar{height:100%;transition:width .5s ease}.breakdown-bar.buy{background:#22c55e}.breakdown-bar.hold{background:#eab308}.breakdown-bar.sell{background:#ef4444}.analyst-summary-legend{display:flex;flex-direction:column;gap:8px}.legend-item{align-items:center;display:flex;font-size:.9rem;gap:8px}.legend-dot{border-radius:50%;height:8px;width:8px}.legend-dot.buy{background:#22c55e}.legend-dot.hold{background:#eab308}.legend-dot.sell{background:#ef4444}.legend-label{color:#94a3b8;flex:1 1}.legend-value{color:#e2e8f0;font-weight:600}.analyst-summary-footer{border-top:1px solid #94a3b81a;color:#64748b;font-size:.8rem;margin-top:12px;padding-top:12px;text-align:right}.grade-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#0f172acc,#1e293bcc);border:1px solid #94a3b826;border-radius:16px;box-shadow:0 8px 20px #0003;gap:32px;justify-content:space-between;margin-top:8px;padding:16px 24px}.grade-left,.grade-panel{align-items:center;display:flex}.grade-left{gap:16px}.grade-circle-container{height:56px;position:relative;width:56px}.grade-circular-chart{display:block;margin:0 auto;max-height:100%;max-width:100%}.grade-circle-bg{fill:none;stroke:#94a3b81a;stroke-width:2.5}.grade-circle-stroke{fill:none;stroke-width:2.5;stroke-linecap:round;animation:progress 1s ease-out forwards}.grade-text{font-size:1.4rem;font-weight:800;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.grade-title-block h3{color:#e2e8f0;font-size:1rem;font-weight:700;line-height:1.2;margin:0}.grade-subtitle{color:#94a3b8;font-size:.8rem}.grade-metrics{display:flex;gap:12px}.grade-metric-row{align-items:center;display:flex;flex-direction:column;gap:4px}.metric-label{color:#94a3b8;font-size:.7rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.metric-pill{background:#0f172a66;border:1px solid;border-radius:6px;font-size:.8rem;font-weight:600;min-width:70px;padding:4px 10px;text-align:center;white-space:nowrap}@media (max-width:768px){.grade-panel{align-items:flex-start;flex-direction:column;gap:16px;padding:16px}.grade-metrics{flex-wrap:wrap;justify-content:space-between;width:100%}.grade-metric-row{flex:1 1}}.ticker-header-row{align-items:center;display:flex;gap:12px}.watchlist-star-container{align-items:center;display:flex;position:relative}.watchlist-star-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#475569;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.watchlist-star-btn:hover{background:#ffffff0d;color:#94a3b8}.watchlist-star-btn.watched{color:#eab308}.watchlist-star-btn.watched:hover{color:#facc15}.watchlist-menu{animation:fadeIn .15s ease-out;background:#1e293b;border:1px solid #94a3b833;border-radius:12px;box-shadow:0 10px 25px #00000080;left:0;margin-top:8px;overflow:hidden;position:absolute;top:100%;width:220px;z-index:9999}.watchlist-menu-header{background:#0f172a4d;border-bottom:1px solid #94a3b81a;color:#94a3b8;font-size:.85rem;font-weight:600;padding:12px 16px}.watchlist-menu-list{max-height:200px;overflow-y:auto;padding:4px}.watchlist-menu-item{align-items:center;background:#0000;border:none;border-radius:6px;color:#e2e8f0;cursor:pointer;display:flex;font-size:.9rem;justify-content:space-between;padding:10px 12px;text-align:left;transition:background .15s ease;width:100%}.watchlist-menu-item:hover{background:#ffffff0d}.watchlist-menu-item.active{color:#eab308;font-weight:500}.watchlist-check{color:#eab308;font-size:.8rem}.watchlist-menu-empty{color:#64748b;font-size:.85rem;padding:16px;text-align:center}.watchlist-menu-footer{background:#0f172a4d;border-top:1px solid #94a3b81a;padding:8px}.create-list-btn{background:#0000;border:1px dashed #94a3b84d;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:.8rem;padding:8px;transition:all .2s ease;width:100%}.create-list-btn:hover{background:#60a5fa0d;border-color:#60a5fa;color:#60a5fa}.analyst-insights-section{margin-top:1.5rem}.analyst-insights-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-top:1rem}.analyst-consensus-card{background:#020617;border:1px solid #1f2937;border-radius:.75rem;padding:1.5rem}.analyst-consensus-header{align-items:center;display:flex;gap:.5rem;margin-bottom:1.5rem}.analyst-consensus-header h4{color:#9ca3af;font-size:1rem;font-weight:500;letter-spacing:.05em;margin:0;text-transform:uppercase}.analyst-consensus-content{align-items:center;display:flex;flex-direction:column;gap:2rem}.donut-chart-wrapper{height:200px;position:relative;width:200px}.donut-chart{height:100%;width:100%}.consensus-rating{background:#22c55e1a;border:1px solid #374151;border-radius:.5rem;margin-top:1rem;padding:.5rem 1.5rem;text-align:center}.consensus-rating-text{color:#22c55e;font-size:1.125rem;font-weight:600}.consensus-description{color:#9ca3af;font-size:.875rem;line-height:1.5;margin-top:1rem;text-align:center}.consensus-description strong{color:#e5e7eb;font-weight:600}.analyst-legend{display:flex;flex-direction:column;gap:.75rem;width:100%}.analyst-legend-item{align-items:center;display:flex;font-size:.875rem;justify-content:space-between}.analyst-legend-label{align-items:center;display:flex;gap:.5rem}.analyst-legend-dot{border-radius:2px;height:12px;width:12px}.analyst-legend-dot.buy{background-color:#22c55e}.analyst-legend-dot.hold{background-color:#eab308}.analyst-legend-dot.sell{background-color:#ef4444}.analyst-legend-text{color:#e5e7eb;font-weight:500}.analyst-legend-value{color:#e5e7eb;font-weight:600}.price-target-card{background:#020617;border:1px solid #1f2937;border-radius:.75rem;padding:1.5rem}.price-target-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.price-target-title{align-items:center;display:flex;gap:.5rem}.price-target-title h4{color:#9ca3af;font-size:.875rem;font-weight:500;letter-spacing:.05em;margin:0;text-transform:uppercase}.price-target-main{align-items:baseline;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.price-target-value{color:#22c55e;font-size:2.25rem;font-weight:700;line-height:1}.price-target-change{font-size:1rem;font-weight:600}.price-target-change.positive{color:#22c55e}.price-target-change.negative{color:#ef4444}.price-target-subtitle{color:#9ca3af;font-size:.75rem;margin:.25rem 0 0;width:100%}.price-target-subtitle strong{color:#e5e7eb;font-weight:600}.price-chart-wrapper{height:180px;margin:1rem 0;position:relative}.price-chart-periods{color:#6b7280;font-size:.75rem;font-weight:500;margin-bottom:1.25rem;margin-top:.25rem}.price-chart-periods,.price-estimates{display:flex;justify-content:space-between}.price-estimates{border-top:1px solid #1f2937;gap:1rem;margin-top:0;padding-top:1rem}.price-estimate-item{flex:1 1;text-align:center}.price-estimate-value{display:block;font-size:1.75rem;font-weight:700;line-height:1;margin-bottom:.5rem}.price-estimate-value.low{color:#ef4444}.price-estimate-value.average{color:#1f2937}.price-estimate-value.high{color:#22c55e}.price-estimate-label{color:#9ca3af;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}@media (max-width:1024px){.analyst-insights-grid{grid-template-columns:1fr}}@media (max-width:640px){.price-estimates{flex-direction:column;gap:1.5rem}.price-target-value{font-size:2rem}.donut-chart-wrapper{height:160px;width:160px}}.valuation-metrics{background:#141824;border:1px solid #2a2f3a;border-radius:12px;margin-top:24px;padding:16px}.vm-header{margin-bottom:12px}.vm-title{color:#fff;font-size:1.1rem;margin:0 0 4px}.vm-subtitle{color:#94a3b8;font-size:.9rem;margin:0}.vm-controls{align-items:center;gap:12px;margin:12px 0 8px}.vm-controls,.vm-pills{display:flex;flex-wrap:wrap}.vm-pills{gap:8px}.vm-pill{background:#1b2130;border:1px solid #2a2f3a;border-radius:999px;color:#cbd5e1;cursor:pointer;font-size:.8rem;padding:6px 10px}.vm-pill.active{background:#2563eb;border-color:#2563eb;color:#fff}.vm-search{background:#0f1320;border:1px solid #2a2f3a;border-radius:8px;color:#e2e8f0;font-size:.85rem;margin-left:auto;outline:none;padding:8px 10px;width:min(320px,100%)}.vm-table{grid-gap:0;border-top:1px solid #2a2f3a;display:grid;gap:0;grid-template-columns:1fr}.vm-header-row{display:none}.vm-row{border-bottom:1px solid #202534;display:grid;grid-template-columns:1fr}.vm-cell{padding:10px 8px}.vm-col-category{color:#93c5fd;font-weight:600}.vm-col-metric{color:#e2e8f0;font-weight:600}.vm-col-formula{color:#cbd5e1}.vm-col-why,.vm-empty{color:#94a3b8}.vm-empty{padding:16px;text-align:center}@media (min-width:900px){.vm-table{border:1px solid #2a2f3a;border-radius:8px}.vm-header-row{background:#0f1320;border-bottom:1px solid #2a2f3a;display:grid;position:-webkit-sticky;position:sticky;top:0;z-index:1}.vm-header-row,.vm-row{grid-template-columns:180px 240px 1fr 1.2fr}.vm-cell{border-right:1px solid #202534}.vm-cell:last-child{border-right:none}}.tooltip-wrapper{align-items:center;display:inline-flex;position:relative}.tooltip-bubble{background:#111827f2;border:1px solid #374151;border-radius:8px;bottom:100%;box-shadow:0 8px 24px #00000059;color:#e5e7eb;display:block;font-size:.82rem;left:0;line-height:1.45;max-width:560px;min-width:320px;overflow-wrap:anywhere;padding:12px 14px 12px 20px;position:absolute;text-align:left;transform:translateY(-4px);white-space:pre-wrap;word-break:break-word;z-index:20}.placement-bottom .tooltip-bubble{bottom:auto;top:100%;transform:translateY(8px)}.placement-left .tooltip-bubble{bottom:auto;left:auto;right:100%;top:50%;transform:translate(-8px,-50%)}.placement-right .tooltip-bubble{bottom:auto;left:100%;top:50%;transform:translate(8px,-50%)}.tooltip-icon{align-items:center;background:#1f2937;border:1px solid #374151;border-radius:50%;color:#9ca3af;cursor:default;display:inline-flex;font-size:11px;height:16px;justify-content:center;line-height:1;margin-left:6px;width:16px}.tooltip-icon:hover{border-color:#4b5563;color:#cbd5e1}@media (max-width:640px){.tooltip-bubble{max-width:92vw;min-width:70vw}}.company-profile-card{background:#0b1020;border:1px solid #ffffff0d;border-radius:12px;box-shadow:0 10px 30px #00000073;color:#f5f5f5;display:flex;flex-direction:column;gap:12px;padding:16px 20px}.company-profile-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.company-profile-header h2{font-size:1.1rem;letter-spacing:.03em;margin:0}.company-profile-status{color:#a0aec0;font-size:.9rem}.company-profile-error{color:#feb2b2;font-size:.9rem}.company-profile-body{display:flex;flex-direction:column;gap:12px}.company-profile-main{grid-gap:8px 16px;display:grid;font-size:.9rem;gap:8px 16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.company-profile-name-ticker{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px;grid-column:1/-1}.company-profile-name{font-size:1rem;font-weight:600}.company-profile-ticker{background:#81e6d91a;border-radius:999px;color:#81e6d9;font-size:.85rem;padding:2px 6px}.company-profile-meta-row{display:flex;gap:6px}.company-profile-description .label,.company-profile-meta-row .label{color:#9fa6b2;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.company-profile-meta-row a,.company-profile-meta-row span:last-child{color:#e5e7eb}.company-profile-meta-row a{text-decoration:none}.company-profile-meta-row a:hover{text-decoration:underline}.company-profile-description{color:#cbd5f5;font-size:.9rem;line-height:1.5}.company-profile-description p{margin:4px 0 0}.edgar-page{margin:0 auto;max-width:1200px;padding:2rem}.edgar-header{margin-bottom:2rem}.edgar-header h2{color:#1a1a1a;font-size:2rem;font-weight:600;margin-bottom:.5rem}.edgar-header .subtitle{color:#666;font-size:.95rem;margin-bottom:1.5rem}.edgar-controls{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:2rem;padding:1.5rem}.edgar-form{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.form-group{flex:1 1;min-width:200px}.form-group label{color:#374151;font-size:.875rem;font-weight:600}.form-select{background-color:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:1rem;min-width:180px;padding:.75rem 1rem;transition:all .2s}.form-select:focus,.form-select:hover{border-color:#3b82f6}.form-select:focus{box-shadow:0 0 0 3px #3b82f61a;outline:none}.submit-button{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:auto;min-width:180px;padding:.75rem 1.5rem;transition:all .2s}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;margin-right:.5rem;width:16px}.error-message{align-items:center;background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.error-message:before{content:"⚠️";font-size:1.25rem}.info-message{align-items:center;background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;color:#1e40af;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.info-message:before{content:"ℹ️";font-size:1.25rem}.filings-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.filings-header{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid #f3f4f6;padding:1.5rem}.filings-header h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin:0}.filings-count{color:#6b7280;font-size:.875rem;margin-top:.25rem}.filings-list{list-style:none;margin:0;padding:0}.filing-item{border-bottom:1px solid #f3f4f6;padding:1.25rem 1.5rem;transition:background-color .2s}.filing-item:last-child{border-bottom:none}.filing-item:hover{background-color:#f9fafb}.filing-main{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.filing-info{flex:1 1}.filing-type{color:#1a1a1a;font-size:1rem;font-weight:600;margin-bottom:.25rem}.filing-date{color:#6b7280;font-size:.875rem}.filing-actions,.filing-button{display:flex;gap:.5rem}.filing-button{align-items:center;background:none;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.filing-button:hover{background-color:#eff6ff;color:#2563eb}.filing-button-download{background-color:#3b82f6;color:#fff}.filing-button-download:hover{background-color:#2563eb;color:#fff}.filing-meta{color:#9ca3af;display:flex;font-size:.8125rem;gap:1rem;margin-top:.5rem}.filing-meta-item{align-items:center;display:flex;gap:.25rem}.empty-state{color:#6b7280;padding:4rem 2rem;text-align:center}.empty-state-icon{font-size:3rem;margin-bottom:1rem}.empty-state-title{color:#374151;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.empty-state-description{font-size:.875rem;margin:0 auto;max-width:400px}.loading-state{padding:3rem 2rem;text-align:center}.loading-dots{display:inline-flex;gap:.5rem;margin-top:1rem}.loading-dot{animation:bounce 1.4s ease-in-out infinite both;background-color:#3b82f6;border-radius:50%;height:10px;width:10px}.loading-dot:first-child{animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.filing-type-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:.25rem .75rem;text-transform:uppercase}.badge-10k{background-color:#dbeafe;color:#1e40af}.badge-10q{background-color:#fef3c7;color:#92400e}.badge-8k{background-color:#fce7f3;color:#9f1239}@media (max-width:768px){.edgar-page{padding:1rem}.edgar-form{align-items:stretch;flex-direction:column}.form-group,.submit-button{width:100%}.filing-main{flex-direction:column}.filing-actions{width:100%}.filing-button{flex:1 1;justify-content:center}}.cache-management{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;margin:0 auto;max-width:1400px;padding:30px}.cache-management h2{color:#4ade80;font-size:2.2rem;font-weight:600;margin-bottom:40px;text-align:center}.cache-management h3{border-bottom:3px solid #404552;color:#e0e0e0;font-size:1.4rem;font-weight:600;margin:35px 0 20px;padding-bottom:12px}.message{align-items:center;border-radius:8px;box-shadow:0 2px 8px #0000004d;display:flex;font-weight:500;justify-content:space-between;margin-bottom:25px;padding:16px 20px}.message.success{background-color:#48bb7833;border:1px solid #48bb784d;color:#c6f6d5}.message.error{background-color:#ff6b6b33;border:1px solid #ff6b6b4d;color:#ff6b6b}.json-modal-overlay{align-items:center;background:#0009;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.json-modal{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 10px 40px #0009;max-height:80vh;max-width:700px;overflow-y:auto;padding:32px 28px 24px;position:relative;width:90vw}.json-modal h4{color:#e0e0e0;font-size:1.2rem;margin-bottom:18px;margin-top:0}.json-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:18px}.json-modal-header h4{color:#e0e0e0;font-size:1.2rem;margin:0}.copy-json-btn{align-items:center;background:#4ade80;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:4px;padding:6px 12px;transition:background .2s}.copy-json-btn:hover{background:#22c55e}.copy-message{background:#c6f6d5;border-radius:4px;color:#22543d;font-size:.9rem;margin-bottom:12px;padding:8px 12px;text-align:center}.json-content{background:var(--secondary-bg);border:1px solid #404552;border-radius:8px;color:#e0e0e0;font-size:.98rem;max-height:50vh;overflow-y:auto;padding:18px;white-space:pre-wrap;word-break:break-word}.close-json-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;margin-top:18px;padding:8px 18px;transition:background .2s}.close-json-btn:hover{background:#2563eb}.view-json-btn{background:var(--primary-bg);border:1px solid #404552;border-radius:6px;color:#e0e0e0;cursor:pointer;font-size:.98rem;margin-left:12px;padding:4px 12px;transition:background .2s}.view-json-btn:hover{background:var(--secondary-bg)}.message.error{background-color:#f8717133;border:1px solid #f871714d;color:#f87171}.close-message{background:none;border:none;color:inherit;cursor:pointer;font-size:24px;margin-left:15px;opacity:.7;padding:0;transition:opacity .2s}.close-message:hover{opacity:1}.cache-stats{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 10px 40px #0009;margin-bottom:35px;padding:30px}.stats-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:20px}.stat-card{background:var(--primary-bg);border:1px solid #404552;border-radius:10px;box-shadow:0 4px 12px #0000004d;padding:25px;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 6px 20px #0006;transform:translateY(-2px)}.stat-value{color:#4ade80;font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:8px}.stat-label{color:#718096;font-size:.95rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.cache-actions{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 10px 40px #0009;margin-bottom:35px;padding:30px}.action-buttons{gap:20px;margin-top:20px}.action-buttons button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;min-width:160px;padding:14px 28px;transition:all .3s ease}.clear-all-btn{background:var(--error-gradient);box-shadow:0 4px 12px #dc26264d;color:#fff}.clear-all-btn:hover:not(:disabled){background:var(--error-gradient);box-shadow:0 6px 20px #dc262666;transform:translateY(-2px)}.refresh-btn{background:var(--accent-gradient);box-shadow:0 4px 12px #16a34a4d;color:#fff}.refresh-btn:hover:not(:disabled){background:var(--accent-secondary);box-shadow:0 6px 20px #16a34a66;transform:translateY(-2px)}.action-buttons button:disabled{box-shadow:0 2px 8px #0000001a!important;cursor:not-allowed;opacity:.6;transform:none!important}.cache-keys{border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 40px #0009;margin-bottom:35px;padding:30px}.cache-keys,.no-cache{background:var(--primary-bg)}.no-cache{border:2px dashed #404552;border-radius:8px;color:#a0a0a0;font-size:1.1rem;font-style:italic;padding:40px 20px;text-align:center}.keys-list{display:flex;flex-direction:column;gap:20px}.cache-item{background:var(--primary-bg);border:1px solid #404552;border-radius:10px;box-shadow:0 4px 12px #0000004d;padding:20px;transition:all .2s ease}.cache-item:hover{box-shadow:0 6px 20px #0006;transform:translateY(-1px)}.cache-item-header{align-items:flex-start;display:flex;gap:15px;justify-content:space-between;margin-bottom:15px}.cache-key{background:var(--secondary-bg);border:1px solid #404552;border-radius:6px;color:#4ade80;flex:1 1;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1rem;font-weight:600;line-height:1.4;padding:8px 12px;word-break:break-word}.clear-key-btn{background:var(--error-gradient);border:none;border-radius:6px;box-shadow:0 2px 8px #f8717133;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.clear-key-btn:hover:not(:disabled){background:var(--error-gradient);box-shadow:0 4px 12px #f871714d;transform:translateY(-1px)}.cache-item-details{grid-gap:12px;display:grid;font-size:.9rem;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.cache-item-details span{align-items:center;background:var(--secondary-bg);border:1px solid #404552;border-radius:6px;color:#e0e0e0;display:flex;font-weight:500;gap:6px;padding:6px 12px}.cache-info{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 10px 40px #0009;padding:30px}.info-content p{color:#718096;font-size:1rem;line-height:1.6;margin:15px 0}.info-content strong{color:#718096;font-weight:600}.info-content ul{background:var(--secondary-bg);border:1px solid #404552;border-radius:8px;margin:15px 0;padding:20px 25px}.info-content li{color:#718096;line-height:1.5;margin:8px 0}.info-content code{background:#2d3748;border-radius:4px;color:#e2e8f0;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:.85em;font-weight:500;padding:3px 8px}.loading{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;box-shadow:0 10px 40px #0009;color:#a0a0a0;font-size:1.2rem;font-weight:500;padding:80px 40px;text-align:center}@media (max-width:768px){.cache-management{padding:20px}.cache-management h2{font-size:1.8rem}.stats-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-card{padding:20px}.stat-value{font-size:2rem}.action-buttons{flex-direction:column}.action-buttons button{min-width:0;min-width:auto;width:100%}.cache-item-header{align-items:flex-start;flex-direction:column;gap:12px}.cache-key{width:100%}.cache-item-details{gap:8px;grid-template-columns:1fr}.info-content ul{padding:15px 20px}}.cache-controls{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-top:1rem}.controls-left{flex:1 1}.cache-search-input{background:var(--primary-bg);border:1px solid #404552;border-radius:8px;color:#e0e0e0;font-size:.98rem;padding:10px 12px;width:100%}.controls-right{gap:1rem}.controls-right,.per-page{align-items:center;display:flex}.per-page{gap:.5rem}.per-page-label{color:#718096;font-size:.95rem}.per-page-select{background:var(--primary-bg);border:1px solid #404552;border-radius:6px;color:#e0e0e0;padding:6px 8px}.show-search-toggle{align-items:center;color:#718096;display:flex;font-size:.95rem;gap:.5rem}.pagination-controls{align-items:center;display:flex;justify-content:space-between;margin-top:.75rem}.pagination-summary{color:#2d3748b3;font-size:.95rem}.pagination-buttons{align-items:center;display:flex;gap:.5rem}.pagination-buttons button{background:var(--primary-bg);border:1px solid #404552;border-radius:6px;color:#e0e0e0;cursor:pointer;padding:6px 10px}.pagination-buttons button:disabled{cursor:not-allowed;opacity:.5}.pagination-current{color:#718096;padding:6px 10px}.dcf-calculator{margin:0 auto;max-width:1200px;padding:1rem}.dcf-calculator h2{color:#fff;font-size:2.2rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}.dcf-calculator h3{border-bottom:2px solid #e5e7eb;color:#374151;font-size:1.25rem;margin-bottom:1.5rem;padding-bottom:.5rem}.dcf-inputs{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.input-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{color:#374151;font-size:.875rem;font-weight:600}.input-group input,.input-group select{background:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;padding:.5rem}.input-group input:focus,.input-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.input-unit{color:#6b7280;font-size:.75rem;margin-left:.5rem}.action-buttons{display:flex;flex-wrap:wrap;gap:1rem}.calculate-button,.load-button,.save-button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:600;min-width:150px;padding:.75rem 1.5rem;transition:all .2s ease}.calculate-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.calculate-button:hover:not(:disabled){box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.save-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.save-button:hover:not(:disabled){box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.load-button{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.load-button:hover:not(:disabled){box-shadow:0 4px 12px #8b5cf64d;transform:translateY(-1px)}.calculate-button:disabled,.load-button:disabled,.save-button:disabled{cursor:not-allowed;opacity:.6}.dcf-results{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.dcf-warnings{margin-bottom:1.5rem}.warning-message{align-items:center;border-left:4px solid;border-radius:6px;display:flex;font-size:.875rem;gap:.75rem;margin-bottom:.5rem;padding:.75rem 1rem}.warning-icon{flex-shrink:0;font-size:1.25rem}.warning-text{flex:1 1}.warning-critical{background-color:#fee;border-left-color:#dc2626;color:#991b1b}.warning-high{background-color:#fff4e6;border-left-color:#f59e0b;color:#92400e}.warning-medium{background-color:#fef9c3;border-left-color:#eab308;color:#713f12}.warning-low{background-color:#eff6ff;border-left-color:#3b82f6;color:#1e40af}.valuation-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.valuation-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1.25rem;text-align:center}.valuation-card h4{color:#475569;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-bottom:.75rem;text-transform:uppercase}.valuation-value{color:#1e293b;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.valuation-comparison{color:#64748b;font-size:.875rem}.valuation-difference.positive{color:#10b981;font-weight:600}.valuation-difference.negative{color:#ef4444;font-weight:600}.cash-flow-projections h4{color:#374151;font-size:1.125rem;margin-bottom:1rem}.cash-flow-projections .table-wrapper{-webkit-overflow-scrolling:touch;background:#fff;border:2px solid #d1d5db;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;overflow-x:auto;position:relative;scroll-behavior:smooth}.cash-flow-projections .table-wrapper:after,.cash-flow-projections .table-wrapper:before{bottom:0;content:"";opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:30px;z-index:2}.cash-flow-projections .table-wrapper:before{background:linear-gradient(90deg,#fffffff2,#0000);left:0}.cash-flow-projections .table-wrapper:after{background:linear-gradient(270deg,#fffffff2,#0000);right:0}@media (max-width:768px){.cash-flow-projections .table-wrapper:after{opacity:1}}.cash-flow-table{background:#fff;border-collapse:collapse;width:100%}.cash-flow-table th{background:#1f2937;border-bottom:2px solid #374151;color:#fff;font-size:.95rem;font-weight:700;letter-spacing:.05em;padding:1rem .75rem;text-align:left;text-transform:uppercase}.cash-flow-table td{background:#fff;border-bottom:1px solid #e5e7eb;color:#111827;font-size:1rem;font-weight:500;padding:1rem .75rem}.cash-flow-table tr:last-child td{border-bottom:none}.cash-flow-table tr.terminal-row{background:#fbbf24;border-top:2px solid #f59e0b;font-weight:700}.cash-flow-table tr.terminal-row td{background:#fef3c7;border-bottom:none;color:#92400e}.cash-flow-table tbody tr:hover,.cash-flow-table tbody tr:hover td{background:#f9fafb}.assumptions-summary h4{color:#374151;font-size:1.125rem;margin-bottom:1rem}.assumptions-grid{grid-gap:.75rem;display:grid;gap:.75rem}.assumption-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:.5rem 0}.assumption-item:last-child{border-bottom:none}.assumption-label{color:#374151;font-size:.875rem;font-weight:600}.assumption-value{color:#6b7280;font-size:.875rem;font-weight:500}.no-data-message{color:#6b7280;font-size:1.125rem;padding:3rem;text-align:center}.no-data-message p{margin:0}@media (max-width:768px){.dcf-calculator{padding:.5rem}.input-grid,.table-header,.table-row,.valuation-summary{grid-template-columns:1fr}.table-header,.table-row{gap:.25rem}.table-header>div,.table-row>div{padding:.25rem 0}.table-header>div:not(:first-child):before,.table-row>div:not(:first-child):before{color:#6b7280;content:attr(data-label) ": ";font-weight:600}.cash-flow-table{min-width:500px}.cash-flow-projections .table-wrapper{padding-bottom:10px}}.company-input{margin-bottom:20px}.input-form{align-items:center;display:flex;gap:10px;margin-bottom:15px}.input-group{flex:1 1;position:relative}.suggestions-dropdown{background:var(--primary-bg);background-color:#222!important;border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;left:0;max-height:320px;opacity:1!important;overflow-y:auto;padding:8px 6px;position:absolute;right:0;top:calc(100% + 8px);z-index:99999}.suggestion-item{border-radius:8px;color:#e0e0e0;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:10px 12px;transition:background-color .15s ease,transform .08s ease}.suggestion-item:hover{background-color:#333;transform:translateY(-1px)}.suggestion-item.selected{background:var(--secondary-bg);box-shadow:inset 0 0 0 2px #4ade8033}.suggestion-item.loading{align-items:center;color:#a0a0a0;display:flex;gap:8px}.suggestion-ticker{color:#4ade80;font-weight:700}.suggestion-name{color:#a0a0a0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.symbol-input{background:var(--primary-bg);border:2px solid #404552;border-radius:8px;color:#e0e0e0;font-size:16px;min-width:0;padding:12px 40px 12px 12px;transition:border-color .3s ease,background .3s ease,box-shadow .25s ease;width:100%}.symbol-input::placeholder{color:#a0a0a0;opacity:1}.symbol-input:-ms-input-placeholder{color:#a0a0a0}.symbol-input::-ms-input-placeholder{color:#a0a0a0}.symbol-input:focus{background:linear-gradient(135deg,#1f2937d9,#111827d9);border-color:#4ade80;box-shadow:0 0 0 3px #4ade8040,0 4px 18px -2px #4ade8040;color:#fff;outline:none}.symbol-input:disabled{background-color:#f8f9fa;cursor:not-allowed}.clear-button{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0d;border:1px solid #ffffff14;border-radius:6px;color:#b5b9c0;cursor:pointer;font-size:16px;line-height:1;padding:4px 8px;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:background .2s ease,color .2s ease,border-color .2s ease}.clear-button:hover:not(:disabled){background:#4ade8026;border-color:#4ade8080;color:#e7fbea}.clear-button:disabled{color:#ccc;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.hero-search-wrapper .company-input{margin-bottom:0}.hero-search-wrapper .input-form{display:block;gap:0;margin-bottom:0}.hero-search-wrapper .input-group{background:#0000;border:none;box-shadow:none;max-width:100%;padding:0}.hero-search-wrapper .symbol-input{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#1f2937d9,#111827d9);border:2px solid #4755698c;border-radius:14px;box-shadow:0 6px 22px -4px #00000073;color:#f1f5f9;font-size:20px;padding:18px 56px 18px 18px}.hero-search-wrapper .company-input,.hero-search-wrapper .input-form{background:#0000!important;border:none!important;box-shadow:none!important}.hero-search-wrapper .symbol-input:hover:not(:disabled){border-color:#4ade8099}.hero-search-wrapper .symbol-input:focus{background:linear-gradient(135deg,#1f2937eb,#111827eb);border-color:#4ade80}.hero-search-wrapper .clear-button{background:#ffffff12;border-color:#ffffff1f;font-size:18px;right:12px}.hero-search-wrapper .clear-button:hover:not(:disabled){background:#4ade8033}@media (max-width:768px){.company-input{margin-bottom:16px}.input-form{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:12px}.input-group{position:relative}.symbol-input{border-radius:10px;font-size:16px;min-height:48px;padding:14px 45px 14px 14px}.hero-search-wrapper .symbol-input{font-size:18px;min-height:54px;padding:16px 54px 16px 18px}.clear-button{font-size:20px;min-height:32px;min-width:32px;padding:6px;right:10px}.suggestions-dropdown{border-radius:12px;box-shadow:0 8px 32px #000c;max-height:280px}.suggestion-item{border-radius:8px;min-height:48px;padding:12px 16px}.suggestion-name{font-size:14px;overflow:visible;text-overflow:visible;white-space:normal}.stock-buttons{flex-wrap:wrap;gap:8px;justify-content:center}.year-input{min-height:48px;width:100%}}@media (max-width:480px){.company-input{margin-bottom:12px}.input-form{gap:10px;margin-bottom:10px}.symbol-input{font-size:16px;padding:12px 40px 12px 12px}.hero-search-wrapper .symbol-input{font-size:16px;padding:15px 50px 15px 16px}.suggestions-dropdown{border-radius:12px;box-shadow:0 8px 32px #000c;left:8px;max-height:240px;right:8px;width:auto}.suggestion-item{align-items:flex-start;flex-direction:column;gap:4px;padding:10px 12px}.suggestion-ticker{font-size:16px}.suggestion-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.sidebar{background:linear-gradient(180deg,#1a1f2e,#0f1419);border-right:1px solid #4755694d;box-shadow:4px 0 20px #00000080;color:#d1d5db;display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:260px;z-index:1000}.sidebar-header{background:#10b9810d;border-bottom:1px solid #4755694d;flex-shrink:0;padding:24px 20px}.sidebar-search{flex-shrink:0;padding:0 16px}.sidebar-content{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:16px 0}.sidebar-content::-webkit-scrollbar{width:6px}.sidebar-content::-webkit-scrollbar-track{background:#0003}.sidebar-content::-webkit-scrollbar-thumb{background:#47556980;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#475569b3}.sidebar-logo{align-items:center;display:flex;gap:12px}.logo-icon{filter:drop-shadow(0 2px 8px rgba(16,185,129,.4));flex-shrink:0;height:40px;width:40px}.sidebar-brand{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.5rem;font-weight:700;letter-spacing:-.5px;margin:0}.sidebar-nav{padding:20px 0}.sidebar-section{margin-bottom:28px;padding:0 16px}.sidebar-section-title{color:#6b7280;font-size:.75rem;font-weight:700;letter-spacing:.1em;margin-bottom:12px;padding-left:12px;text-transform:uppercase}.sidebar-list{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.sidebar-list li{margin:0}.sidebar-link{align-items:center;border-radius:8px;color:#9ca3af;display:flex;font-size:.95rem;font-weight:500;gap:12px;overflow:hidden;padding:12px;position:relative;text-decoration:none;transition:all .2s ease}.sidebar-link:before{background:linear-gradient(180deg,#10b981,#059669);bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .2s ease;width:3px}.sidebar-link:hover{background:#4755694d;color:#fff;transform:translateX(2px)}.sidebar-link:hover:before{transform:scaleY(1)}.sidebar-link.active{background:linear-gradient(90deg,#10b98126,#10b9810d);box-shadow:0 2px 8px #10b98126;color:#10b981;font-weight:600}.sidebar-link.active:before{transform:scaleY(1)}.sidebar-link.active .link-icon{filter:drop-shadow(0 0 8px rgba(16,185,129,.6))}.link-icon{align-items:center;display:flex;flex-shrink:0;font-size:1.25rem;justify-content:center;transition:transform .2s ease;width:24px}.sidebar-link:hover .link-icon{transform:scale(1.1)}.link-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .3s ease;width:260px}.sidebar.open{transform:translateX(0)}.sidebar-section-title{font-size:.7rem}.sidebar-link{font-size:.9rem;padding:10px}.link-icon{font-size:1.1rem}}.mobile-menu-toggle{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 4px 12px #10b98166;cursor:pointer;display:flex;height:48px;justify-content:center;left:20px;position:fixed;top:20px;transition:all .3s ease;width:48px;z-index:1100}.mobile-menu-toggle:hover{box-shadow:0 6px 16px #10b98199;transform:scale(1.05)}.mobile-menu-toggle:active{transform:scale(.95)}.hamburger{display:flex;flex-direction:column;height:18px;justify-content:space-between;position:relative;width:24px}.hamburger span{background:#fff;border-radius:2px;display:block;height:3px;transition:all .3s ease;width:100%}.hamburger.open span:first-child{transform:translateY(7.5px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.sidebar-backdrop{animation:fadeIn .3s ease;background:#000000b3;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar-footer{border-top:1px solid #4755694d;flex-shrink:0;margin-top:auto;padding:1rem}.sidebar-footer .user-info{align-items:center;background:#47556933;border-radius:8px;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem}.sidebar-footer .user-avatar{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:36px;justify-content:center;width:36px}.sidebar-footer .user-details{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.sidebar-footer .username{color:#f3f4f6;font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer .role-badge{background-color:#3b82f633;border-radius:10px;color:#93c5fd;display:inline-block;font-size:.7rem;font-weight:600;padding:.15rem .5rem;width:-webkit-fit-content;width:fit-content}.sidebar-footer .logout-btn{background-color:#ef44441a;border:1px solid #ef4444;border-radius:6px;color:#fca5a5;cursor:pointer;font-size:.85rem;font-weight:600;padding:.625rem 1rem;transition:all .2s ease;width:100%}.sidebar-footer .logout-btn:hover{background-color:#ef444433;box-shadow:0 2px 8px #ef44444d;transform:translateY(-1px)}.sidebar-footer .login-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.625rem 1rem;transition:all .2s ease;width:100%}.sidebar-footer .login-btn:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.landing-page{margin:0 auto;max-width:1400px;padding:0 20px 60px}.landing-hero{background:linear-gradient(180deg,#10b9810d,#0000);border-radius:16px;margin-bottom:60px;padding:60px 20px 80px;text-align:center}.hero-search-wrapper{margin:40px auto 0;max-width:680px;width:100%}.landing-hero .company-input{margin:0 auto}.landing-hero .symbol-input{border-radius:12px;font-size:18px;padding:16px 48px 16px 16px}@media (max-width:768px){.hero-search-wrapper{margin-top:28px;max-width:100%}.landing-hero .symbol-input{font-size:16px;padding:14px 44px 14px 14px}}@media (max-width:480px){.hero-search-wrapper{margin-top:24px}.landing-hero .symbol-input{font-size:15px;padding:14px 40px 14px 14px}}.hero-icon{display:flex;justify-content:center;margin-bottom:24px}.hero-svg{animation:float 3s ease-in-out infinite;filter:drop-shadow(0 4px 20px rgba(16,185,129,.4));height:100px;width:100px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;font-weight:800;letter-spacing:-1px;margin-bottom:20px}.hero-subtitle{color:#9ca3af;font-size:1.25rem;line-height:1.8;margin:0 auto;max-width:700px}.features-section{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:80px}.feature-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#1f2937cc,#111827cc);border:1px solid #4755694d;border-radius:16px;padding:32px 24px;text-align:center;transition:all .3s ease}.feature-card:hover{border-color:#10b98180;box-shadow:0 8px 30px #10b98133;transform:translateY(-4px)}.feature-icon{filter:drop-shadow(0 2px 8px rgba(16,185,129,.3));font-size:3rem;margin-bottom:16px}.feature-card h3{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:12px}.feature-card p{color:#9ca3af;font-size:.95rem;line-height:1.6;margin:0}.popular-stocks-section{margin-bottom:80px}.section-title{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:12px;text-align:center}.section-subtitle{color:#9ca3af;font-size:1.1rem;margin-bottom:48px;text-align:center}.stock-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.stock-card{align-items:center;background:linear-gradient(135deg,#1f293799,#11182799);border:2px solid #4755694d;border-radius:12px;cursor:pointer;display:flex;gap:16px;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.stock-card:before{background:linear-gradient(90deg,#10b981,#059669);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.stock-card:hover{background:linear-gradient(135deg,#1f2937cc,#111827cc);border-color:#10b98199;box-shadow:0 8px 24px #10b98126;transform:translateY(-2px)}.stock-card:hover:before{transform:scaleX(1)}.stock-logo-wrapper{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-shrink:0;height:60px;justify-content:center;padding:8px;transition:all .3s ease;width:60px}.stock-logo{display:block;height:100%;object-fit:contain;width:100%}.stock-logo-fallback{align-items:center;background:#10b9811a;border-radius:8px;color:#10b981;display:none;font-size:1.8rem;font-weight:700;height:100%;justify-content:center;width:100%}.stock-card:hover .stock-logo-wrapper{box-shadow:0 4px 12px #10b9814d;transform:scale(1.05)}.stock-info{flex:1 1;min-width:0}.stock-symbol{color:#10b981;font-size:1.25rem;font-weight:700;letter-spacing:.5px;margin-bottom:4px}.stock-name{color:#d1d5db;font-size:.95rem;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-sector{color:#6b7280;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stock-arrow{color:#6b7280;flex-shrink:0;font-size:1.5rem;transition:all .3s ease}.stock-card:hover .stock-arrow{color:#10b981;transform:translateX(4px)}.cta-section{background:linear-gradient(135deg,#10b9811a,#0596690d);border:1px solid #10b98133;border-radius:16px;padding:60px 20px;text-align:center}.cta-section h2{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:16px}.cta-section p{color:#9ca3af;font-size:1.2rem;margin-bottom:32px}.cta-features{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.cta-badge{align-items:center;background:#10b98126;border:1px solid #10b9814d;border-radius:24px;color:#10b981;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.cta-badge:hover{background:#10b98140;transform:translateY(-2px)}@media (max-width:1024px){.hero-title{font-size:2.8rem}.stock-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:768px){.landing-page{padding:0 16px 40px}.landing-hero{margin-bottom:40px;padding:40px 16px 60px}.hero-svg{height:80px;width:80px}.hero-title{font-size:2.2rem}.hero-subtitle{font-size:1.1rem}.features-section{gap:16px;grid-template-columns:1fr;margin-bottom:60px}.feature-card{padding:24px 20px}.section-title{font-size:2rem}.stock-grid{gap:12px;grid-template-columns:1fr}.stock-card{padding:16px}.stock-icon{font-size:2rem;height:50px;width:50px}.cta-section{padding:40px 20px}.cta-section h2{font-size:2rem}.cta-section p{font-size:1.1rem}.cta-features{align-items:center;flex-direction:column}}@media (max-width:480px){.hero-title{font-size:1.8rem}.hero-subtitle{font-size:1rem}.section-title{font-size:1.6rem}.stock-symbol{font-size:1.1rem}.stock-name{font-size:.85rem}}.auth-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-modal{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#1f2937,#111827);border:1px solid #374151;border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:400px;padding:2rem;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-header{margin-bottom:1.5rem;text-align:center}.auth-modal-header h2{color:#10b981;font-size:1.75rem;margin-bottom:.5rem}.auth-modal-header p{color:#9ca3af;font-size:.9rem}.auth-tabs{border-bottom:2px solid #374151;display:flex;gap:.5rem;margin-bottom:1.5rem}.auth-tab{background:none;border:none;border-bottom:2px solid #0000;color:#9ca3af;cursor:pointer;flex:1 1;font-size:1rem;margin-bottom:-2px;padding:.75rem;transition:all .2s}.auth-tab:hover{color:#d1d5db}.auth-tab.active{border-bottom-color:#10b981;color:#10b981}.auth-form{gap:1rem}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#d1d5db;font-size:.9rem;font-weight:500}.form-group input{background-color:#374151;border:1px solid #4b5563;border-radius:8px;color:#f3f4f6;font-size:1rem;padding:.75rem;transition:all .2s}.form-group input:focus{background-color:#4b5563;border-color:#10b981;outline:none}.form-group input::placeholder{color:#6b7280}.auth-button{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.875rem;transition:all .2s}.auth-button:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.auth-button:active{transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.cancel-button{background-color:initial;border:1px solid #4b5563;border-radius:8px;color:#9ca3af;cursor:pointer;font-size:1rem;margin-top:.5rem;padding:.875rem;transition:all .2s}.cancel-button:hover{border-color:#6b7280;color:#d1d5db}.error-message{animation:shake .5s;background-color:#ef44441a;border:1px solid #ef4444;border-radius:8px;color:#fca5a5;font-size:.9rem;margin-bottom:1rem;padding:.75rem}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.success-message{background-color:#10b9811a;border:1px solid #10b981;border-radius:8px;color:#6ee7b7;font-size:.9rem;margin-bottom:1rem;padding:.75rem}.role-badge{background-color:#374151;border-radius:12px;color:#10b981;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.5rem;padding:.25rem .75rem}.role-badge.admin{background-color:#ef44441a;color:#fca5a5}.role-badge.member{background-color:#3b82f61a;color:#93c5fd}.role-badge.guest{background-color:#9ca3af1a;color:#d1d5db}.watchlists-page{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#0f172aeb,#080f1ee6);border:1px solid #94a3b824;border-radius:18px;box-shadow:0 18px 32px #080f234d;padding:24px}.watchlists-header-row{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.watchlists-title{color:#e5e7eb;font-size:1.5rem;font-weight:700}.watchlists-subtitle{color:#9ca3af;font-size:.9rem}.watchlists-new-form{align-items:center;display:flex;gap:8px}.watchlists-new-input{background:#02061780;border:1px solid #94a3b84d;border-radius:10px;color:#e5e7eb;min-width:240px;padding:10px 12px}.watchlists-new-input:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa80;outline:none}.watchlists-new-button{background:linear-gradient(180deg,#10b981,#059669);border:1px solid #16a34a;border-radius:10px;color:#02131a;cursor:pointer;font-weight:700;padding:10px 14px}.watchlists-new-button:disabled{cursor:not-allowed;opacity:.6}.watchlists-empty,.watchlists-error,.watchlists-status{color:#9ca3af;font-size:.9rem}.watchlists-error{color:#f97373}.watchlists-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.watchlist-card{background:linear-gradient(180deg,#1e293bf2,#0f172af0);border:1px solid #94a3b829;border-radius:16px;box-shadow:0 18px 32px #080f2359;padding:16px;transition:transform .15s ease,box-shadow .15s ease}.watchlist-card:hover{box-shadow:0 22px 36px #080f2373;transform:translateY(-2px)}.watchlist-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.watchlist-card-actions{align-items:center;display:flex;gap:8px}.action-btn{background:#02061766;border:1px solid #94a3b840;border-radius:8px;color:#cbd5e1;cursor:pointer;font-size:.8rem;padding:6px 10px}.action-btn.primary{border-color:#22c55e;color:#22c55e}.action-btn.danger{border-color:#ef4444;color:#ef4444}.watchlist-edit-row{align-items:center;display:flex;gap:8px;width:100%}.watchlist-edit-input{background:#02061780;border:1px solid #94a3b84d;border-radius:10px;color:#e5e7eb;flex:1 1;padding:8px 10px}.watchlist-card-name{color:#e5e7eb;font-size:1rem;font-weight:600}.watchlist-card-count{background:#02061780;border:1px solid #94a3b840;border-radius:999px;color:#64748b;font-size:.8rem;padding:4px 8px}.watchlist-card-empty{color:#64748b;font-size:.85rem}.watchlist-chip-row{display:flex;flex-wrap:wrap;gap:10px}.watchlist-chip{background:#0f172acc;border:1px solid #94a3b899;border-radius:999px;color:#e5e7eb;cursor:pointer;font-size:.85rem;padding:6px 12px;transition:border-color .15s ease,box-shadow .15s ease,transform .05s ease}.watchlist-chip:hover{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa40}.watchlists-empty,.watchlists-status{background:#02061766;border:1px dashed #94a3b840;border-radius:12px;padding:12px 16px}@media (max-width:800px){.watchlists-header-row{align-items:flex-start;flex-direction:column}.watchlists-new-form{width:100%}.watchlists-new-input{flex:1 1;min-width:0;width:100%}}
/*# sourceMappingURL=main.267bd699.css.map*/