.transcript-themes{padding:2px 0 4px 2px;line-height:1.4}.transcript-themes .theme-item{display:block;font-size:10px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.transcript-themes .theme-item:before{content:"• ";color:#4b5563}.live-ticker-panel{background:#0a0a14;border:1px solid #1e293b;border-radius:8px;overflow:hidden;margin-bottom:16px}.live-ticker-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#0f172a;border-bottom:1px solid #1e293b}.live-ticker-title{font-size:13px;font-weight:600;color:#94a3b8;display:flex;align-items:center;gap:8px}.live-ticker-table{width:100%;border-collapse:collapse}.live-ticker-table thead{background:#0f172a}.live-ticker-table th{padding:8px 14px;text-align:left;font-size:10px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #1e293b;cursor:pointer;-webkit-user-select:none;user-select:none}.live-ticker-table th:hover{color:#94a3b8}.live-ticker-table th:last-child{text-align:right}.live-ticker-table tbody tr{border-bottom:1px solid #111827;transition:background .15s}.live-ticker-table tbody tr:last-child{border-bottom:none}.live-ticker-table tbody tr:hover{background:#111827}.live-ticker-table td{padding:10px 14px;font-size:13px}.live-ticker-table td:last-child{text-align:right}.ticker-symbol{font-weight:600;color:#e2e8f0;font-family:SF Mono,Monaco,Consolas,monospace;letter-spacing:.3px}.change-cell{font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;padding:4px 10px;border-radius:4px;display:inline-block;min-width:70px;text-align:right;transition:transform .15s,box-shadow .15s}.change-cell.positive{color:#4ade80;background:#22c55e1a}.change-cell.negative{color:#f87171;background:#ef44441a}.change-cell.neutral{color:#94a3b8;background:#94a3b81a}@keyframes flash-up{0%{background:#22c55e66;transform:scale(1.02)}to{background:#22c55e1a;transform:scale(1)}}@keyframes flash-down{0%{background:#ef444466;transform:scale(1.02)}to{background:#ef44441a;transform:scale(1)}}.change-cell.flash-up{animation:flash-up .6s ease-out}.change-cell.flash-down{animation:flash-down .6s ease-out}@keyframes row-flash-up{0%{background:#22c55e33}to{background:transparent}}@keyframes row-flash-down{0%{background:#ef444433}to{background:transparent}}.live-ticker-table tbody tr.flash-row-up{animation:row-flash-up .5s ease-out}.live-ticker-table tbody tr.flash-row-down{animation:row-flash-down .5s ease-out}.live-ticker-empty{padding:30px 20px;text-align:center;color:#475569;font-size:13px}.live-ticker-loading{padding:20px;text-align:center;color:#64748b;font-size:12px}.live-ticker-loading:after{content:"";display:inline-block;width:12px;height:12px;border:2px solid #334155;border-top-color:#6366f1;border-radius:50%;margin-left:8px;animation:spin 1s linear infinite;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.sort-indicator{margin-left:4px;opacity:.5}.sort-indicator.active{opacity:1}.dashboard-container{padding:0}.dashboard-grid{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.dashboard-widget{background:#0f172a;border:1px solid #1e293b;border-radius:12px;overflow:hidden}.widget-toolbar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#1e293b;border-bottom:1px solid #334155;cursor:pointer;-webkit-user-select:none;user-select:none}.widget-toolbar-title{font-size:13px;font-weight:600;color:#e2e8f0}.widget-toolbar-actions{display:flex;gap:8px}.widget-collapse,.widget-remove{background:none;border:none;color:#64748b;font-size:12px;cursor:pointer;padding:2px 6px;border-radius:4px}.widget-remove:hover{color:#ef4444;background:#ef44441a}.widget-collapse:hover{color:#e2e8f0}.widget-body{padding:16px}.dashboard-empty{text-align:center;padding:60px 20px;color:#64748b;margin-bottom:24px}.dashboard-empty-icon{font-size:48px;margin-bottom:16px}.dashboard-empty h3{color:#e2e8f0;font-size:18px;margin:0 0 8px}.dashboard-empty p{font-size:14px;margin:0}.store-section{border-top:1px solid #1e293b;padding-top:0}.store-toggle-bar{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;background:#0f172a;border:1px solid #1e293b;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.store-toggle-bar:hover{background:#1e293b}.store-badge{font-size:11px;color:#818cf8;background:#818cf81a;padding:2px 8px;border-radius:10px;font-weight:500}.store-chevron{margin-left:auto;color:#64748b;font-size:12px}.store-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.store-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#1e293b;border:1px solid #334155;border-radius:8px;transition:border-color .15s}.store-card.enabled{border-color:#22c55e40}.store-card-icon{font-size:24px;flex-shrink:0}.store-card-info{flex:1}.store-card-name{display:block;font-size:13px;font-weight:600;color:#f1f5f9;margin-bottom:2px}.store-card-desc{display:block;font-size:12px;color:#64748b;line-height:1.4}.store-toggle{width:32px;height:32px;border:1px solid #334155;border-radius:6px;background:#0f172a;color:#94a3b8;font-size:16px;font-weight:600;cursor:pointer;transition:all .15s;flex-shrink:0}.store-toggle:hover{background:#162032;color:#e2e8f0}.store-toggle.active{background:#22c55e1a;border-color:#22c55e;color:#22c55e}.forum{max-width:800px;margin:0 auto;padding:20px}.forum-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.forum-controls{display:flex;gap:16px;align-items:center}.forum-filters,.forum-sort{display:flex;gap:4px;background:var(--bg-secondary, #1e1e2e);border-radius:8px;padding:3px}.forum-filter-btn,.forum-sort-btn{padding:6px 14px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary, #888);cursor:pointer;font-size:13px;transition:all .15s}.forum-filter-btn.active,.forum-sort-btn.active{background:var(--bg-tertiary, #2a2a3e);color:var(--text-primary, #fff)}.forum-filter-btn:hover,.forum-sort-btn:hover{color:var(--text-primary, #fff)}.forum-new-post-btn{padding:8px 18px;border:none;border-radius:8px;background:var(--accent, #6366f1);color:#fff;cursor:pointer;font-size:13px;font-weight:500;transition:opacity .15s}.forum-new-post-btn:hover{opacity:.85}.new-post-form{background:var(--bg-secondary, #1e1e2e);border-radius:12px;padding:16px;margin-bottom:20px;display:flex;flex-direction:column;gap:10px}.new-post-title,.new-post-tickers{width:100%;padding:10px 12px;border:1px solid var(--border, #333);border-radius:8px;background:var(--bg-primary, #141422);color:var(--text-primary, #fff);font-size:14px;outline:none;box-sizing:border-box}.new-post-title:focus,.new-post-tickers:focus,.new-post-body:focus{border-color:var(--accent, #6366f1)}.new-post-body{width:100%;padding:10px 12px;border:1px solid var(--border, #333);border-radius:8px;background:var(--bg-primary, #141422);color:var(--text-primary, #fff);font-size:14px;resize:vertical;outline:none;font-family:inherit;box-sizing:border-box}.new-post-actions{display:flex;justify-content:flex-end;gap:8px}.new-post-cancel{padding:8px 16px;border:1px solid var(--border, #333);border-radius:8px;background:transparent;color:var(--text-secondary, #888);cursor:pointer;font-size:13px}.new-post-submit{padding:8px 20px;border:none;border-radius:8px;background:var(--accent, #6366f1);color:#fff;cursor:pointer;font-size:13px;font-weight:500}.new-post-submit:disabled{opacity:.4;cursor:not-allowed}.forum-feed{display:flex;flex-direction:column;gap:8px}.forum-loading,.forum-empty{text-align:center;color:var(--text-secondary, #888);padding:60px 20px;font-size:14px}.post-card{display:flex;gap:12px;background:var(--bg-secondary, #1e1e2e);border-radius:12px;padding:14px;transition:background .15s}.post-card:hover{background:var(--bg-tertiary, #222238)}.post-votes{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:36px}.vote-btn{background:none;border:none;color:var(--text-secondary, #555);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:4px;transition:all .15s}.vote-btn:hover{background:var(--bg-tertiary, #2a2a3e)}.vote-btn.long.active{background:#22c55e26}.vote-btn.short.active{background:#ef444426}.vote-count{font-size:13px;font-weight:600;color:var(--text-secondary, #888)}.vote-count.positive{color:#22c55e}.vote-count.negative{color:#ef4444}.post-content{flex:1;min-width:0}.post-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.post-tickers{display:flex;gap:4px;flex-wrap:wrap}.post-ticker-tag{background:var(--accent, #6366f1);color:#fff;padding:1px 8px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.5px}.post-time{color:var(--text-tertiary, #555);font-size:12px}.post-title{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text-primary, #fff);line-height:1.3}.post-body{margin:0 0 8px;font-size:13px;color:var(--text-secondary, #aaa);line-height:1.5;white-space:pre-wrap}.post-footer{display:flex;gap:12px}.post-comment-btn{background:none;border:none;color:var(--text-secondary, #666);cursor:pointer;font-size:12px;padding:4px 8px;border-radius:4px;transition:all .15s}.post-comment-btn:hover{background:var(--bg-tertiary, #2a2a3e);color:var(--text-primary, #fff)}.post-comments{margin-top:12px;border-top:1px solid var(--border, #2a2a3e);padding-top:12px}.comment{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;gap:12px}.comment-body{font-size:13px;color:var(--text-primary, #ddd);flex:1}.comment-time{font-size:11px;color:var(--text-tertiary, #555);white-space:nowrap}.comment-form{display:flex;gap:8px;margin-top:8px}.comment-input{flex:1;padding:8px 12px;border:1px solid var(--border, #333);border-radius:8px;background:var(--bg-primary, #141422);color:var(--text-primary, #fff);font-size:13px;outline:none}.comment-input:focus{border-color:var(--accent, #6366f1)}.comment-submit{padding:8px 14px;border:none;border-radius:8px;background:var(--accent, #6366f1);color:#fff;cursor:pointer;font-size:12px}.comment-submit:disabled{opacity:.4;cursor:not-allowed}.comments-loading{color:var(--text-secondary, #888);font-size:13px;padding:8px 0}@media(max-width:768px){.forum{padding:8px 0}.forum-header{flex-direction:column;align-items:stretch;gap:8px}.forum-controls{flex-direction:row;gap:8px;justify-content:space-between}.forum-filters,.forum-sort{flex:1}.forum-filter-btn,.forum-sort-btn{flex:1;text-align:center;padding:6px 8px;font-size:12px}.forum-new-post-btn{width:100%;text-align:center}.post-card{padding:10px;gap:8px}.post-title{font-size:14px}.post-body{font-size:12px}.new-post-form{padding:12px}.new-post-title,.new-post-body,.new-post-tickers{font-size:13px}}.gitxel{padding:0 0 2rem;color:#e2e8f0}.gitxel-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.gitxel-title-row{flex:1}.gitxel-title{font-size:1.4rem;font-weight:700;margin:0 0 .25rem;color:#f1f5f9}.gitxel-beta{font-size:.6rem;font-weight:600;background:#3b82f6;color:#fff;padding:2px 7px;border-radius:4px;vertical-align:middle;margin-left:8px;letter-spacing:.05em;text-transform:uppercase}.gitxel-subtitle{font-size:.85rem;color:#94a3b8;margin:0}.gitxel-subtitle code{background:#1e293b;padding:1px 5px;border-radius:3px;font-size:.82rem;color:#7dd3fc}.gitxel-refresh{background:#1e293b;border:1px solid #334155;color:#94a3b8;border-radius:6px;width:34px;height:34px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;flex-shrink:0}.gitxel-refresh:hover{background:#334155;color:#e2e8f0}.gitxel-refresh:disabled{opacity:.4;cursor:default}.gitxel-banner-error{background:#450a0a;border:1px solid #7f1d1d;color:#fca5a5;padding:.6rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.85rem}.gx-explorer{background:#0f172a;border:1px solid #1e293b;border-radius:8px;overflow:hidden}.gx-thead{display:grid;grid-template-columns:1fr 200px 44px;border-bottom:1px solid #1e293b;background:#0f172a}.gx-th{background:none;border:none;color:#64748b;font-size:.78rem;font-weight:600;text-align:left;padding:.6rem 1rem;cursor:pointer;letter-spacing:.03em;transition:color .15s;display:flex;align-items:center;gap:4px}.gx-th:hover{color:#94a3b8}.gx-th-action{cursor:default}.gx-sort-inactive{opacity:.3;font-size:.7rem}.gx-sort-active{color:#7dd3fc;font-size:.7rem}.gx-row{display:grid;grid-template-columns:1fr 200px 44px;align-items:center;border-bottom:1px solid #1e293b;cursor:pointer;transition:background .1s;-webkit-user-select:none;user-select:none}.gx-row:last-child{border-bottom:none}.gx-row:hover{background:#1e293b}.gx-row-selected{background:#1e3a5f!important}.gx-cell-name{display:flex;align-items:center;gap:10px;padding:.55rem 1rem;min-width:0}.gx-filename{font-size:.9rem;font-weight:600;color:#e2e8f0}.gx-file-sub{font-size:.75rem;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gx-cell-date{padding:.55rem 1rem;font-size:.8rem;color:#64748b;white-space:nowrap}.gx-cell-action{display:flex;align-items:center;justify-content:center;padding:.4rem}.gx-dl-btn{background:none;border:none;color:#64748b;cursor:pointer;font-size:1.1rem;width:30px;height:30px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.gx-dl-btn:hover{background:#334155;color:#7dd3fc}.gx-dl-btn:disabled{opacity:.4;cursor:default}.gx-loading{padding:2.5rem 1rem;text-align:center;color:#475569;font-size:.9rem}.gitxel-empty{padding:2.5rem 1rem;text-align:center;color:#475569}.gitxel-empty p{margin:.25rem 0;font-size:.9rem}.gitxel-empty code{background:#1e293b;padding:1px 5px;border-radius:3px;color:#7dd3fc;font-size:.85rem}.gx-footer{margin:.6rem 0 0;font-size:.75rem;color:#475569;text-align:right;padding-right:.5rem}.gx-layout{display:flex;gap:0;background:#0f172a;border:1px solid #1e293b;border-radius:8px;overflow:hidden;min-height:400px}.gx-sidebar{width:140px;flex-shrink:0;border-right:1px solid #1e293b;background:#080f1a;display:flex;flex-direction:column}.gx-sidebar-title{font-size:.7rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.08em;padding:.75rem .875rem .5rem}.gx-sidebar-loading,.gx-sidebar-empty{padding:.75rem .875rem;font-size:.8rem;color:#475569}.gx-ticker-btn{display:flex;flex-direction:column;align-items:flex-start;gap:1px;background:none;border:none;padding:.55rem .875rem;cursor:pointer;width:100%;transition:background .1s;text-align:left}.gx-ticker-btn:hover{background:#1e293b}.gx-ticker-active{background:#1e3a5f!important}.gx-ticker-name{font-size:.88rem;font-weight:700;color:#e2e8f0}.gx-ticker-date{font-size:.68rem;color:#475569}.gx-timeline{flex:1;min-width:0;overflow-y:auto}.gx-timeline-header{display:flex;align-items:baseline;gap:.75rem;padding:.875rem 1.25rem .625rem;border-bottom:1px solid #1e293b}.gx-ticker-title{font-size:1rem;font-weight:700;color:#f1f5f9;margin:0}.gx-version-count{font-size:.75rem;color:#475569}.gx-commit{padding:.875rem 1.25rem;border-bottom:1px solid #1e293b;transition:background .1s}.gx-commit:last-child{border-bottom:none}.gx-commit:hover{background:#0d1a2d}.gx-commit-draft{opacity:.55;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.01) 10px,rgba(255,255,255,.01) 20px)}.gx-commit-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.35rem}.gx-commit-date{font-size:.78rem;color:#64748b}.gx-pending-badge{background:#713f12;color:#fde68a;font-size:.68rem;font-weight:700;padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.gx-latest-badge{background:#052e16;color:#6ee7b7;font-size:.68rem;font-weight:700;padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.gx-commit-msg{font-size:.88rem;color:#cbd5e1;margin-bottom:.25rem;line-height:1.4}.gx-commit-eps{font-size:.78rem;color:#7dd3fc;font-family:monospace;margin-bottom:.4rem}.gx-commit-actions{display:flex;gap:.5rem;margin-top:.5rem}.gx-dl-btn,.gx-rollback-btn{font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:5px;border:1px solid;cursor:pointer;transition:background .15s,color .15s}.gx-dl-btn{background:#1e293b;border-color:#334155;color:#7dd3fc}.gx-dl-btn:hover{background:#334155}.gx-rollback-btn{background:#1c1917;border-color:#44403c;color:#d97706}.gx-rollback-btn:hover{background:#292524}.gx-dl-btn:disabled,.gx-rollback-btn:disabled{opacity:.4;cursor:default}.gx-empty-icon{font-size:2.5rem;margin-bottom:.75rem}.slack-connect-page{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a0a1a,#111827,#0a0a1a);padding:20px}.slack-connect-page--embedded{position:static;inset:auto;z-index:auto;background:none;padding:0}.slack-connect-card{text-align:center;max-width:480px;width:100%}.slack-connect-card--embedded{max-width:680px;margin:8px 0 24px}.slack-connect-logo{font-size:64px;margin-bottom:24px}.slack-connect-card h1{font-size:32px;font-weight:700;color:#fff;margin-bottom:16px}.slack-connect-desc{color:#9ca3af;font-size:16px;line-height:1.7;margin-bottom:36px}.slack-connect-desc strong{color:#e5e7eb}.platform-buttons{display:flex;flex-direction:column;gap:14px;margin-bottom:8px}.platform-button{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:16px 32px;color:#fff;border:none;border-radius:12px;font-size:17px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s,transform .1s,box-shadow .2s}.platform-button:active{transform:translateY(0)}.platform-button--slack{background:#4a154b;box-shadow:0 4px 24px #4a154b66}.platform-button--slack:hover{background:#611f69;transform:translateY(-2px);box-shadow:0 6px 32px #4a154b80}.platform-button--teams{background:#5558af;box-shadow:0 4px 24px #5558af66}.platform-button--teams:hover{background:#6264c0;transform:translateY(-2px);box-shadow:0 6px 32px #5558af80}.platform-divider-text{color:#4b5563;font-size:14px;margin:16px 0 8px}.slack-skip-button{display:block;margin:4px auto 0;background:none;border:none;color:#6b7280;font-size:14px;cursor:pointer;padding:8px 16px;transition:color .15s}.slack-skip-button:hover{color:#9ca3af}@media(min-width:520px){.platform-buttons{flex-direction:row}.platform-button{flex:1;font-size:15px;padding:14px 20px}}.slack-connection-status{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;color:#9ca3af}.status-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.status-dot--connected{background:#22c55e;box-shadow:0 0 0 2px #22c55e40}.status-dot--disconnected{background:#ef4444;box-shadow:0 0 0 2px #ef444440}@media(max-width:768px){.slack-connect-card--embedded{margin-top:0}}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#1a1a2e;font-size:13px;font-weight:500;box-shadow:0 2px 12px #f59e0b4d;transform:translateY(-100%);opacity:0;transition:transform .3s ease-out,opacity .3s ease-out}.offline-banner.visible{transform:translateY(0);opacity:1}.offline-banner-content{display:flex;align-items:center;gap:10px}.offline-icon{font-size:16px;animation:pulse-offline 2s ease-in-out infinite}@keyframes pulse-offline{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.offline-message{font-weight:600;letter-spacing:.2px}.offline-dismiss{background:#00000026;border:none;color:#1a1a2e;font-size:20px;font-weight:600;width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;line-height:1}.offline-dismiss:hover{background:#00000040;transform:scale(1.05)}.offline-dismiss:active{transform:scale(.95)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#07070d;min-height:100vh;color:#e0e0e0}.landing-hero{position:relative;width:100%;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.landing-bg{position:absolute;inset:0;width:100%;height:100%;z-index:0;object-fit:cover}.landing-nav{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:28px 40px}.landing-logo{display:flex;align-items:center;gap:10px}.landing-logo-mark{width:34px;height:34px;border:2px solid rgba(255,255,255,.85);border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:700;color:#fff}.landing-logo-text{font-family:Inter,sans-serif;font-size:18px;font-weight:700;color:#fff;letter-spacing:1.5px}.landing-hamburger{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:5px;padding:8px;z-index:11}.hamburger-line{display:block;width:22px;height:1.5px;background:#fffc;transition:transform .25s,opacity .25s}.hamburger-line.open:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.landing-menu{position:absolute;top:0;right:0;z-index:9;background:#07070df2;border:1px solid rgba(255,255,255,.06);border-radius:0 0 0 12px;padding:80px 40px 32px;display:flex;flex-direction:column;gap:16px;min-width:200px;animation:menu-fade .2s ease}.landing-menu button,.landing-menu a{background:none;border:none;color:#ffffffb3;font-size:15px;font-weight:400;cursor:pointer;text-decoration:none;text-align:left;padding:4px 0;letter-spacing:.5px;transition:color .15s;font-family:inherit}.landing-menu button:hover,.landing-menu a:hover{color:#fff}@keyframes menu-fade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.landing-center{position:relative;z-index:2;text-align:center;max-width:700px;padding:0 24px}.landing-headline{font-size:clamp(36px,5.5vw,64px);font-weight:300;color:#fffffff2;letter-spacing:-.3px;line-height:1.12}.landing-scroll{position:absolute;bottom:36px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:none;cursor:pointer;color:#ffffff40;transition:color .2s;animation:landing-bounce 2.5s ease-in-out infinite}.landing-scroll:hover{color:#ffffff80}.landing-scroll-text{font-size:10px;letter-spacing:3px;text-transform:uppercase;font-weight:400}@keyframes landing-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}#auth-section .auth-wrapper{background:#07070d}.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center}.auth-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:32px;width:100%;max-width:360px}.auth-card h2{text-align:center;margin-bottom:24px;font-weight:400;letter-spacing:.5px}.tabs{display:flex;gap:8px;margin-bottom:20px}.tab{flex:1;padding:10px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;background:#ffffff0d;color:#888}.tab.active{background:#ffffff1f;color:#fff}.form-group{margin-bottom:12px}.form-group input{width:100%;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#ffffff0d;color:#fff;font-size:14px}.form-group input:focus{outline:none;border-color:#ffffff4d}.submit-btn{width:100%;padding:12px;border:none;border-radius:6px;background:#fff;color:#07070d;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.submit-btn:hover{background:#ffffffd9}.submit-btn:disabled{opacity:.5}.forgot-password-btn{width:100%;padding:8px;margin-top:8px;border:none;background:none;color:#ffffff80;font-size:13px;cursor:pointer;text-decoration:underline}.forgot-password-btn:hover{color:#fffc}.forgot-password-btn:disabled{opacity:.5;cursor:not-allowed}.sso-divider{margin:16px 0;text-align:center;position:relative}.sso-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#ffffff1a}.sso-divider span{position:relative;background:#ffffff0d;padding:0 12px;font-size:12px;color:#888}.sso-btn{width:100%;padding:12px;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#ffffff0d;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.sso-btn:hover{background:#ffffff1a;border-color:#ffffff4d}.sso-btn:disabled{opacity:.5}.sso-hint{margin-top:8px;text-align:center;font-size:11px;color:#888;font-style:italic}.invite-hint{margin-top:4px;font-size:11px;color:#666;font-style:italic;text-align:center}.field-label{font-size:12px;color:#888;margin:0 0 8px;text-align:center}.user-type-group{display:flex;gap:8px;justify-content:center}.user-type-btn{flex:1;padding:8px 0;border-radius:6px;border:1.5px solid #333;background:transparent;color:#ccc;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.user-type-btn:hover{border-color:#ffffff80;color:#fff}.user-type-btn.selected{background:#fff;border-color:#fff;color:#07070d}.form-row{display:flex;gap:8px}.form-row input{flex:1;min-width:0}.message{padding:10px;border-radius:6px;font-size:13px;margin-bottom:12px;display:none}.message.error{display:block;background:#ef44441a;border:1px solid #ef4444;color:#fca5a5}.message.success{display:block;background:#22c55e1a;border:1px solid #22c55e;color:#86efac}.app-wrapper{padding:20px;max-width:600px;margin:0 auto;transition:max-width .3s ease}.app-wrapper.calendar-mode{max-width:1200px}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #333}.app-header h1{font-size:18px}.header-actions{display:flex;align-items:center;gap:10px}.integrations-btn{padding:4px 10px;background:transparent;border:1px solid #444;color:#6366f1;border-radius:4px;cursor:pointer;font-size:11px;font-weight:600;transition:all .15s ease}.integrations-btn:hover{color:#818cf8;border-color:#818cf8}.logout-btn{padding:4px 10px;background:transparent;border:1px solid #444;color:#888;border-radius:4px;cursor:pointer;font-size:11px}.logout-btn:hover{color:#ef4444;border-color:#ef4444}.folder-config{position:relative}.folder-btn{width:32px;height:32px;border:1px solid #444;border-radius:6px;background:transparent;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.folder-btn:hover{border-color:#6366f1;background:#6366f11a}.folder-btn.active{border-color:#6366f1;background:#6366f126;box-shadow:0 0 0 2px #6366f133}.folder-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:320px;background:#1e1e32;border:1px solid #3a3a5e;border-radius:10px;box-shadow:0 8px 32px #00000080,0 0 0 1px #6366f11a;z-index:1000;animation:folderDropdownIn .15s ease-out}.folder-dropdown.folder-dropdown-compact{width:auto;min-width:280px;max-width:400px;padding:10px 12px}.folder-picker-row{display:flex;align-items:center;gap:10px}.folder-picker-icon{font-size:16px;flex-shrink:0}.folder-picker-path{flex:1;font-size:13px;color:#a5b4fc;font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.folder-picker-btn{padding:6px 14px;border:none;border-radius:6px;background:#6366f1;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0}.folder-picker-btn:hover{background:#5558e3}.folder-reset-link{display:block;width:100%;text-align:left;margin-top:8px;padding-top:8px;border:none;border-top:1px solid rgba(255,255,255,.08);background:none;color:#666;font-size:11px;cursor:pointer;transition:color .15s}.folder-reset-link:hover{color:#ef4444}.folder-fallback{display:flex;gap:8px;flex:1}.folder-fallback-input{flex:1;padding:6px 10px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff0d;color:#e0e0e0;font-size:12px;font-family:monospace;outline:none;min-width:120px}.folder-fallback-input:focus{border-color:#6366f1}.folder-fallback-input::placeholder{color:#555}@keyframes folderDropdownIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.app-tabs{display:flex;gap:4px;margin-bottom:16px;background:#ffffff08;padding:4px;border-radius:8px}.app-tab{flex:1;padding:10px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;background:transparent;color:#666;transition:all .2s}.app-tab:hover{color:#888}.app-tab.active{background:#6366f1;color:#fff}.tab-content{display:none}.tab-content.active{display:block}.ticker-column{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden}.column-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#1e1e32;border-bottom:1px solid #2a2a3e}.portfolio-name{font-weight:600;font-size:12px;color:#888;background:transparent;border:none;outline:none;cursor:text;padding:2px 4px;margin:-2px -4px;border-radius:3px}.portfolio-name:hover{background:#ffffff0d}.portfolio-name:focus{background:#ffffff1a;color:#fff}.ticker-count{font-size:12px;color:#666;font-weight:500}.ticker-row{display:flex;align-items:center;border-bottom:1px solid #222;position:relative}.ticker-row:last-child{border-bottom:none}.ticker-row:hover{background:#1a1a30}.ticker-row.selected{background:#1e2a4a}.ticker-cell{flex:1;padding:8px 12px;font-size:14px;font-weight:500;color:#6366f1;cursor:pointer;min-height:36px;display:flex;align-items:center}.ticker-input-cell{flex:1;position:relative}.ticker-input{width:100%;padding:8px 12px;font-size:14px;font-weight:500;color:#6366f1;background:transparent;border:none;outline:none;min-height:36px;text-transform:uppercase}.ticker-input::placeholder{color:#444;text-transform:none}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#1e1e32;border:1px solid #3a3a5e;border-radius:6px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 8px 24px #0006;display:none}.autocomplete-dropdown.show{display:block}.autocomplete-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid #2a2a3e;display:flex;justify-content:space-between;align-items:center}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover,.autocomplete-item.highlighted{background:#2a2a4e}.autocomplete-ticker{font-weight:600;color:#6366f1}.autocomplete-name{color:#888;font-size:12px;margin-left:12px}.delete-btn{padding:4px 8px;background:none;border:none;color:#444;cursor:pointer;font-size:14px}.delete-btn:hover{color:#ef4444}.add-row{padding:8px 12px;color:#444;font-size:13px;cursor:pointer;border-top:1px solid #222}.add-row:hover{background:#1a1a30;color:#888}.add-ticker-row:hover{background:#6366f11a}.add-ticker-inline{border-top:1px dashed #2a2a3e;background:transparent}.add-ticker-inline:hover{background:#6366f10d}.add-ticker-inline .ticker-input::placeholder{color:#555;font-weight:400}.add-ticker-inline .autocomplete-dropdown{bottom:100%;top:auto;margin-bottom:2px}.empty-msg{padding:40px 20px;text-align:center;color:#444}.hidden{display:none!important}.weekly-section{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden;margin-bottom:16px}.weekly-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e}.weekly-title{font-weight:600;font-size:14px;color:#e0e0e0}.refresh-btn{padding:6px 12px;border:none;border-radius:4px;background:#6366f133;color:#6366f1;font-size:12px;font-weight:500;cursor:pointer}.refresh-btn:hover{background:#6366f14d}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.performance-table{width:100%;border-collapse:collapse}.performance-table th{padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:#666;background:#1a1a2e;border-bottom:1px solid #2a2a3e;cursor:pointer;-webkit-user-select:none;user-select:none}.performance-table th:hover{color:#888;background:#1e1e32}.performance-table th.sorted{color:#6366f1}.performance-table th .sort-arrow{margin-left:4px;font-size:10px}.performance-table td{padding:10px 12px;font-size:13px;border-bottom:1px solid #222}.performance-table tr:last-child td{border-bottom:none}.performance-table tr:hover{background:#1a1a30}.performance-table .ticker-col{font-weight:600;color:#6366f1}.performance-table .price-col{color:#e0e0e0}.performance-table .positive{color:#22c55e}.performance-table .negative{color:#ef4444}.performance-table .volume-col{color:#888;font-size:12px}.news-section{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden}.news-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e}.news-title{font-weight:600;font-size:14px;color:#e0e0e0}.news-list{max-height:400px;overflow-y:auto}.news-item{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid #222;cursor:pointer;transition:background .15s}.news-item:last-child{border-bottom:none}.news-item:hover{background:#1a1a30}.news-thumb{width:60px;height:45px;border-radius:4px;object-fit:cover;background:#2a2a3e;flex-shrink:0}.news-content{flex:1;min-width:0}.news-ticker-badge{display:inline-block;padding:2px 6px;background:#6366f133;color:#6366f1;font-size:10px;font-weight:600;border-radius:3px;margin-bottom:4px}.news-headline{font-size:13px;color:#e0e0e0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-meta{font-size:11px;color:#666;margin-top:4px}.loading-indicator{padding:30px;text-align:center;color:#666}.calendar-container{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e}.calendar-nav{display:flex;align-items:center;gap:8px}.calendar-nav-btn{width:32px;height:32px;border:none;border-radius:6px;background:#ffffff0d;color:#888;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}.calendar-nav-btn:hover{background:#ffffff1a;color:#fff}.calendar-month{font-weight:600;font-size:14px;color:#e0e0e0;min-width:120px;text-align:center}.calendar-today-btn{padding:6px 12px;border:none;border-radius:4px;background:#6366f133;color:#6366f1;font-size:12px;font-weight:500;cursor:pointer}.calendar-today-btn:hover{background:#6366f14d}.calendar-today-btn:disabled{opacity:.5;cursor:not-allowed}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-dow{padding:8px;text-align:center;font-size:11px;font-weight:600;color:#666;background:#1a1a2e;border-bottom:1px solid #2a2a3e}.calendar-day{min-height:100px;padding:6px;border-right:1px solid #222;border-bottom:1px solid #222;cursor:pointer;position:relative;transition:background .15s}.calendar-day:nth-child(7n){border-right:none}.calendar-day:hover{background:#6366f11a}.calendar-day.other-month{background:#0003}.calendar-day.other-month .day-number{color:#444}.calendar-day.today{background:#6366f126}.calendar-day.today .day-number{background:#6366f1;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.day-number{font-size:13px;font-weight:500;color:#888;margin-bottom:4px}.day-events{display:flex;flex-direction:column;gap:2px}.day-event{font-size:11px;padding:2px 4px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-event.earnings{background:#f59e0b33;color:#fbbf24}.day-event.conference{background:#22c55e33;color:#86efac}.day-event.filing{background:#ef444433;color:#fca5a5}.day-event.custom{background:#6366f133;color:#a5b4fc}.day-event-more{font-size:9px;color:#666;padding:1px 3px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:all .2s}.modal-overlay.show{opacity:1;visibility:visible}.modal{background:#1e1e32;border:1px solid #3a3a5e;border-radius:12px;padding:24px;width:100%;max-width:360px;transform:scale(.95);transition:transform .2s}.modal-overlay.show .modal{transform:scale(1)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-title{font-weight:600;font-size:16px}.modal-close{background:none;border:none;color:#666;font-size:20px;cursor:pointer;padding:4px}.modal-close:hover{color:#fff}.modal-form{display:flex;flex-direction:column;gap:12px}.modal-field label{display:block;font-size:12px;color:#888;margin-bottom:4px}.modal-field input,.modal-field textarea,.modal-field select{width:100%;padding:10px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff0d;color:#fff;font-size:14px}.modal-field input:focus,.modal-field textarea:focus,.modal-field select:focus{outline:none;border-color:#6366f1}.modal-field textarea{resize:vertical;min-height:60px}.modal-actions{display:flex;gap:8px;margin-top:8px}.modal-btn{flex:1;padding:10px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.modal-btn.primary{background:#6366f1;color:#fff}.modal-btn.secondary{background:#ffffff1a;color:#888}.modal-btn:hover{opacity:.9}.day-detail-events{margin-top:16px;max-height:200px;overflow-y:auto}.detail-event{display:flex;align-items:center;justify-content:space-between;padding:10px;background:#ffffff08;border-radius:6px;margin-bottom:8px}.detail-event-info{flex:1}.detail-event-ticker{font-weight:600;color:#6366f1;font-size:13px}.detail-event-ticker.earnings{color:#fbbf24}.detail-event-ticker.conference{color:#86efac}.detail-event-ticker.filing{color:#fca5a5}.detail-event-desc{font-size:12px;color:#888;margin-top:2px}.detail-event-delete{background:none;border:none;color:#444;cursor:pointer;padding:4px;font-size:16px}.detail-event-delete:hover{color:#ef4444}.add-event-btn{width:100%;padding:10px;border:1px dashed #3a3a5e;border-radius:6px;background:none;color:#666;font-size:13px;cursor:pointer;margin-top:8px}.add-event-btn:hover{border-color:#6366f1;color:#6366f1}.loading-spinner{text-align:center;padding:20px;color:#666}.add-event-plus-btn{position:absolute;top:4px;right:4px;width:18px;height:18px;border:none;border-radius:4px;background:#6366f126;color:#6366f1;font-size:14px;font-weight:600;cursor:pointer;opacity:0;transition:all .15s ease;display:flex;align-items:center;justify-content:center;line-height:1;z-index:5}.calendar-day:hover .add-event-plus-btn{opacity:1}.add-event-plus-btn:hover{background:#6366f1;color:#fff;transform:scale(1.1)}.event-bubble{position:absolute;width:260px;background:#1e1e32;border:1px solid #3a3a5e;border-radius:10px;padding:14px;box-shadow:0 8px 32px #00000080,0 0 0 1px #6366f11a;z-index:100;animation:bubbleIn .15s ease-out}.event-bubble.event-bubble-fixed{position:fixed;z-index:9999}@keyframes bubbleIn{0%{opacity:0;transform:scale(.95) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.event-bubble:before{content:"";position:absolute;left:-8px;top:14px;width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid #3a3a5e}.event-bubble:after{content:"";position:absolute;left:-6px;top:15px;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:7px solid #1e1e32}.event-bubble-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.event-bubble-title{font-size:13px;font-weight:600;color:#e0e0e0}.event-bubble-close{background:none;border:none;color:#666;font-size:18px;cursor:pointer;padding:0;line-height:1;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px}.event-bubble-close:hover{color:#fff;background:#ffffff1a}.event-bubble-field{margin-bottom:10px}.event-bubble-field label{display:block;font-size:10px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.event-bubble-field select,.event-bubble-field textarea{width:100%;padding:8px 10px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff0d;color:#e0e0e0;font-size:12px;outline:none;transition:border-color .15s}.event-bubble-field select:focus,.event-bubble-field textarea:focus{border-color:#6366f1;background:#6366f114}.event-bubble-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}.event-bubble-field select option{background:#1e1e32;color:#e0e0e0}.event-bubble-field textarea{resize:none;min-height:50px;font-family:inherit}.event-bubble-field textarea::placeholder{color:#555}.event-bubble-save{width:100%;padding:8px 12px;border:none;border-radius:6px;background:#6366f1;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;margin-top:4px}.event-bubble-save:hover:not(:disabled){background:#5558e3;transform:translateY(-1px)}.event-bubble-save:disabled{opacity:.4;cursor:not-allowed}.day-event.catalyst{background:#ef444433;color:#fca5a5}.day-event.data_release{background:#3b82f633;color:#93c5fd}.day-event.other{background:#6366f133;color:#a5b4fc}.kpis-matrix-container{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden}.kpis-matrix-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e;flex-wrap:wrap;gap:12px}.kpis-matrix-title{font-weight:600;font-size:14px;color:#e0e0e0}.kpis-matrix-actions{display:flex;gap:8px;flex-wrap:wrap}.kpi-action-btn{padding:6px 12px;border:none;border-radius:4px;background:#6366f133;color:#6366f1;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap}.kpi-action-btn:hover{background:#6366f14d}.kpi-action-btn.template{background:#f59e0b33;color:#fbbf24}.kpi-action-btn.template:hover{background:#f59e0b4d}.kpi-action-btn.danger{background:#ef444433;color:#ef4444}.kpi-action-btn.danger:hover{background:#ef44444d}.kpi-action-btn.update-btn{background:#22c55e33;color:#22c55e}.kpi-action-btn.update-btn:hover{background:#22c55e4d}.kpi-action-btn.update-btn:disabled{opacity:.5;cursor:not-allowed}.kpi-action-btn.excel-update-btn{background:#3b82f633;color:#3b82f6}.kpi-action-btn.excel-update-btn:hover{background:#3b82f64d}.kpi-action-btn.excel-update-btn:disabled{opacity:.5;cursor:not-allowed}.server-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;padding:4px 8px;border-radius:4px;margin-right:8px}.server-status.online{background:#22c55e1a;color:#22c55e}.server-status.offline{background:#ef44441a;color:#ef4444}.server-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.kpi-result-item{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;margin-bottom:12px}.kpi-result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.kpi-result-name{font-weight:600;color:#6366f1;font-size:14px}.kpi-result-current{font-size:12px;color:#22c55e;background:#22c55e1a;padding:2px 8px;border-radius:4px}.kpi-result-guidance{font-size:13px;color:#e0e0e0;margin-bottom:8px;line-height:1.4}.kpi-result-quotes{font-size:11px;color:#888;font-style:italic;border-left:2px solid #444;padding-left:10px;margin-top:8px}.kpi-result-quote{margin-bottom:6px}.extraction-status{padding:12px 16px;border-radius:6px;font-size:13px}.extraction-status.loading{background:#6366f11a;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}.extraction-status.success{background:#22c55e1a;color:#86efac;border:1px solid rgba(34,197,94,.3)}.extraction-status.error{background:#ef44441a;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.kpis-matrix-wrapper{overflow-x:auto;max-height:600px;overflow-y:auto}.kpis-matrix-table{width:100%;border-collapse:separate;border-spacing:0;min-width:max-content}.kpis-matrix-table thead th{padding:10px 12px;text-align:left;font-size:12px;font-weight:600;color:#888;background:#1a1a2e;border-bottom:2px solid #3a3a5e;position:sticky;top:0;z-index:10;white-space:nowrap;min-width:100px}.kpis-matrix-table thead th:first-child{position:sticky;left:0;z-index:20;min-width:80px;background:#1e1e32}.kpis-matrix-table thead th .kpi-col-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.kpis-matrix-table thead th .kpi-col-delete{background:none;border:none;color:#444;cursor:pointer;font-size:14px;padding:2px;line-height:1;opacity:0;transition:opacity .15s}.kpis-matrix-table thead th:hover .kpi-col-delete{opacity:1}.kpis-matrix-table thead th .kpi-col-delete:hover{color:#ef4444}.kpis-matrix-table tbody tr{transition:background .15s}.kpis-matrix-table tbody tr:nth-child(odd){background:#12121f}.kpis-matrix-table tbody tr:nth-child(2n){background:#161626}.kpis-matrix-table tbody tr:hover{background:#1a1a30!important}.kpis-matrix-table tbody td{padding:0;border-bottom:1px solid #222;border-right:1px solid #222;font-size:13px;vertical-align:middle}.kpis-matrix-table tbody td:last-child{border-right:none}.kpis-matrix-table tbody td:first-child{position:sticky;left:0;z-index:5;background:inherit;font-weight:600;color:#6366f1;padding:10px 12px;border-right:2px solid #3a3a5e}.kpis-matrix-table tbody tr:nth-child(odd) td:first-child{background:#12121f}.kpis-matrix-table tbody tr:nth-child(2n) td:first-child{background:#161626}.kpis-matrix-table tbody tr:hover td:first-child{background:#1a1a30!important}.kpi-cell-input{width:100%;padding:10px 12px;border:none;background:transparent;color:#e0e0e0;font-size:13px;outline:none;min-width:80px}.kpi-cell-input:focus{background:#6366f11a;box-shadow:inset 0 0 0 2px #6366f1}.kpi-cell-input::placeholder{color:#444}.kpis-matrix-empty{padding:60px 20px;text-align:center;color:#666}.kpis-matrix-empty h3{color:#888;margin-bottom:8px;font-size:16px}.kpis-matrix-empty p{font-size:13px;margin-bottom:16px}.kpi-autocomplete-container{position:relative}.kpi-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#1e1e32;border:1px solid #3a3a5e;border-radius:6px;max-height:180px;overflow-y:auto;z-index:1001;display:none}.kpi-autocomplete-dropdown.show{display:block}.kpi-autocomplete-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid #2a2a3e}.kpi-autocomplete-item:last-child{border-bottom:none}.kpi-autocomplete-item:hover{background:#2a2a4e}.kpi-autocomplete-name{font-weight:500;color:#e0e0e0;font-size:13px}.kpi-autocomplete-desc{font-size:11px;color:#666;margin-top:2px}.kpi-page-container{display:flex;flex-direction:column;gap:12px}.kpi-sub-tabs{display:flex;gap:4px;background:#ffffff08;padding:4px;border-radius:8px;width:fit-content}.kpi-sub-tab{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;background:transparent;color:#666;transition:all .2s;white-space:nowrap}.kpi-sub-tab:hover{color:#888;background:#ffffff0d}.kpi-sub-tab.active{background:#6366f1;color:#fff}.period-matrix-container{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden}.period-matrix-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e;flex-wrap:wrap;gap:12px}.period-matrix-title{font-weight:600;font-size:14px;color:#e0e0e0}.period-matrix-legend{display:flex;gap:16px;font-size:12px}.legend-item{display:flex;align-items:center;gap:4px}.legend-item.quarter{color:#6366f1}.legend-item.conference{color:#22c55e}.period-matrix-wrapper{overflow-x:auto;overflow-y:auto;max-height:700px}.period-matrix-table{width:100%;border-collapse:separate;border-spacing:0;min-width:max-content}.period-matrix-table thead th{padding:10px 8px;text-align:center;font-size:11px;font-weight:600;background:#1a1a2e;border-bottom:2px solid #3a3a5e;position:sticky;top:0;z-index:10;white-space:nowrap;min-width:65px}.period-matrix-table thead th.ticker-col-header{position:sticky;left:0;z-index:20;min-width:80px;background:#1e1e32;text-align:left;color:#888;font-size:12px}.period-matrix-table thead th.period-header.quarter{color:#6366f1}.period-matrix-table thead th.period-header.conference{color:#22c55e;font-size:10px}.period-matrix-table tbody tr{transition:background .15s}.period-matrix-table tbody tr:nth-child(odd){background:#12121f}.period-matrix-table tbody tr:nth-child(2n){background:#161626}.period-matrix-table tbody tr:hover{background:#1a1a30!important}.period-matrix-table tbody td{padding:0;border-bottom:1px solid #222;border-right:1px solid #222;font-size:13px;vertical-align:middle}.period-matrix-table tbody td:last-child{border-right:none}.period-matrix-table tbody td.ticker-label{position:sticky;left:0;z-index:5;font-weight:600;color:#6366f1;padding:10px 12px;border-right:2px solid #3a3a5e;white-space:nowrap;background:inherit}.period-matrix-table tbody tr:nth-child(odd) td.ticker-label{background:#12121f}.period-matrix-table tbody tr:nth-child(2n) td.ticker-label{background:#161626}.period-matrix-table tbody tr:hover td.ticker-label{background:#1a1a30!important}.period-cell{text-align:center}.period-cell.quarter{border-right:1px solid #333}.period-cell.conference{border-right:1px solid #2a2a3e}.period-cell-input{width:100%;padding:10px 6px;border:none;background:transparent;color:#e0e0e0;font-size:12px;outline:none;min-width:55px;text-align:center}.period-cell-input:focus{background:#6366f11a;box-shadow:inset 0 0 0 2px #6366f1}.period-cell-input::placeholder{color:#333}.period-matrix-empty{padding:60px 20px;text-align:center;color:#666}.period-matrix-empty h3{color:#888;margin-bottom:8px;font-size:16px}.period-matrix-empty p{font-size:13px;margin-bottom:16px}.status-legend{display:flex;gap:12px;margin-left:16px;padding-left:16px;border-left:1px solid #3a3a5e}.status-legend-item{display:flex;align-items:center;gap:4px;font-size:11px}.status-legend-item.pending{color:#666}.status-legend-item.complete{color:#22c55e}.batch-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#6366f11a;border-bottom:1px solid rgba(99,102,241,.3)}.batch-info{display:flex;align-items:center;gap:16px}.batch-selected-column{font-size:13px;color:#e0e0e0}.batch-selected-column strong{color:#6366f1}.batch-stats{font-size:12px;color:#888;padding:4px 8px;background:#0003;border-radius:4px}.batch-actions{display:flex;gap:8px}.batch-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.batch-btn.cancel{background:#ffffff1a;color:#888}.batch-btn.cancel:hover:not(:disabled){background:#ffffff26;color:#e0e0e0}.batch-btn.extract{background:#22c55e;color:#fff}.batch-btn.extract:hover:not(:disabled){background:#16a34a}.batch-btn:disabled{opacity:.6;cursor:not-allowed}.period-matrix-table thead th.period-header{cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.period-matrix-table thead th.period-header:hover{background:#6366f126}.period-matrix-table thead th.period-header.selected{background:#6366f140!important;color:#fff!important;box-shadow:inset 0 -3px #6366f1}.period-cell{cursor:pointer;position:relative;transition:all .15s ease;height:44px;min-width:55px}.period-cell:hover{background:#6366f11f!important}.period-cell.status-extracting{background:#eab3081a!important}.period-cell.status-complete{background:#22c55e0f!important}.period-cell.column-selected{background:#6366f114!important}.period-cell.column-selected:hover{background:#6366f12e!important}.cell-status-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative}.status-circle{width:14px;height:14px;border-radius:50%;transition:all .2s ease;box-shadow:0 0 0 2px #0003}.status-circle.pending{background:#555}.status-circle.complete{background:#22c55e;box-shadow:0 0 0 2px #22c55e4d}.status-circle.extracting{background:#eab308;animation:statusPulse 1.5s ease-in-out infinite}.period-cell:hover .status-circle{transform:scale(1.15)}.period-cell:hover .status-circle.pending{box-shadow:0 0 0 3px #6366f166}.extracting-ring{position:absolute;width:22px;height:22px;border:2px solid transparent;border-top-color:#eab308;border-radius:50%;animation:spinRing 1s linear infinite}@keyframes spinRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.9)}}.analyst-section{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden;margin-bottom:16px}.analyst-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e}.analyst-title{font-weight:600;font-size:14px;color:#e0e0e0}.analyst-refresh-btn{padding:6px 12px;border:none;border-radius:4px;background:#6366f133;color:#6366f1;font-size:12px;font-weight:500;cursor:pointer}.analyst-refresh-btn:hover{background:#6366f14d}.analyst-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.rating-summary{padding:16px;border-bottom:1px solid #2a2a3e;background:#6366f108}.rating-summary-row{display:flex;gap:16px;flex-wrap:wrap}.composition-card{flex:1;min-width:200px}.composition-label{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.composition-bar{display:flex;height:28px;border-radius:6px;overflow:hidden;background:#2a2a3e}.comp-segment{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;transition:flex .3s ease;min-width:0;overflow:hidden}.comp-segment.buy{background:linear-gradient(135deg,#22c55e,#16a34a)}.comp-segment.hold{background:linear-gradient(135deg,#eab308,#ca8a04)}.comp-segment.sell{background:linear-gradient(135deg,#ef4444,#dc2626)}.comp-segment span{padding:0 6px;white-space:nowrap}.composition-legend{display:flex;gap:16px;margin-top:8px;font-size:11px}.analyst-section .legend-item{display:flex;align-items:center;gap:4px}.legend-dot{width:8px;height:8px;border-radius:2px}.legend-dot.buy{background:#22c55e}.legend-dot.hold{background:#eab308}.legend-dot.sell{background:#ef4444}.legend-label{color:#888}.legend-value{color:#e0e0e0;font-weight:600}.consensus-card{min-width:140px;text-align:center;padding:0 16px;border-left:1px solid #2a2a3e}.consensus-rating-big{font-size:22px;font-weight:700;margin:4px 0}.consensus-rating-big.buy{color:#22c55e}.consensus-rating-big.hold{color:#eab308}.consensus-rating-big.sell{color:#ef4444}.consensus-score{font-size:12px;color:#888}.upside-card{min-width:130px;text-align:center;padding:0 16px;border-left:1px solid #2a2a3e}.avg-upside-big{font-size:22px;font-weight:700;margin:4px 0}.avg-upside-big.positive{color:#22c55e}.avg-upside-big.negative{color:#ef4444}.changes-section{padding:12px 16px;border-bottom:1px solid #2a2a3e;background:#f59e0b0d}.changes-section.empty{display:none}.changes-title{font-size:11px;color:#f59e0b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;display:flex;align-items:center;gap:6px}.changes-list{display:flex;flex-wrap:wrap;gap:8px}.change-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;font-size:12px}.change-chip.upgrade{background:#22c55e26;border:1px solid rgba(34,197,94,.3)}.change-chip.downgrade{background:#ef444426;border:1px solid rgba(239,68,68,.3)}.change-arrow{font-size:14px}.change-arrow.upgrade{color:#22c55e}.change-arrow.downgrade{color:#ef4444}.change-from{color:#888;text-decoration:line-through;font-size:11px}.change-to{font-weight:600}.change-to.upgrade{color:#22c55e}.change-to.downgrade{color:#ef4444}.analyst-table-container{overflow-x:auto}.analyst-table{width:100%;border-collapse:collapse}.analyst-table th{padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:#666;background:#1a1a2e;border-bottom:1px solid #2a2a3e;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.analyst-table th:hover{color:#888;background:#1e1e32}.analyst-table th.sorted{color:#6366f1}.analyst-table th .sort-arrow{margin-left:4px;font-size:10px}.analyst-table td{padding:10px 12px;font-size:13px;border-bottom:1px solid #222}.analyst-table tr:last-child td{border-bottom:none}.analyst-table tr:hover{background:#1a1a30}.analyst-table tr.recently-upgraded{background:#22c55e14}.analyst-table tr.recently-upgraded:hover{background:#22c55e1f}.analyst-table tr.recently-downgraded{background:#ef444414}.analyst-table tr.recently-downgraded:hover{background:#ef44441f}.analyst-table .ticker-cell{display:flex;align-items:center;gap:6px}.ticker-symbol{font-weight:600;color:#6366f1}.change-indicator{font-size:10px;padding:2px 5px;border-radius:3px;font-weight:700}.change-indicator.upgrade{background:#22c55e33;color:#22c55e}.change-indicator.downgrade{background:#ef444433;color:#ef4444}.rating-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.rating-badge.strong-buy{background:#22c55e40;color:#22c55e}.rating-badge.buy{background:#22c55e2e;color:#4ade80}.rating-badge.hold{background:#eab30833;color:#eab308}.rating-badge.underperform{background:#ef44442e;color:#f87171}.rating-badge.sell{background:#ef444440;color:#ef4444}.price-compare{display:flex;flex-direction:column;gap:2px}.price-current{font-size:13px;color:#e0e0e0}.price-target{font-size:11px;color:#888}.price-target-value{color:#6366f1;font-weight:600}.upside-cell{display:flex;align-items:center;gap:8px}.upside-bar{width:50px;height:6px;background:#2a2a3e;border-radius:3px;overflow:hidden;position:relative}.upside-bar-fill{position:absolute;top:0;height:100%;border-radius:3px}.upside-bar-fill.positive{left:50%;background:linear-gradient(90deg,#166534,#22c55e)}.upside-bar-fill.negative{right:50%;background:linear-gradient(90deg,#ef4444,#991b1b)}.upside-bar-center{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#555}.upside-value{font-weight:600;min-width:50px}.upside-value.positive{color:#22c55e}.upside-value.negative{color:#ef4444}.score-bar{display:flex;align-items:center;gap:6px}.score-bar-bg{flex:1;height:6px;background:#2a2a3e;border-radius:3px;overflow:hidden;max-width:50px}.score-bar-fill{height:100%;border-radius:3px;transition:width .3s}.score-bar-fill.high{background:linear-gradient(90deg,#166534,#22c55e)}.score-bar-fill.medium{background:linear-gradient(90deg,#a16207,#eab308)}.score-bar-fill.low{background:linear-gradient(90deg,#991b1b,#ef4444)}.score-value{font-size:12px;color:#888;min-width:28px}.analyst-loading,.analyst-empty{padding:40px;text-align:center;color:#666}.analyst-error{padding:20px;text-align:center;color:#ef4444;background:#ef44441a}.analyst-header-right{display:flex;align-items:center;gap:12px}.coverage-note{font-size:11px;color:#666}.rating-legend{display:flex;gap:16px;padding:8px 16px;border-bottom:1px solid #2a2a3e;background:#6366f108}.rating-legend .legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#888}.rating-legend .legend-color{width:12px;height:12px;border-radius:3px}.rating-legend .legend-color.buy{background:linear-gradient(135deg,#22c55e,#16a34a)}.rating-legend .legend-color.hold{background:linear-gradient(135deg,#eab308,#ca8a04)}.rating-legend .legend-color.sell{background:linear-gradient(135deg,#ef4444,#dc2626)}.rating-bar-cell{min-width:180px}.stock-rating-bar-container{width:100%}.stock-rating-bar{display:flex;height:22px;border-radius:4px;overflow:hidden;background:#2a2a3e;min-width:120px}.rating-segment{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;transition:flex .3s ease;min-width:0;overflow:hidden}.rating-segment.buy{background:linear-gradient(135deg,#22c55e,#16a34a)}.rating-segment.hold{background:linear-gradient(135deg,#eab308,#ca8a04)}.rating-segment.sell{background:linear-gradient(135deg,#ef4444,#dc2626)}.rating-segment span{padding:0 4px;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.3)}.no-coverage{color:#555;font-size:11px;font-style:italic}.analyst-table th.rating-col{min-width:180px}.ticker-cell-content{display:flex;align-items:center;gap:8px}.ticker-cell-content .ticker-label{font-weight:600;color:#6366f1}.template-dropdown{position:relative}.template-dropdown:has(.template-menu){z-index:9999}.template-trigger{width:22px;height:22px;border:none;border-radius:4px;background:#ffffff0d;color:#555;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .15s}.template-trigger:hover{background:#6366f133;color:#6366f1}.template-menu{position:absolute;top:100%;left:0;margin-top:4px;background:#1e1e32;border:1px solid #3a3a5e;border-radius:8px;min-width:160px;z-index:9999;box-shadow:0 8px 24px #0006;animation:templateMenuIn .15s ease-out}.template-menu-portal{background:#1e1e32;border:1px solid #3a3a5e;border-radius:8px;min-width:180px;box-shadow:0 12px 40px #0009,0 0 0 1px #6366f133;animation:templateMenuIn .15s ease-out;overflow:hidden}@keyframes templateMenuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.template-menu-header{padding:8px 12px;font-size:10px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #2a2a3e}.template-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;color:#e0e0e0;font-size:13px;cursor:pointer;text-align:left;transition:background .1s}.template-menu-item:hover{background:#6366f126}.template-menu-item:last-child{border-radius:0 0 8px 8px}.template-menu-icon{font-size:14px}.template-menu-name{flex:1}.autocomplete-inline-wrapper{position:relative;width:100%}.email-sent-state{text-align:center;padding:20px 0}.email-icon{font-size:48px;margin-bottom:16px}.email-sent-text{font-size:14px;color:#e0e0e0;margin-bottom:8px}.email-sent-text strong{color:#6366f1}.email-sent-hint{font-size:12px;color:#888;margin-bottom:20px;line-height:1.5}.resend-btn{width:100%;padding:10px;border:1px solid #3a3a5e;border-radius:6px;background:transparent;color:#888;font-size:13px;cursor:pointer;margin-bottom:10px;transition:all .2s}.resend-btn:hover:not(:disabled){border-color:#6366f1;color:#6366f1}.resend-btn:disabled{opacity:.5;cursor:not-allowed}.back-to-signin-btn{width:100%;padding:10px;border:none;border-radius:6px;background:#6366f1;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.back-to-signin-btn:hover{background:#5558e3}.onboarding-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.onboarding-modal{background:#1e1e32;border:1px solid #3a3a5e;border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0009;animation:onboardingIn .3s ease-out}@keyframes onboardingIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.onboarding-progress{display:flex;align-items:center;justify-content:center;padding:24px;border-bottom:1px solid #2a2a3e;gap:12px}.progress-step{display:flex;align-items:center;gap:8px;color:#555;font-size:13px;font-weight:500}.progress-step.active{color:#6366f1}.progress-step.complete{color:#22c55e}.step-number{width:28px;height:28px;border-radius:50%;border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.progress-step.active .step-number{background:#6366f1;border-color:#6366f1;color:#fff}.progress-step.complete .step-number{background:#22c55e;border-color:#22c55e;color:#fff}.progress-line{width:40px;height:2px;background:#2a2a3e}.onboarding-step{padding:24px}.step-header{text-align:center;margin-bottom:24px}.step-header h2{font-size:20px;color:#e0e0e0;margin-bottom:8px}.step-header p{font-size:14px;color:#888}.drop-zone{border:2px dashed #3a3a5e;border-radius:12px;padding:32px 20px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:20px}.drop-zone:hover{border-color:#6366f1;background:#6366f10d}.drop-zone.dragging{border-color:#6366f1;background:#6366f11a;border-style:solid}.drop-icon{font-size:36px;margin-bottom:12px}.drop-text{font-size:14px;color:#e0e0e0;margin-bottom:8px}.drop-hint{font-size:12px;color:#666}.ticker-input-section{margin-bottom:20px}.ticker-input-section label{display:block;font-size:12px;color:#888;margin-bottom:8px}.ticker-input-section textarea{width:100%;padding:12px;border:1px solid #3a3a5e;border-radius:8px;background:#ffffff0d;color:#e0e0e0;font-size:13px;font-family:SF Mono,Monaco,monospace;resize:vertical;outline:none;transition:border-color .2s}.ticker-input-section textarea:focus{border-color:#6366f1}.ticker-input-section textarea::placeholder{color:#555}.parsed-tickers{background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:8px;padding:12px;margin-bottom:20px}.parsed-header{font-size:12px;color:#888;margin-bottom:10px}.ticker-chips{display:flex;flex-wrap:wrap;gap:6px}.ticker-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#6366f1;color:#fff;font-size:11px;font-weight:600;border-radius:4px}.ticker-chip.more{background:#3a3a5e;color:#888}.ticker-chip button{background:none;border:none;color:#ffffffb3;font-size:14px;cursor:pointer;padding:0;line-height:1}.ticker-chip button:hover{color:#fff}.folder-input-section{margin-bottom:20px}.folder-input-section label{display:block;font-size:12px;color:#888;margin-bottom:8px}.folder-input-section input{width:100%;padding:12px;border:1px solid #3a3a5e;border-radius:8px;background:#ffffff0d;color:#e0e0e0;font-size:13px;font-family:SF Mono,Monaco,monospace;outline:none;transition:border-color .2s}.folder-input-section input:focus{border-color:#6366f1}.folder-hint{margin-top:10px;font-size:12px;color:#666}.folder-preview{background:#0003;border-radius:8px;padding:12px;margin-bottom:20px}.preview-label{font-size:11px;color:#666;margin-bottom:4px}.folder-preview code{font-size:12px;color:#a5b4fc;word-break:break-all}.step-actions{display:flex;gap:12px;margin-top:24px}.skip-btn{flex:1;padding:12px;border:1px solid #3a3a5e;border-radius:8px;background:transparent;color:#888;font-size:14px;cursor:pointer;transition:all .2s}.skip-btn:hover{border-color:#555;color:#e0e0e0}.continue-btn,.complete-btn{flex:2;padding:12px;border:none;border-radius:8px;background:#6366f1;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.continue-btn:hover:not(:disabled),.complete-btn:hover:not(:disabled){background:#5558e3;transform:translateY(-1px)}.continue-btn:disabled,.complete-btn:disabled{opacity:.6;cursor:not-allowed}.onboarding-unified{max-width:420px;padding:0}.unified-header{padding:28px 28px 20px;text-align:center;border-bottom:1px solid #2a2a3e}.unified-header h2{font-size:22px;color:#e0e0e0;margin-bottom:6px;font-weight:600}.unified-header p{font-size:14px;color:#666}.unified-content{padding:24px 28px}.unified-input-area{position:relative;border:1px solid #3a3a5e;border-radius:10px;background:#ffffff08;transition:all .2s}.unified-input-area:focus-within{border-color:#6366f1;background:#6366f10d}.unified-input-area.dragging{border-color:#6366f1;border-style:dashed;background:#6366f11a}.unified-input-area textarea{width:100%;padding:16px;border:none;border-radius:10px 10px 0 0;background:transparent;color:#e0e0e0;font-size:14px;font-family:SF Mono,Monaco,Consolas,monospace;resize:none;outline:none;line-height:1.5}.unified-input-area textarea::placeholder{color:#555;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.drop-hint-inline{padding:10px 16px;font-size:12px;color:#555;border-top:1px solid #2a2a3e;cursor:pointer;transition:all .15s}.drop-hint-inline:hover{color:#6366f1;background:#6366f10d}.parsed-preview{margin-top:16px;padding:12px;background:#6366f114;border-radius:8px;border:1px solid rgba(99,102,241,.15)}.parsed-count{display:block;font-size:11px;color:#888;margin-bottom:8px;font-weight:500}.ticker-chips-inline{display:flex;flex-wrap:wrap;gap:5px}.ticker-chip-small{display:inline-flex;align-items:center;gap:3px;padding:3px 7px;background:#6366f1;color:#fff;font-size:10px;font-weight:600;border-radius:4px}.ticker-chip-small.more{background:#3a3a5e;color:#888}.ticker-chip-small button{background:none;border:none;color:#fff9;font-size:12px;cursor:pointer;padding:0;line-height:1;margin-left:2px}.ticker-chip-small button:hover{color:#fff}.folder-toggle{margin-top:20px}.folder-toggle-btn{background:none;border:none;color:#555;font-size:12px;cursor:pointer;padding:0;display:flex;align-items:center;gap:6px;transition:color .15s}.folder-toggle-btn:hover{color:#888}.folder-path-input{width:100%;margin-top:10px;padding:10px 12px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff08;color:#e0e0e0;font-size:12px;font-family:SF Mono,Monaco,Consolas,monospace;outline:none;transition:border-color .15s}.folder-path-input::placeholder{color:#444}.unified-actions{display:flex;gap:12px;padding:20px 28px 28px;border-top:1px solid #2a2a3e}.unified-actions .skip-btn{flex:1;padding:12px 16px;border:1px solid #3a3a5e;border-radius:8px;background:transparent;color:#666;font-size:13px;cursor:pointer;transition:all .15s}.unified-actions .skip-btn:hover{border-color:#555;color:#888}.unified-actions .done-btn{flex:1.5;padding:12px 24px;border:none;border-radius:8px;background:#6366f1;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.unified-actions .done-btn:hover:not(:disabled){background:#5558e3}.unified-actions .done-btn:disabled{opacity:.6;cursor:not-allowed}.onboarding-folder{max-width:400px;padding:0}.folder-onboard-header{padding:40px 32px 24px;text-align:center}.folder-icon-large{font-size:56px;margin-bottom:20px;display:inline-block}.folder-icon-large.success{color:#22c55e}.folder-icon-large.error{width:56px;height:56px;background:#ef444426;border:2px solid #ef4444;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:#ef4444}.folder-onboard-header h2{font-size:24px;color:#e0e0e0;margin-bottom:10px;font-weight:600}.folder-onboard-header p{font-size:14px;color:#888;line-height:1.5}.folder-path-display{font-family:SF Mono,Monaco,Consolas,monospace;color:#a5b4fc!important;font-size:13px!important}.folder-onboard-content{padding:0 32px 32px;text-align:center}.select-folder-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 48px;border:none;border-radius:12px;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 20px #6366f166}.select-folder-btn:hover{background:linear-gradient(135deg,#5558e3,#4338ca);transform:translateY(-2px);box-shadow:0 6px 28px #6366f180}.select-folder-btn:active{transform:translateY(0)}.select-folder-btn .btn-icon{font-size:20px}.browser-not-supported{padding:20px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:13px;line-height:1.6}.browser-not-supported p:first-child{font-weight:600;margin-bottom:8px}.folder-hint{margin-top:24px;font-size:13px;color:#666;line-height:1.6}.hint-example{display:block;margin-top:6px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;color:#555}.error-hint{font-size:13px;color:#888;line-height:1.6;margin-bottom:20px}.found-tickers-grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-height:200px;overflow-y:auto;padding:4px}.found-ticker-chip{display:inline-block;padding:6px 12px;background:#6366f126;border:1px solid rgba(99,102,241,.3);color:#a5b4fc;font-size:12px;font-weight:600;border-radius:6px;font-family:SF Mono,Monaco,Consolas,monospace}.found-ticker-chip.more{background:#ffffff0d;border-color:#ffffff1a;color:#888}.folder-path-section{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);text-align:left}.folder-path-label{display:block;color:#ccc;font-size:13px;font-weight:500;margin-bottom:8px}.folder-path-label .path-hint{color:#666;font-weight:400;margin-left:8px}.folder-path-input{width:100%;padding:10px 14px;border:1px solid #3a3a5e;border-radius:8px;background:#0000004d;color:#ddd;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace;outline:none;transition:border-color .15s}.folder-path-input:focus{border-color:#6366f1}.folder-path-note{margin-top:8px;font-size:11px;color:#666;line-height:1.4}.folder-onboard-actions{display:flex;gap:12px;padding:20px 32px 32px;justify-content:center}.skip-link{background:none;border:none;color:#555;font-size:13px;cursor:pointer;padding:12px 20px;transition:color .15s}.skip-link:hover{color:#888;text-decoration:underline}.back-btn{padding:12px 20px;border:1px solid #3a3a5e;border-radius:8px;background:transparent;color:#888;font-size:14px;cursor:pointer;transition:all .15s}.back-btn:hover{border-color:#555;color:#e0e0e0}.folder-onboard-actions .done-btn{padding:12px 32px;border:none;border-radius:8px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s;box-shadow:0 4px 16px #22c55e4d}.folder-onboard-actions .done-btn:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px)}.folder-onboard-actions .done-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#1e1e32;border:1px solid #3a3a5e;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0009;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #2a2a3e}.modal-header h3{font-size:16px;font-weight:600;color:#e0e0e0;margin:0}.modal-close{background:none;border:none;color:#666;font-size:24px;cursor:pointer;padding:0;line-height:1;transition:color .15s}.modal-close:hover{color:#ef4444}.modal-body{padding:24px}.modal-hint{font-size:13px;color:#888;margin-bottom:16px;line-height:1.5}.modal-footer{display:flex;gap:12px;padding:16px 24px;border-top:1px solid #2a2a3e;justify-content:flex-end}.transcript-modal{max-width:800px}.transcript-input{width:100%;padding:16px;border:1px solid #3a3a5e;border-radius:10px;background:#ffffff08;color:#e0e0e0;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace;resize:vertical;line-height:1.6;min-height:300px;outline:none;transition:border-color .15s}.transcript-input:focus{border-color:#6366f1}.transcript-input::placeholder{color:#555;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.transcript-input:disabled{opacity:.6;cursor:not-allowed}.transcript-stats{margin-top:10px;font-size:12px;color:#666}.progress-modal{max-width:400px;text-align:center}.progress-modal .modal-body{padding:32px 24px}.progress-bar-container{width:100%;height:8px;background:#2a2a3e;border-radius:4px;overflow:hidden;margin-bottom:20px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:4px;transition:width .3s ease}.progress-message{font-size:14px;color:#e0e0e0;margin-bottom:8px}.progress-step{font-size:12px;color:#666}.progress-error{margin-top:20px;padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px}.progress-error p{color:#fca5a5;margin-bottom:12px}.progress-success{margin-top:20px;padding:16px;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:8px}.progress-success p{color:#86efac;margin-bottom:12px}.btn-primary{padding:10px 20px;border:none;border-radius:8px;background:#6366f1;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.btn-primary:hover:not(:disabled){background:#5558e3}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:10px 20px;border:1px solid #3a3a5e;border-radius:8px;background:transparent;color:#888;font-size:14px;cursor:pointer;transition:all .15s}.btn-secondary:hover:not(:disabled){border-color:#555;color:#e0e0e0}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.server-status{font-size:11px;padding:4px 8px;border-radius:4px;margin-left:12px}.server-status.online{color:#22c55e;background:#22c55e1a}.server-status.offline{color:#ef4444;background:#ef44441a;cursor:help}.toast-container{position:fixed;top:20px;right:20px;z-index:99999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-item{display:flex;align-items:center;gap:10px;padding:14px 18px;background:#1e1e32;border:1px solid #3a3a5e;border-radius:10px;box-shadow:0 8px 32px #0006;animation:toastSlideIn .3s ease-out;pointer-events:auto;cursor:pointer;transition:all .2s ease;min-width:280px;max-width:400px}.toast-item:hover{transform:translate(-4px);box-shadow:0 10px 40px #00000080}.toast-item.toast-exit{animation:toastSlideOut .3s ease-in forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-icon{font-size:16px;font-weight:700;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.toast-message{font-size:13px;color:#e0e0e0;line-height:1.4}.toast-success{border-left:4px solid #22c55e}.toast-success .toast-icon{color:#22c55e;background:#22c55e26}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon{color:#ef4444;background:#ef444426}.toast-info{border-left:4px solid #6366f1}.toast-info .toast-icon{color:#6366f1;background:#6366f126}.toast-warning{border-left:4px solid #eab308}.toast-warning .toast-icon{color:#eab308;background:#eab30826}.cell-spinner{width:18px;height:18px;border:2px solid rgba(234,179,8,.2);border-top-color:#eab308;border-radius:50%;animation:cellSpin .8s linear infinite}@keyframes cellSpin{to{transform:rotate(360deg)}}.period-cell.status-extracting .status-circle,.period-cell.status-extracting .extracting-ring{display:none}.period-cell.just-completed{animation:cellFlash .6s ease-out}@keyframes cellFlash{0%{background:#22c55e66!important}to{background:#22c55e0f!important}}.rating-changes-section{background:#12121f;border:1px solid #2a2a3e;border-radius:6px;overflow:hidden;margin-bottom:16px}.rating-changes-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e1e32;border-bottom:1px solid #2a2a3e}.rating-changes-title{font-weight:600;font-size:14px;color:#e0e0e0}.rating-changes-refresh-btn{padding:6px 12px;border:none;border-radius:4px;background:#6366f133;color:#6366f1;font-size:12px;font-weight:500;cursor:pointer}.rating-changes-refresh-btn:hover{background:#6366f14d}.rating-changes-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.rating-changes-content{padding:0}.rating-changes-loading,.rating-changes-empty{padding:24px 16px;text-align:center;color:#666;font-size:13px;display:flex;flex-direction:column;align-items:center;gap:8px}.rating-changes-empty .empty-icon{font-size:24px}.rating-changes-error{padding:16px;text-align:center;color:#ef4444;font-size:13px;background:#ef44441a}.rating-changes-summary{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid #2a2a3e;background:#6366f108}.summary-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.summary-badge.upgrade{background:#22c55e26;color:#22c55e}.summary-badge.downgrade{background:#ef444426;color:#ef4444}.summary-badge .badge-icon{font-size:12px}.rating-changes-list{max-height:300px;overflow-y:auto}.rating-change-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid #222;transition:background .15s}.rating-change-item:last-child{border-bottom:none}.rating-change-item:hover{background:#1a1a30}.rating-change-item.upgrade{border-left:3px solid #22c55e}.rating-change-item.downgrade{border-left:3px solid #ef4444}.change-direction{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:14px}.change-details{flex:1;min-width:0}.change-headline{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;line-height:1.4}.change-ticker{font-weight:700;color:#6366f1}.change-action{color:#888}.change-rating{font-weight:600;color:#e0e0e0;padding:2px 8px;background:#ffffff14;border-radius:4px}.change-meta{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:11px;color:#666}.change-analyst{font-weight:500;color:#888}.change-separator{color:#444}.change-date{color:#666}.change-from{color:#555;font-style:italic}.change-target{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0;margin-left:auto;padding-left:12px}.target-price{display:flex;flex-direction:column;align-items:flex-end}.target-label{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:.5px}.target-value{font-size:13px;font-weight:600;color:#e0e0e0}.target-upside{font-size:12px;font-weight:600;padding:2px 6px;border-radius:4px}.target-upside.positive{color:#22c55e;background:#22c55e26}.target-upside.negative{color:#ef4444;background:#ef444426}.ticker-autocomplete-wrapper{position:relative}.ticker-autocomplete-input{width:100%;padding:8px 10px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff0d;color:#e0e0e0;font-size:13px;outline:none;transition:border-color .15s,background .15s}.ticker-autocomplete-input:focus{border-color:#6366f1;background:#6366f114}.ticker-autocomplete-input::placeholder{color:#555}.ticker-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#1e1e32;border:1px solid #3a3a5e;border-radius:6px;max-height:180px;overflow-y:auto;z-index:10000;box-shadow:0 8px 24px #0006}.ticker-autocomplete-item{padding:8px 12px;cursor:pointer;font-size:13px;font-weight:500;color:#e0e0e0;border-bottom:1px solid #2a2a3e;transition:background .1s}.ticker-autocomplete-item:last-child{border-bottom:none}.ticker-autocomplete-item:hover,.ticker-autocomplete-item.selected{background:#6366f133;color:#fff}.ticker-autocomplete-item.selected{background:#6366f14d}.template-editor-modal{max-width:480px!important}.template-editor-content{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.template-editor-row{display:flex;gap:12px}.template-editor-field{display:flex;flex-direction:column;gap:6px}.template-editor-field label{font-size:11px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px}.template-name-input{padding:10px 12px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff0d;color:#e0e0e0;font-size:14px;outline:none;transition:border-color .15s}.template-name-input:focus{border-color:#6366f1}.template-name-input::placeholder{color:#555}.template-icon-select{padding:10px 12px;border:1px solid #3a3a5e;border-radius:6px;background:#ffffff0d;color:#e0e0e0;font-size:18px;cursor:pointer;outline:none}.template-icon-select option{background:#1e1e32;font-size:16px}.template-kpi-list{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto;padding:8px;background:#0003;border-radius:8px;border:1px solid #2a2a3e}.template-kpi-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#ffffff08;border:1px solid #3a3a5e;border-radius:6px;transition:all .15s}.template-kpi-item:hover{background:#6366f11a;border-color:#6366f14d}.kpi-order{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#666;background:#ffffff0d;border-radius:4px;flex-shrink:0}.kpi-edit-input{flex:1;padding:6px 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:#e0e0e0;font-size:13px;outline:none;transition:all .15s}.kpi-edit-input:focus{border-color:#6366f1;background:#6366f11a}.kpi-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.template-kpi-item:hover .kpi-item-actions{opacity:1}.kpi-move-btn,.kpi-remove-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:#ffffff0d;color:#888;font-size:12px;cursor:pointer;transition:all .15s}.kpi-move-btn:hover:not(:disabled){background:#6366f133;color:#6366f1}.kpi-move-btn:disabled{opacity:.3;cursor:not-allowed}.kpi-remove-btn:hover{background:#ef444433;color:#ef4444}.template-add-kpi{display:flex;gap:8px;margin-top:4px}.add-kpi-input{flex:1;padding:8px 10px;border:1px dashed #3a3a5e;border-radius:6px;background:transparent;color:#e0e0e0;font-size:13px;outline:none;transition:all .15s}.add-kpi-input:focus{border-color:#6366f1;border-style:solid;background:#6366f10d}.add-kpi-input::placeholder{color:#555}.add-kpi-btn{padding:8px 14px;border:none;border-radius:6px;background:#6366f133;color:#6366f1;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.add-kpi-btn:hover:not(:disabled){background:#6366f14d}.add-kpi-btn:disabled{opacity:.5;cursor:not-allowed}.template-editor-footer{display:flex;gap:8px;padding-top:16px;border-top:1px solid #2a2a3e}.template-editor-footer .modal-btn{padding:10px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.template-editor-footer .modal-btn.primary{background:#6366f1;color:#fff}.template-editor-footer .modal-btn.primary:hover:not(:disabled){background:#5558e3}.template-editor-footer .modal-btn.primary:disabled{opacity:.5;cursor:not-allowed}.template-editor-footer .modal-btn.secondary{background:#ffffff1a;color:#888}.template-editor-footer .modal-btn.secondary:hover{background:#ffffff26;color:#e0e0e0}.template-editor-footer .modal-btn.danger-btn{background:#ef444433;color:#ef4444}.template-editor-footer .modal-btn.danger-btn:hover{background:#ef44444d}.template-editor-footer .modal-btn.reset-btn{background:#f59e0b33;color:#f59e0b}.template-editor-footer .modal-btn.reset-btn:hover{background:#f59e0b4d}.profile-registration-modal{max-width:460px;padding:0}.profile-reg-header{text-align:center;padding:32px 32px 24px;border-bottom:1px solid #2a2a3e}.profile-icon{font-size:48px;margin-bottom:16px;filter:drop-shadow(0 4px 12px rgba(99,102,241,.3))}.profile-reg-header h2{font-size:22px;color:#e0e0e0;margin-bottom:8px;font-weight:700}.profile-reg-header p{font-size:14px;color:#888}.profile-reg-form{padding:24px 32px 32px}.profile-reg-form .form-group{margin-bottom:16px}.profile-reg-form .form-group label{display:block;font-size:12px;font-weight:600;color:#888;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.profile-reg-form .form-group input{width:100%;padding:12px 14px;border:1px solid #3a3a5e;border-radius:8px;background:#ffffff0d;color:#e0e0e0;font-size:14px;transition:all .2s}.profile-reg-form .form-group input:focus{outline:none;border-color:#6366f1;background:#6366f114}.profile-reg-form .form-group input.input-readonly{background:#0000004d;color:#666;cursor:not-allowed}.profile-reg-submit{width:100%;padding:14px;border:none;border-radius:8px;background:linear-gradient(135deg,#6366f1,#5558e3);color:#fff;font-size:15px;font-weight:700;cursor:pointer;margin-top:8px;transition:all .2s;box-shadow:0 4px 12px #6366f14d}.profile-reg-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #6366f166}.profile-reg-submit:active:not(:disabled){transform:translateY(0)}.profile-reg-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.profile-reg-footer{text-align:center;font-size:12px;color:#666;padding:0 32px 24px;margin:0}@media(max-width:768px){.app-header{padding:8px 12px;margin-bottom:8px}.app-header h1{font-size:15px}.header-actions{gap:6px}.app-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px;margin:0 -12px 12px;padding:3px 12px;flex-wrap:nowrap}.app-tabs::-webkit-scrollbar{display:none}.app-tab{flex:0 0 auto;padding:8px 14px;font-size:12px;white-space:nowrap}.app-container{padding:0 12px}.portfolio-container,.ticker-column{padding:0}.ticker-column-header{font-size:13px;padding:8px 0}.ticker-row{padding:6px 4px;font-size:12px}.live-prices-grid{grid-template-columns:repeat(2,1fr)!important;gap:6px}.price-card{padding:8px}.price-card .ticker-symbol{font-size:13px}.price-card .price-value{font-size:14px}.weekly-table{font-size:11px}.weekly-table th,.weekly-table td{padding:6px 4px}.calendar-container{padding:0}.kpis-matrix-table{font-size:11px}.kpis-matrix-table th,.kpis-matrix-table td{padding:4px 6px}.period-matrix-table{font-size:11px}.dashboard-container{padding:0}.modal-overlay .modal{width:95vw;max-width:none;margin:10px}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.integrations-btn,.logout-btn{font-size:11px;padding:3px 8px}}@media(max-width:480px){.app-header h1{font-size:14px}.app-tab{padding:6px 10px;font-size:11px}.live-prices-grid{grid-template-columns:1fr 1fr!important;gap:4px}}.settings-page{max-width:760px;margin:0 auto;padding:18px 12px}.settings-page-header{margin-bottom:18px}.settings-page-header h2{color:#e5e7eb;margin-bottom:4px;font-size:24px}.settings-page-header p{color:#9ca3af;margin:0;font-size:13px}
