*{margin:0;padding:0;box-sizing:border-box}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden}body{min-width:320px;min-height:100vh}#root{width:100vw;height:100vh;overflow:hidden;display:flex;flex-direction:column}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}button{background-color:#f9f9f9}}.sidebar{position:relative;height:100%;display:flex;flex-direction:column}.sidebar-menu{flex-shrink:0}.sidebar-calculator{position:sticky;bottom:0;width:calc(100% - 5px);margin-left:5px;margin-bottom:20px;border-top:1px solid #eee;background:#fff;box-sizing:border-box;max-height:60vh;overflow-y:auto;margin-top:auto}.sidebar-calculator input,.sidebar-calculator select{width:100%;font-size:.9rem;padding:.5rem}.sidebar-calculator .grid{grid-gap:.5rem}.sidebar-calculator label{font-size:.8rem}.section-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.refresh-button{padding:.5rem 1rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-color);border-radius:4px;cursor:pointer;transition:all .2s}.refresh-button:hover{background-color:var(--accent-color);color:#fff}.refresh-button:disabled{opacity:.6;cursor:not-allowed;background-color:var(--bg-secondary);color:var(--text-color)}.error-message{color:#dc3545;margin-bottom:1rem}.profit-positive{color:#4caf50;font-weight:700}.profit-negative{color:#f44336;font-weight:700}.table-wrapper h3{margin:20px 0 10px;color:#333}.strategy-summary{background:var(--bg-secondary);padding:15px;border-radius:4px;margin-bottom:20px}.strategy-totals{display:flex;gap:20px;margin-bottom:10px}.strategy-consensus{font-size:1.1em}.strategy-consensus strong{color:var(--accent-color)}.yearly-breakdown{margin-top:20px}.yearly-profits-table{width:100%;margin-top:10px;border-collapse:collapse}.yearly-profits-table th,.yearly-profits-table td{padding:8px;text-align:left;border-bottom:1px solid #ddd}.yearly-profits-table th{background-color:#f5f5f5}.yearly-profits-table tr:hover{background-color:#f9f9f9}.profit-positive{color:#4caf50}.profit-negative{color:#f44336}.table-scroll-container{max-height:600px;overflow-y:auto;margin-bottom:20px}.table-scroll-container table{width:100%}.calendar-table thead{position:sticky;top:0;background:#fff;z-index:1}.table-wrapper{margin-bottom:30px}.layout{width:100%;height:100vh;display:flex;flex-direction:column;overflow:hidden;background-color:var(--bg-secondary);color:var(--text-primary)}.main-container{flex:1;display:flex;width:100%;overflow:hidden;position:relative}.content{flex:1;padding:2rem;background-color:var(--bg-secondary);overflow-y:auto;height:100%;width:100%}.navbar{width:100%;min-height:64px;display:flex;justify-content:space-between;align-items:center;padding:0 2rem;background-color:var(--bg-primary);box-shadow:0 2px 4px var(--shadow-color);z-index:100}.sidebar{width:250px;min-width:250px;height:100%;background-color:var(--bg-primary);border-right:1px solid var(--border-color);overflow-y:auto;z-index:50}@media screen and (max-width: 768px){.main-container{flex-direction:column}.sidebar{width:100%;min-width:100%;height:auto;max-height:200px;border-right:none;border-bottom:1px solid #dee2e6}.navbar{padding:0 1rem}.navbar-search{max-width:none;margin:0 .5rem}.navbar-search form{gap:.5rem}.content{padding:1rem}}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.login-container{max-width:400px;margin:50px auto;padding:20px;border:1px solid #ccc;border-radius:5px;box-shadow:0 0 10px #0000001a}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px}.form-group input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.error-message{color:red;margin-top:10px;text-align:center}.app-container{display:flex;flex-direction:column;align-items:center;gap:2rem}.scm-logo{max-width:200px;height:auto;margin-bottom:1rem}.main-nav{display:flex;gap:1rem;margin-bottom:2rem}.main-nav a{padding:.5rem 1rem;text-decoration:none;color:#007bff;border:1px solid #007bff;border-radius:4px;transition:all .3s ease}.main-nav a:hover{background-color:#007bff;color:#fff}.earnings-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem;background-color:var(--bg-primary);color:var(--text-primary);border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid var(--border-color)}.scanner-content,.calendar-content{margin-top:2rem}.navbar-brand{display:flex;align-items:center}.nav-logo{width:180px;height:auto;transition:all .3s ease}.logout-button{padding:.5rem 1rem;background-color:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer}.logout-button:hover{background-color:#c82333}.navbar-search{flex:1;max-width:400px;margin:0 2rem}.navbar-search form{display:flex;align-items:center;gap:1rem}.navbar-search label{font-weight:500;color:#495057}.navbar-search input{flex:1;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;min-width:200px}.navbar-search input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.search-button{display:none}.sidebar-menu{display:flex;flex-direction:column;gap:.5rem}.sidebar-item{padding:.75rem 1.5rem;color:#495057;text-decoration:none;transition:all .3s ease}.sidebar-item:hover{background-color:#e9ecef;color:#007bff}.sidebar-item.active{background-color:#007bff;color:#fff}.calendar{background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1rem}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.5rem;color:var(--text-primary)}.calendar-header button{background:none;border:1px solid var(--border-color);padding:.5rem 1rem;cursor:pointer;border-radius:4px;color:var(--text-primary);background-color:var(--bg-primary)}.calendar-header button:hover{background-color:var(--bg-secondary)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:.5rem 0}.weekday{text-align:center;font-weight:500;color:var(--text-primary)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:var(--border-color)}.calendar-day{background-color:var(--bg-primary);min-height:120px;padding:.5rem;position:relative;border:1px solid var(--border-color)}.calendar-day.empty{background-color:var(--bg-secondary)}.calendar-day.has-events{background-color:var(--bg-primary);border:1px solid var(--accent-color)}.calendar-day.has-events:hover{background-color:var(--bg-secondary)}.day-number{position:absolute;top:5px;right:5px;color:var(--text-primary)}.day-events{margin-top:25px;display:flex;flex-direction:column;gap:.25rem}.event{background-color:var(--event-bg);border-radius:4px;padding:.5rem;font-size:.875rem;display:flex;justify-content:space-between;align-items:center}.event-symbol{font-weight:500;color:var(--accent-color)}.event-time{font-size:.75rem;color:var(--text-secondary)}.event-header,.event-details,.event-price,.event-metrics{display:none}@media (max-width: 768px){.event-metrics{flex-direction:column;gap:.25rem}.calendar-day{min-height:100px}}:root[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--text-primary: #213547;--text-secondary: #495057;--border-color: #dee2e6;--shadow-color: rgba(0,0,0,.1);--accent-color: #007bff;--accent-hover: #0056b3;--event-bg: #e9ecef}:root[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #ffffff;--text-secondary: #b0b0b0;--border-color: #404040;--shadow-color: rgba(0,0,0,.3);--accent-color: #5c9eff;--accent-hover: #4a7eff;--event-bg: #3a3a3a}.layout{background-color:var(--bg-secondary);color:var(--text-primary)}.navbar{background-color:var(--bg-primary);box-shadow:0 2px 4px var(--shadow-color)}.sidebar{background-color:var(--bg-primary);border-right:1px solid var(--border-color)}.content{background-color:var(--bg-secondary)}.theme-toggle{margin-right:1rem;background:none;border:1px solid var(--border-color);padding:.5rem;font-size:1.2rem;cursor:pointer;border-radius:50%}.theme-toggle:hover{background-color:var(--bg-secondary)}input{background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color)}input:focus{border-color:var(--accent-color)}h2{color:var(--text-primary)}.event-symbol.clickable{cursor:pointer;text-decoration:underline;transition:color .2s ease}.event-symbol.clickable:hover{color:var(--accent-hover)}.detail-content{margin-top:2rem;padding:1rem;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px}.calendar-table-container{margin-top:3rem}.table-wrapper{overflow-x:auto;margin-top:1rem;background-color:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color)}.calendar-table{width:100%;border-collapse:collapse;font-size:.875rem}.calendar-table th,.calendar-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color)}.calendar-table th{background-color:var(--bg-secondary);font-weight:600;color:var(--text-primary)}.calendar-table td{color:var(--text-primary)}.calendar-table tbody tr:hover{background-color:var(--bg-secondary)}.calendar-table .clickable{color:var(--accent-color);cursor:pointer;text-decoration:underline}.calendar-table .clickable:hover{color:var(--accent-hover)}@media (max-width: 768px){.table-wrapper{margin:1rem -1rem;border-radius:0;border-left:none;border-right:none}.calendar-table th,.calendar-table td{padding:.5rem;font-size:.75rem}}.calendar-container{width:100%;height:800px;background-color:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color);overflow:hidden}.calendar-container iframe{opacity:0;transition:opacity .3s ease}.calendar-container iframe.loaded{opacity:1}.nasdaq-link-container{margin:1rem 0}.nasdaq-button{padding:.75rem 1.5rem;background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s ease}.nasdaq-button:hover{background-color:var(--accent-hover)}.barchart-button{padding:.75rem 1.5rem;background-color:var(--accent-color);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .2s ease}.barchart-button:hover{background-color:var(--accent-hover)}.earnings-details-container{padding:1rem;background-color:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color)}.earnings-details-container h2{margin-bottom:1.5rem}.section-header{background-color:var(--bg-secondary);text-align:center!important;border-bottom:2px solid var(--border-color)}.calendar-table th[rowspan="2"]{vertical-align:middle}.detail-sections{display:flex;flex-direction:column;gap:2rem}.detail-row{display:grid;grid-template-columns:40% 60%;gap:2rem}.detail-section{background-color:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color);padding:1.5rem;min-width:0}.detail-section h3{margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}@media (max-width: 1200px){.detail-row{grid-template-columns:1fr}}.market-status-container,.market-holidays-container{font-size:.9rem}.market-status,.market-holidays{display:flex;gap:1rem;align-items:center;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:4px;border:1px solid var(--border-color)}.market-timer,.holiday-item,.market-session,.market-status-text,.holiday-label{font-size:inherit}.market-status-container{display:flex;align-items:center;margin:0 1rem}.holiday-item{background:none;padding:0}[data-theme=dark] .market-status{background:var(--bg-secondary)}[data-theme=dark] .market-session{color:var(--text-secondary)}.market-info-container{display:flex;flex-direction:row;align-items:center;gap:16px;margin:0 16px}.market-holidays{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:4px;border:1px solid var(--border-color)}.holiday-group{display:flex;align-items:center;gap:.5rem}.holiday-label{color:var(--text-secondary)}.market-status-text,.market-session,.holiday-label{font-weight:600}.market-status-text{color:var(--text-primary)}.market-session,.holiday-label{color:var(--text-secondary)}.text-green-500{color:#10b981}.text-red-500{color:#ef4444}.ticker-form{display:flex;flex-direction:column;gap:1rem;max-width:500px;margin:1rem auto}.ticker-input{padding:.5rem;font-size:1rem;border:1px solid #ccc;border-radius:4px;resize:vertical}.submit-button{padding:.5rem 1rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.submit-button:hover{background-color:#0056b3}.ticker-list{margin-top:2rem}.ticker-item{cursor:pointer;padding:.5rem;margin:.25rem .5rem .25rem 0;background-color:#f8f9fa;border-radius:4px;display:inline-block}.ticker-item:hover{background-color:#e9ecef}.earnings-workflow-container{padding:20px;max-width:1600px;margin:0 auto}.earnings-tiles-container{padding:20px}.earnings-tiles-row{display:flex;flex-wrap:wrap;gap:20px;justify-content:flex-start}.earnings-tile-wrapper{flex:0 0 calc(33.333% - 14px);min-width:300px}.earnings-tile{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 2px 4px #0000001a;height:100%}.tile-header{background:#f8f9fa;padding:15px;border-bottom:1px solid #ddd}.tile-header h3{margin:0;color:#333;font-size:1.2em;text-align:center}.tile-content{padding:15px;overflow-x:auto}.tile-content table{width:100%;border-collapse:collapse}.tile-content tr:nth-child(2n){background-color:#f8f9fa}.tile-content td{padding:8px;border-bottom:1px solid #eee;font-size:.9em}.key-cell{font-weight:700;color:#666;width:40%}.value-cell{color:#333;word-break:break-word}.table-container{overflow-x:auto;margin:20px 0}.earnings-table{width:100%;border-collapse:collapse;background:#fff;font-size:.9em}.earnings-table th,.earnings-table td{padding:12px;border:1px solid #ddd;text-align:left;white-space:nowrap}.earnings-table th{background-color:#f8f9fa;font-weight:700;position:sticky;top:0;z-index:1}.earnings-table .row-header{background-color:#f8f9fa;font-weight:700;position:sticky;left:0;z-index:2}.earnings-table tr:nth-child(2n){background-color:#f8f9fa}.earnings-table tr:hover{background-color:#f5f5f5}.loading,.no-results{text-align:center;padding:20px;color:#666}@media (max-width: 1200px){.earnings-tile-wrapper{flex:0 0 calc(50% - 10px)}}@media (max-width: 768px){.earnings-tile-wrapper{flex:0 0 100%}}.past-earnings-core-container{padding:20px;max-width:100%;overflow-x:auto}.past-earnings-core-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}.past-earnings-core-table th,.past-earnings-core-table td{border:1px solid #ddd;padding:8px;text-align:right}.past-earnings-core-table th{background-color:#f5f5f5;font-weight:700;position:sticky;top:0;z-index:1}.past-earnings-core-table td.row-header{background-color:#f5f5f5;font-weight:700;text-align:left;position:sticky;left:0;z-index:2}.past-earnings-core-table tr:hover{background-color:#f8f8f8}.past-earnings-error-message{color:#dc3545;padding:10px;margin:10px 0;border:1px solid #dc3545;border-radius:4px;background-color:#f8d7da}.past-earnings-loading{padding:20px;text-align:center;color:#666}.past-earnings-no-results{padding:20px;text-align:center;color:#666;font-style:italic}.past-earnings-filter-section{background-color:#f8f9fa;padding:15px;border-radius:4px;border:1px solid #dee2e6}.past-earnings-table-container{overflow-x:auto;max-width:100%;position:relative}@media (max-width: 768px){.past-earnings-filter-section>div{flex-direction:column;align-items:stretch}.past-earnings-filter-section label{margin-bottom:10px}}.core-summaries-container{padding:20px;max-width:100%;overflow-x:auto}.core-summaries-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}.core-summaries-table th,.core-summaries-table td{border:1px solid #ddd;padding:8px;text-align:right}.core-summaries-table th{background-color:#f5f5f5;font-weight:700;position:sticky;top:0;z-index:1}.core-summaries-table td.row-header{background-color:#f5f5f5;font-weight:700;text-align:left;position:sticky;left:0;z-index:2}.core-summaries-table tr:hover{background-color:#f8f8f8}.error-message{color:#dc3545;padding:10px;margin:10px 0;border:1px solid #dc3545;border-radius:4px;background-color:#f8d7da}.loading{padding:20px;text-align:center;color:#666}.no-results{padding:20px;text-align:center;color:#666;font-style:italic}.filter-section{background-color:#f8f9fa;padding:15px;border-radius:4px;border:1px solid #dee2e6}.table-container{overflow-x:auto;max-width:100%;position:relative}@media (max-width: 768px){.filter-section>div{flex-direction:column;align-items:stretch}.filter-section label{margin-bottom:10px}}.core-summaries-table td.numeric{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";white-space:nowrap}
