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;color:#f3f6fb;font-family:Inter,Roboto,Arial,sans-serif;margin:0;min-height:100vh}:root{--primary-bg:#23263a;--secondary-bg:#181a20;--border-color:#404552;--accent-blue:#2979ff;--accent-green:#4ade80;--accent-secondary:#22c55e;--text-color:#f3f6fb;--border-radius:12px;--border-radius-xs:6px;--box-shadow:0 4px 20px #0000004d;--box-shadow-sm:0 2px 10px #0003;--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)}.app-container{display:flex}.app-container,.main-content{background:#181a20;min-height:100vh}.main-content{flex:1 1;margin-left:260px;overflow-y:auto;padding:40px}.container{background:#181a20;min-height:100vh;padding:32px 40px}.sidebar{align-items:center;background:linear-gradient(180deg,#2979ff,#1a237e);box-shadow:2px 0 8px #0003;display:flex;flex-direction:column;padding-top:24px;width:80px}.sidebar-icon{color:#fff;height:40px;margin:16px 0;opacity:.8;transition:opacity .2s;width:40px}.sidebar-icon.active{filter:drop-shadow(0 0 8px #2979FF);opacity:1}.dashboard{background:#181a20;flex:1 1;padding:32px 40px}.top-nav{align-items:center;display:flex;gap:32px;justify-content:flex-start;margin-bottom:32px}.top-nav .tabs{display:flex;gap:16px}.top-nav>.header-with-icon{flex:1 1 auto}.top-nav>div{align-items:center;display:flex;flex:0 0 auto;justify-content:flex-end}.tab{background:#23263a;border:none;border-radius:8px 8px 0 0;color:#f3f6fb;cursor:pointer;font-weight:500;outline:none;padding:10px 24px;transition:background .2s}.tab.active{background:#2979ff;color:#fff}.card{background:#23263a;border-radius:16px;box-shadow:0 2px 16px #0000002e;color:#f3f6fb;margin-bottom:24px;padding:24px 32px}.card-title{font-size:1.2rem;font-weight:600;margin-bottom:12px}.card-metrics{display:flex;gap:32px}.metric{margin-bottom:8px}.metric-label{color:#aab4be;font-size:.95rem}.metric-value{font-size:1.1rem;font-weight:500}.metric-bar{background:#2979ff;border-radius:3px;height:6px;margin-top:4px}.metric-bar.red{background:#ff5252}.metric-bar.green{background:#00e676}.metric-bar.blue{background:#2979ff}.stock-chart{background:#23263a;border-radius:16px;box-shadow:0 2px 16px #0000002e;margin-bottom:24px;padding:24px}.stock-chart-title{color:#f3f6fb;font-size:1.1rem;margin-bottom:8px}.stock-chart-controls{display:flex;gap:8px;margin-bottom:8px}.stock-chart-btn{background:#23263a;border:1px solid #2979ff;border-radius:6px;color:#2979ff;cursor:pointer;font-size:.95rem;padding:4px 12px;transition:background .2s,color .2s}.stock-chart-btn.active{background:#2979ff;color:#fff}.chart-row{display:flex;gap:24px;margin-bottom:24px}.chart-card{background:#23263a;border-radius:16px;box-shadow:0 2px 16px #0000002e;color:#f3f6fb;flex:1 1;padding:24px}.chart-title{font-size:1.1rem;margin-bottom:8px}.btn{background:#2979ff;border:none;border-radius:8px;box-shadow:0 2px 8px #2979ff26;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:10px 24px;transition:background .2s}.btn:hover{background:#1565c0}.edit-btn,.reset-btn{background:#23263a;border:1px solid #2979ff;border-radius:8px;color:#2979ff;cursor:pointer;font-size:1rem;font-weight:500;margin-right:8px;padding:8px 20px;transition:background .2s,color .2s}.edit-btn:hover,.reset-btn:hover{background:#2979ff;color:#fff}.divider{background:#23263a;height:1px;margin:24px 0}.avatar{align-items:center;background:#2979ff;border-radius:50%;color:#fff;display:flex;font-size:1.1rem;font-weight:600;height:40px;justify-content:center;width:40px}@media (max-width:1200px){.dashboard{padding:24px 12px}.chart-row{flex-direction:column;gap:16px}}@media (max-width:800px){.app-container{flex-direction:column}.main-content{margin-left:0;padding:20px}.container{padding:16px 20px}.header-row{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:16px}.header-row .company-input{max-width:none;width:100%}.header-with-icon{font-size:2rem;gap:16px;margin-bottom:8px}h1{font-size:2.2rem;margin-bottom:20px}.view-tabs{gap:8px;margin:20px 0}.view-tab-button{font-size:14px;min-width:120px;padding:12px 16px}}h1{color:#fff;font-size:3rem;margin-bottom:40px;text-align:center}.header-with-icon,h1{font-weight:700;text-shadow:0 4px 20px #000c}.header-with-icon{color:#f3f6fb;font-size:2.4rem;gap:28px;justify-content:flex-start;letter-spacing:.5px;line-height:1;margin-bottom:0}.header-icon,.header-with-icon{align-items:center;display:flex}.header-icon{filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));flex-shrink:0;height:54px;width:54px}.header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px;padding:0 10px;width:100%}.header-row .company-input{background:none;border:none;box-shadow:none;flex:1 1;margin-bottom:0;max-width:600px;padding:0}.company-input{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#23263a;background:var(--primary-bg);border:1px solid #404552;border:1px solid var(--border-color);border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 20px #0000004d;box-shadow:var(--box-shadow);display:flex;flex-direction:column;gap:20px;margin-bottom:40px;padding:24px;position:relative}.company-input:before{background:linear-gradient(135deg,#2979ff,#1a237e);background:var(--accent-gradient);border-radius:15px 15px 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.input-form{flex-wrap:wrap;gap:15px}.input-group{align-items:center}.symbol-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#181a20;background:var(--secondary-bg);border:2px solid #475569cc;border-radius:6px;border-radius:var(--border-radius-xs);color:#f3f6fb;color:var(--text-color);font-weight:500;padding:14px 45px 14px 16px;transition:all .3s ease;transition:var(--transition)}.symbol-input:focus{background:#475569cc;border-color:#2979ff;border-color:var(--accent-blue);box-shadow:0 0 0 3px #1e40af4d,0 8px 25px #1e40af33;transform:translateY(-1px)}.symbol-input:disabled{background:#2a2a2a;opacity:.6}.clear-button{align-items:center;background:none;border:none;border-radius:50%;color:#a0a0a0;display:flex;font-size:18px;height:25px;justify-content:center;padding:5px;right:10px;transition:all .2s ease;width:25px}.clear-button:hover:not(:disabled){background:#ffffff1a;color:#f3f6fb;color:var(--text-color)}.clear-button:disabled{opacity:.3}.search-button{align-items:center;background:#1e40afcc;border:none;border-radius:6px;border-radius:var(--border-radius-xs);box-shadow:0 4px 15px #1e40af66,inset 0 1px 0 #fff3;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;min-width:140px;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s ease;transition:var(--transition)}.search-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s;width:100%}.search-button:hover:not(:disabled):before{left:100%}.search-button:hover:not(:disabled){background:#1e40af;box-shadow:0 8px 25px #1e40af80,inset 0 1px 0 #fff3;transform:translateY(-2px)}.search-button:disabled{background:#555;box-shadow:none;color:#a0a0a0;cursor:not-allowed;transform:none}.search-button.loading{animation:pulse 1.5s ease-in-out infinite}.spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.year-input{background:#3a3a3a;border:2px solid #404552;border:2px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius-xs);color:#f3f6fb;color:var(--text-color);font-size:16px;padding:12px;transition:all .3s ease;transition:var(--transition);width:120px}.year-input:focus{background:#404040;border-color:#2979ff;border-color:var(--accent-blue);box-shadow:0 0 0 3px #2196f34d;color:#fff;outline:none}.year-input:disabled{background:#2a2a2a;cursor:not-allowed;opacity:.6}.year-input::-webkit-inner-spin-button,.year-input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.popular-stocks{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#181a20;background:var(--secondary-bg);border:1px solid #47556980;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 2px 10px #0003;box-shadow:var(--box-shadow-sm);display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px 20px}.popular-label{font-size:14px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.popular-label,.stock-button{color:#f3f6fb;color:var(--text-color)}.stock-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#181a20;background:var(--secondary-bg);border:1px solid #475569cc;border-radius:25px;box-shadow:0 2px 8px #0000004d;cursor:pointer;font-size:13px;font-weight:600;overflow:hidden;padding:8px 16px;position:relative;transition:all .3s ease;transition:var(--transition)}.stock-button:hover:not(:disabled){background:#1e40af4d;border-color:#1e40afcc;box-shadow:0 6px 20px #1e40af4d;color:#fff;transform:translateY(-2px)}.view-tabs{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin:40px 0}.view-tab-button{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#181a20;background:var(--secondary-bg);border:2px solid #47556999;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 2px 10px #0003;box-shadow:var(--box-shadow-sm);color:#f3f6fb;color:var(--text-color);cursor:pointer;font-size:16px;font-weight:600;min-width:180px;overflow:hidden;padding:16px 32px;position:relative;transition:all .3s ease;transition:var(--transition)}.view-tab-button:hover{background:#475569e6;border-color:#1e40af99;box-shadow:0 12px 35px #00000080;color:#fff;transform:translateY(-3px)}.view-tab-button.active{background:linear-gradient(135deg,#2979ff,#1a237e);background:var(--accent-gradient);border-color:#4ade80;border-color:var(--accent-green);box-shadow:0 12px 35px #1e40af66;color:#fff;transform:translateY(-3px)}.projection-table{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#181a20;background:var(--secondary-bg);border:1px solid #47556980;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 20px #0000004d;box-shadow:var(--box-shadow);overflow:hidden}table{border-collapse:collapse;width:100%}td,th{border:1px solid #444;font-size:16px;padding:15px 12px;text-align:center}td,th{font-weight:700}th{background:linear-gradient(135deg,#2979ff,#1a237e);background:var(--accent-gradient);border-radius:8px 8px 0 0;color:#fff;font-size:18px;position:relative}.input-metric{background:#333}.calculated-metric{background:#4caf501a}.input-label{background:#404040!important;border-left:4px solid #4caf50!important;color:#e0e0e0!important}.calculated-label{background:#4caf5033!important;border-left:4px solid #66bb6a!important;color:#e0e0e0!important}td input{background:#333;border:2px solid #555;border-radius:6px;box-shadow:inset 0 1px 3px #0000004d;color:#f3f6fb;color:var(--text-color);font-size:16px;padding:8px;text-align:center;transition:all .3s ease;transition:var(--transition);width:100%}td input:focus{animation:inputFocus .3s ease;background:#404040!important;border-color:#4ade80!important;border-color:var(--accent-green)!important;box-shadow:0 0 0 2px #4caf504d;color:#fff;outline:none}@keyframes inputFocus{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.calculated{animation:calculatedPulse 2s ease-in-out infinite;background:#4caf504d!important;border:2px solid #4caf5066!important;color:#e8f5e8!important;font-weight:700}@keyframes calculatedPulse{0%,to{opacity:1}50%{opacity:.8}}.share-price-row{background:#f093fb!important}.cagr-row{background:#ffecd2!important}.cagr-row,.cagr-row input{color:#666!important}.input-metric:hover{background:#ffffff14}.calculated-metric:hover,.input-metric:hover{transform:translateY(-1px);transition:all .2s ease}.calculated-metric:hover{background:#4caf5026}.legend{flex-wrap:wrap;margin-bottom:20px}.legend-item{background:#ffffff1a;border-radius:12px;border-radius:var(--border-radius);font-weight:700;padding:8px 16px}.legend-item.input-legend{border:2px solid #4caf50}.legend-item.calculated-legend{border:2px solid #66bb6a}.legend-item.historical-legend{border:2px solid #4a90e2}@media (max-width:768px){.projection-table{overflow-x:auto}td,th{font-size:14px;padding:10px 8px}.scenario-tabs{flex-wrap:wrap}body{padding:12px}.header-with-icon,h1{font-size:2.2rem}.company-input{border-radius:16px;padding:16px}.view-tab-button{font-size:14px;min-width:140px;padding:12px 20px}}.historical-year{background:#4a90e2!important;color:#fff!important;font-weight:700;position:relative}.historical-data{background:#4a90e24d!important;border:2px solid #4a90e266!important;color:#e8f2ff!important}.save-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:6px;border-radius:var(--border-radius-xs);gap:15px;margin:20px 0;padding:15px}.save-button,.save-controls{align-items:center;display:flex}.save-button{background:linear-gradient(135deg,#2979ff,#1a237e);background:var(--accent-gradient);border:none;border-radius:6px;border-radius:var(--border-radius-xs);color:#fff;cursor:pointer;font-size:16px;font-weight:700;gap:8px;justify-content:center;min-width:160px;padding:12px 20px;transition:all .3s ease;transition:var(--transition)}.save-button:hover:not(:disabled){background:#1e40af;box-shadow:0 5px 15px #1e40af66;transform:translateY(-2px)}.save-button:disabled{background:#fff3;box-shadow:none;cursor:not-allowed;transform:none}.save-status{align-items:center;border-radius:6px;display:flex;font-weight:700;gap:5px;padding:8px 12px}.save-status.loading{background:#ffc10733;border:1px solid #ffc1074d;color:#ffc107}.save-status.success{background:#4caf5033;border:1px solid #4caf504d;color:#4caf50}.save-status.error{background:#f4433633;border:1px solid #f443364d;color:#f44336}.saved-projections{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;border-radius:var(--border-radius);margin:30px 0;padding:20px}.saved-projections h3{color:#fff;font-size:1.4rem;margin:0 0 15px}.saved-projections-list{display:flex;flex-direction:column;gap:10px}.saved-projection-item{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;display:flex;justify-content:space-between;padding:12px 15px;transition:all .3s ease}.saved-projection-item:hover{background:#ffffff26;transform:translateY(-1px)}.projection-info{flex:1 1}.projection-info strong{color:#4caf50;font-size:1.1rem}.projection-info small{color:#ffffffb3;font-size:.85rem}.projection-actions{display:flex;gap:8px}.delete-button,.load-button{align-items:center;border:none;border-radius:5px;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:4px;padding:6px 12px;transition:all .3s ease}.load-button{background:linear-gradient(135deg,#2979ff,#1a237e);background:var(--accent-gradient);color:#fff}.load-button:hover{background:#4caf50;transform:translateY(-1px)}.delete-button{background:#f44336cc;color:#fff}.delete-button:hover{background:#f44336;transform:translateY(-1px)}.stock-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;border-radius:var(--border-radius);margin-bottom:30px;padding:20px;text-align:center}.stock-info h3{font-size:24px;font-weight:700;margin:0 0 15px}.stock-info p{color:#ffffffe6;font-size:18px;font-weight:700;margin:8px 0}@media (max-width:768px){.save-controls{align-items:stretch;flex-direction:column;gap:10px}.save-button{min-width:auto}.saved-projection-item{align-items:stretch;flex-direction:column;gap:10px}.projection-actions{justify-content:center}.stock-info h3{font-size:20px}.stock-info p{font-size:16px}}.cache-management-button{background:#ff6b6bcc;border:2px solid #ffffff4d;border-radius:25px;box-shadow:0 4px 15px #0003;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:700;padding:12px 24px;text-decoration:none;transition:all .3s ease;transition:var(--transition)}.cache-management-button:hover{background:#ff6b6b;border-color:#ffffff80;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.cache-management-button:active{box-shadow:0 2px 10px #0003;transform:translateY(0)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.company-input,.popular-stocks,.projection-table,.view-tabs{animation:fadeInUp .6s ease-out;animation-fill-mode:both}.company-input{animation-delay:.1s}.popular-stocks{animation-delay:.2s}.view-tabs{animation-delay:.3s}.projection-table{animation-delay:.4s}@media (max-width:768px){body{padding:12px}.header-with-icon,h1{font-size:2.2rem}.header-icon{height:36px;width:36px}.company-input{border-radius:16px;padding:16px}.view-tab-button{font-size:14px;min-width:140px;padding:12px 20px}}.page-search-container{background:#23263a;background:var(--primary-bg);border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 20px #0000004d;box-shadow:var(--box-shadow);margin:20px auto 40px;max-width:800px;padding:40px;text-align:center}.page-search-container h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f3f6fb,#aab4be);background:var(--text-gradient);-webkit-background-clip:text;background-clip:text;margin-bottom:16px;margin-top:0}.search-prompt{color:#aab4be;font-size:1.1rem;margin-bottom:24px}.page-search-container .company-input{margin:0 auto;max-width:600px}.loading-message{background:#23263a;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 2px 10px #0003;box-shadow:var(--box-shadow-sm);padding:30px}.loading-message p{color:#2979ff;color:var(--accent-blue)}.error-message{background:#f871711a;border:2px solid #f87171;border-radius:12px;border-radius:var(--border-radius)}.error-message p{margin:0}.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;font-weight:600}.projection-table td input{border:2px solid #404552;border-radius:4px;box-sizing:border-box;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;gap:8px}.legend-box,.legend-item{align-items:center;display:flex}.legend-box{border-radius:4px;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:32px}.growth-chart-half{display:flex;flex:1 1;flex-direction:column;max-height:550px;min-width:0}.growth-chart-full{display:flex;flex:1 1 100%;flex-direction:column;max-height:600px;min-width:0}.growth-chart-full h4,.growth-chart-half h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.growth-chart-full p,.growth-chart-half p{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin-bottom:1rem}@media (max-width:900px){.growth-charts-row{flex-direction:column;gap:18px}}.quality-charts-row{display:flex;gap:24px;margin-bottom:32px}.quality-chart-half{display:flex;flex:1 1;flex-direction:column;min-width:0}.quality-chart-half h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.quality-chart-half p{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin-bottom:1rem}@media (max-width:900px){.quality-charts-row{flex-direction:column;gap:18px}}.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-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}@media (max-width:768px){.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)}.income-charts-grid{margin:20px 0 40px}.income-charts-grid h3{color:#fff;font-size:1.8rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}.charts-container{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:20px}.metric-chart-card{background:var(--primary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;padding:15px;transition:transform .3s ease,box-shadow .3s ease}.metric-chart-card:hover{box-shadow:0 15px 50px #000c;transform:translateY(-5px)}.metric-chart-card h4{border-bottom:2px solid #fff3;color:#fff;font-size:1.1rem;margin-bottom:10px;padding-bottom:6px;text-align:center}.chart-wrapper{height:180px}.balance-charts-grid{margin:20px 0 40px}.balance-charts-grid h3{color:#fff;font-size:1.8rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}.cashflow-charts-grid{margin:20px 0 40px}.cashflow-charts-grid h3{color:#fff;font-size:1.8rem;margin-bottom:30px;text-align:center;text-shadow:2px 2px 4px #00000080}.earnings-charts-grid{margin:20px 0 40px}.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(auto-fit,minmax(280px,1fr))}}@media (max-width:1200px){.charts-container{gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media (max-width:768px){.charts-container{gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.metric-chart-card{padding:12px}.chart-wrapper{height:150px}.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:140px}.metric-chart-card h4{font-size:.95rem}}.chart-wrapper{height:400px;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}.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;cursor:pointer;font-size:12px;font-weight:700;padding:8px 20px;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}.overview-header{align-items:center;border-bottom:1px solid #404552;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:24px}.overview-title-section{display:flex;flex-direction:column;gap:4px}.company-ticker{color:#fff;font-size:1.8rem;font-weight:700;letter-spacing:1px}.company-name{color:#94a3b8;font-size:1.1rem;font-weight:500;letter-spacing:.3px}.overview-key-metrics{align-items:center;display:flex;gap:24px}.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:32px}.metric-section{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;padding:20px}.metric-section-title{color:#94a3b8;font-size:1rem;font-weight:600;letter-spacing:.5px;margin-bottom:16px;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}.price-and-analyst-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:32px}.stock-price-section{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;display:flex;flex-direction:column;max-height:500px;overflow:hidden;padding:20px}.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:12px;border-top:1px solid #ffffff1a;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-top:12px;padding-top:12px}.price-metric-card{background:#ffffff08;border:1px solid #ffffff0d;border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:10px}.price-metric-label{color:#94a3b8;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.price-metric-value{color:#fff;font-size:1.1rem;font-weight:700}.price-metric-diff{color:#94a3b8;font-size:.75rem;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}.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:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin-bottom:32px;margin-top:32px}.bottom-chart{background:var(--primary-bg);border:1px solid #404552;border-radius:12px;height:350px;max-height:350px;overflow:hidden;padding:16px}.bottom-chart,.chart-placeholder{display:flex;flex-direction:column}.chart-placeholder{align-items:center;color:#94a3b8;height:100%;justify-content:center;text-align:center}.chart-placeholder h4{color:#e0e0e0;font-size:1rem;font-weight:600;margin-bottom:8px}.chart-placeholder p{color:#94a3b8;font-size:.85rem}@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}}@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:var(--secondary-bg);border:1px solid #404552;border-radius:15px;box-shadow:0 10px 40px #0009;color:#e0e0e0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:12px 0;overflow:hidden;padding:2rem;position:relative}.overview:before{display:none}.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}.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}}.overview-section{margin-top:16px!important}.section-title{border-left:4px solid #3b82f6!important;color:#fff!important;font-size:18px!important;font-weight:600!important;letter-spacing:1px!important;margin-bottom:12px!important;padding-left:12px!important;text-transform:uppercase!important}.metrics-container{grid-gap:1rem!important;display:grid!important;gap:1rem!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;margin-top:16px!important}.metrics-column,.metrics-container{box-sizing:border-box!important;width:100%!important}.metrics-column{-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background:var(--primary-bg)!important;border:1px solid #475569!important;border-radius:12px!important;box-shadow:0 4px 20px #0006!important;padding:1rem!important;position:relative!important}.metrics-column:before{background:var(--accent-gradient);border-radius:12px 12px 0 0;content:"";height:2px;left:0;position:absolute;right:0;top:0}.metrics-column h3{align-items:center;border-bottom:1px solid #475569;color:#fff;display:flex;font-size:1.4rem;font-weight:600;gap:8px;letter-spacing:.5px;margin:0 0 1.5rem;padding-bottom:.75rem;text-transform:uppercase}.metrics-column h3:before{background:var(--success-gradient);border-radius:50%;box-shadow:0 0 8px #4ade8066;content:"";height:8px;width:8px}.metric-row{align-items:flex-start!important;border:none!important;display:flex!important;font-size:14px!important;font-weight:500!important;gap:.75rem!important;justify-content:space-between!important;min-height:2rem!important;overflow:visible!important;padding:.5rem 0!important;position:relative!important;text-align:left!important;transition:all .3s ease!important}.metric-row:hover{background:#ffffff05;border-radius:4px}.metric-row:last-child{border-bottom:none}.metric-label{color:#94a3b8!important;font-weight:500!important;letter-spacing:.25px!important;text-align:left!important}.metric-label,.metric-value{word-wrap:break-word!important;background:#0000!important;border:none!important;flex:1 1 auto!important;font-size:14px!important;min-width:0!important;overflow-wrap:break-word!important;padding:0!important}.metric-value{border-radius:0!important;color:#fff!important;font-family:Courier New,monospace!important;font-weight:700!important;-webkit-hyphens:auto!important;hyphens:auto!important;max-width:60%!important;text-align:right!important;white-space:normal!important}.metric-value.positive{color:#4ade80!important}.metric-value.negative,.metric-value.positive{background:#0000!important;border:none!important}.metric-value.negative{color:#f87171!important}.metric-value.neutral{background:#0000!important;border:none!important;color:#fbbf24!important}.metric-row.with-progress{align-items:stretch;flex-direction:column;gap:8px}.metric-progress{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.progress-bar{background:#4755694d;border-radius:2px;height:4px;margin-top:4px;overflow:hidden;width:100%}.progress-fill{background:var(--success-gradient);border-radius:2px;height:100%;transition:width .6s ease-in-out}.overview-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:16px}.grid-item{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(135deg,#ffffff14,#ffffff08);border:1px solid #ffffff1a;border-radius:8px;padding:12px;transition:all .3s ease}.grid-item:hover{background:linear-gradient(135deg,#ffffff1f,#ffffff0f);box-shadow:0 8px 25px #0000004d;transform:translateY(-2px)}.grid-item .label{color:#94a3b8;font-size:12px;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.grid-item .value{word-wrap:break-word;color:#fff;font-family:Courier New,monospace;font-weight:700;margin-top:6px}.overview-error,.overview-loading{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#f8717126,#f8717114);border:1px solid #f871714d;border-radius:8px;box-shadow:0 4px 15px #f8717133;color:#f87171;font-size:14px;margin-top:12px;padding:16px}.overview-cache-note{word-wrap:break-word;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(135deg,#94a3b81a,#94a3b80d);border:1px solid #94a3b833;border-radius:8px;color:#94a3b8;font-size:12px;line-height:1.5;margin-top:12px;padding:16px}@media (max-width:1024px){.overview{margin:10px;padding:1.75rem}.symbol-text{font-size:2.5rem}.price-text{font-size:1.6rem}.overview-top{align-items:flex-start;flex-direction:column;gap:16px;padding:1.25rem}.overview-stats{flex-wrap:wrap;gap:16px;width:100%}.metrics-container{gap:1rem!important;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}.metrics-column{padding:1rem!important}.overview-grid{gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.overview-cache-note{font-size:12px;margin-top:12px;padding:15px}.overview-error,.overview-loading{font-size:14px;margin-top:12px;padding:16px}}@media (max-width:800px){.overview{margin:8px;padding:1.5rem}.symbol-text{font-size:2.2rem}.price-text{font-size:1.5rem}.overview-top{align-items:flex-start;flex-direction:column;gap:16px;padding:1rem}.overview-stats{flex-wrap:wrap;gap:12px;width:100%}.metrics-container{gap:.75rem!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important}.metrics-column{padding:1rem!important}.overview-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.overview-cache-note{font-size:11px;margin-top:10px;padding:14px}.overview-error,.overview-loading{font-size:13px;margin-top:10px;padding:15px}}@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}}.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{display:flex;flex-wrap:wrap;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}.calculate-button{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.calculate-button:hover:not(:disabled){box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.calculate-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}}.user-info{background:linear-gradient(135deg,#10b9811a,#0596690d);border:1px solid #10b98133;border-radius:8px;margin-bottom:1rem;padding:1rem}.user-info-header{gap:.75rem;margin-bottom:.75rem}.user-avatar,.user-info-header{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;font-size:1.1rem;font-weight:700;height:40px;justify-content:center;width:40px}.user-details{flex:1 1;min-width:0}.user-email{color:#f3f4f6;font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.25rem;padding:.2rem .6rem}.user-role.admin{background-color:#ef444433;color:#fca5a5}.user-role.member{background-color:#3b82f633;color:#93c5fd}.user-role.guest{background-color:#9ca3af33;color:#d1d5db}.auth-buttons{display:flex;flex-direction:column;gap:.5rem}.auth-button-primary{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}.auth-button-primary:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.auth-button-secondary{background-color:initial;border:1px solid #4b5563;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:.9rem;padding:.625rem 1rem;transition:all .2s}.auth-button-secondary:hover{border-color:#6b7280;color:#d1d5db}.logout-button{background-color:#ef44441a;border:1px solid #ef4444;border-radius:6px;color:#fca5a5;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s}.logout-button:hover{background-color:#ef444433}.sidebar{background:linear-gradient(180deg,#1a1f2e,#0f1419);border-right:1px solid #4755694d;box-shadow:4px 0 20px #00000080;color:#d1d5db;height:100vh;left:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:0;width:260px;z-index:1000}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#0003}.sidebar::-webkit-scrollbar-thumb{background:#47556980;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#475569b3}.sidebar-header{background:#10b9810d;border-bottom:1px solid #4755694d;padding:24px 20px}.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}}.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}}.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}
/*# sourceMappingURL=main.c1b94506.css.map*/