:root{--sidebar-width: 260px;--topbar-h: 58px;--sidebar-gradient: linear-gradient(195deg, #1a1b35, #0d0e1a);--sidebar-text: rgba(255,255,255,.7);--sidebar-text-act: #ffffff;--sidebar-active-bg: rgba(255,255,255,.1);--sidebar-hr: rgba(255,255,255,.1);--content-bg: #f0f2f5;--card-bg: #ffffff;--card-shadow: 0 4px 20px rgba(0,0,0,.08);--card-radius: 12px;--text: #344767;--text2: #7b809a;--text3: #aaaab9;--border: rgba(0,0,0,.09);--buy: #4caf50;--sell: #f44336;--hold: #ff9800;--accum: #2196f3;--reduce: #ff5722;--grad-blue: linear-gradient(195deg, #49a3f1, #1A73E8);--grad-pink: linear-gradient(195deg, #EC407A, #D81B60);--grad-green: linear-gradient(195deg, #66BB6A, #43A047);--grad-orange: linear-gradient(195deg, #FFA726, #FB8C00);--grad-purple: linear-gradient(195deg, #a78bfa, #7c3aed);--grad-teal: linear-gradient(195deg, #26C6DA, #00ACC1);--accent: #1A73E8;--brand: #1565C0;--silver: #90A4AE;--surface: #ffffff;--surface2: #f8f9fa;--bg: #f0f2f5;--bg2: #e8eaf0;--border2: rgba(0,0,0,.15);--rad: 12px;--rad-sm: 8px;--gap: 20px}body{font-family:Inter,DM Sans,system-ui,-apple-system,sans-serif;background:var(--content-bg);color:var(--text);font-size:14px;line-height:1.5}::-webkit-scrollbar-track{background:#f0f2f5}::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}button{cursor:pointer;font-family:inherit;font-size:14px}input,select,textarea{font-family:inherit;font-size:14px}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);min-height:100vh;background:var(--sidebar-gradient);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:200;box-shadow:4px 0 24px #00000038;overflow:hidden;transition:transform .28s cubic-bezier(.4,0,.2,1)}.sidebar-header{display:flex;align-items:center;justify-content:center;padding:22px 20px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-hr{border:none;border-top:1px solid var(--sidebar-hr);margin:8px 16px}.sidebar-nav{flex:1;padding:10px 12px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;color:var(--sidebar-text);font-size:13px;font-weight:500;text-decoration:none;transition:background .2s,color .2s;position:relative}.sidebar-link:hover{background:#ffffff17;color:#fff}.sidebar-link.active{background:#ffffff26;color:#fff;font-weight:700;box-shadow:inset 0 0 0 1px #ffffff1f}.sidebar-icon{display:flex;align-items:center;justify-content:center;width:22px;flex-shrink:0;opacity:.85}.sidebar-link.active .sidebar-icon{opacity:1}.sidebar-link-label{flex:1}.sidebar-active-dot{width:6px;height:6px;border-radius:50%;background:#fff;flex-shrink:0;box-shadow:0 0 6px #fff9}.sidebar-footer{padding:14px 14px 20px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:10px}.sidebar-user{display:flex;align-items:center;gap:10px}.sidebar-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #0000004d}.sidebar-username{font-size:12px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-userrole{font-size:10px;color:#ffffff73;text-transform:capitalize;letter-spacing:.3px}.sidebar-signout{display:flex;align-items:center;justify-content:center;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#ffffffa6;padding:8px 14px;font-size:12px;font-weight:600;transition:background .2s,color .2s;width:100%;letter-spacing:.2px}.sidebar-signout:hover{background:#ffffff24;color:#fff}.sidebar-hamburger{display:none;position:fixed;top:14px;left:14px;z-index:300;width:38px;height:38px;background:var(--sidebar-gradient);border:none;border-radius:10px;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 10px #00000040;transition:box-shadow .2s}.sidebar-hamburger:hover{box-shadow:0 4px 16px #00000059}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.main-panel{flex:1;margin-left:0;min-height:100vh;background:var(--content-bg);display:flex;flex-direction:column}.main-header{background:#fff;border-bottom:1px solid rgba(0,0,0,.09);padding:0 28px;display:flex;align-items:center;gap:20px;position:sticky;top:0;z-index:100;height:var(--topbar-h);box-shadow:0 2px 12px #0000000f}.header-title{font-size:18px;font-weight:700;color:var(--text)}.header-subtitle{font-size:12px;color:var(--text2);margin-top:1px}.header-search{position:relative;display:flex;align-items:center}.header-search .search-icon{position:absolute;left:11px;font-size:12px;pointer-events:none;color:var(--text3)}.header-search input{background:#f8f9fa;border:1px solid var(--border);border-radius:20px;padding:8px 16px 8px 32px;color:var(--text);outline:none;width:260px;font-size:13px;transition:border-color .2s,box-shadow .2s}.header-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1a73e81a}.content-area{padding:24px;flex:1}@media(max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block}.sidebar-hamburger{display:flex}.main-panel{margin-left:0}.main-header{padding:0 16px}.content-area{padding:16px}.stat-cards{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.reports-grid{grid-template-columns:1fr}.header-search input{width:160px}}.stat-cards-wrapper{padding-top:28px;margin-bottom:28px}.stat-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.stat-card{background:var(--card-bg);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:16px 20px 18px;display:flex;align-items:flex-start;gap:16px}.stat-card-icon{width:56px;height:56px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;box-shadow:0 6px 18px #00000038;margin-top:-42px}.stat-card-body{flex:1;padding-top:2px}.stat-card-label{font-size:12px;color:var(--text2);font-weight:500}.stat-card-value{font-size:26px;font-weight:700;color:var(--text);line-height:1.2;margin-top:4px}.stat-card-footer{margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:11px;color:var(--text2)}.stat-card-footer .up{color:var(--buy);font-weight:600}.stat-card-footer .down{color:var(--sell);font-weight:600}.card,.widget{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);margin-bottom:20px;overflow:hidden}.card-header,.widget-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.card-title,.widget-title,.data-table thead th{font-size:14px;font-weight:700;color:var(--text);text-transform:none;letter-spacing:0}.card-badge,.widget-badge{font-size:11px;background:#1a73e814;color:var(--accent);border:1px solid rgba(26,115,232,.2);padding:2px 10px;border-radius:10px}.card-body,.widget-body{padding:20px}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.report-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--card-radius);padding:18px;cursor:pointer;transition:box-shadow .2s,transform .15s;box-shadow:0 2px 8px #0000000d}.report-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.rc-ticker{font-size:15px;font-weight:700;color:var(--text);font-family:Courier New,monospace}.rc-company{font-size:11px;color:var(--text2);margin-top:2px}.analyst-connect-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.ac-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--card-radius);padding:18px;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 8px #0000000d;transition:box-shadow .2s}.ac-card:hover{box-shadow:0 8px 24px #0000001a}.ac-avatar{width:44px;height:44px;border-radius:50%;background:var(--grad-blue);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;flex-shrink:0}.ac-spec{font-size:11px;color:var(--text2)}.ac-stats{font-size:11px;color:var(--text3);margin-top:2px}.ac-btn{padding:5px 10px;border-radius:6px;font-size:11px;font-weight:600;text-decoration:none;transition:opacity .2s}.ac-btn.email{background:#1a73e81a;color:var(--accent);border:1px solid rgba(26,115,232,.2)}.ac-btn.model{background:#4caf501a;color:#2e7d32;border:1px solid rgba(76,175,80,.2)}.ac-btn.meeting{background:#0000000a;color:var(--text2);border:1px solid var(--border)}.badge-buy{background:#4caf501f;color:#2e7d32;border:1px solid rgba(76,175,80,.3)}.badge-accumulate{background:#2196f31f;color:#1565c0;border:1px solid rgba(33,150,243,.3)}.badge-hold{background:#ff98001f;color:#e65100;border:1px solid rgba(255,152,0,.3)}.badge-reduce{background:#ff57221f;color:#bf360c;border:1px solid rgba(255,87,34,.3)}.badge-sell{background:#f443351f;color:#b71c1c;border:1px solid rgba(244,67,53,.3)}.badge-premium{background:#0000000d;color:var(--text2);border:1px solid var(--border)}.badge-type{background:#1a73e814;color:var(--accent);border:1px solid rgba(26,115,232,.2)}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.form-input{width:100%;background:#fff;border:1px solid rgba(0,0,0,.15);border-radius:8px;padding:10px 14px;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1a73e81a}.btn-primary{width:100%;background:var(--grad-blue);border:none;border-radius:8px;color:#fff;font-weight:600;padding:12px;margin-top:6px;letter-spacing:.3px;transition:opacity .2s,transform .1s,box-shadow .2s;box-shadow:0 4px 14px #1a73e859}.btn-primary:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px 18px #1a73e873}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--sidebar-gradient);padding:20px}.login-card{background:#fff;border-radius:16px;padding:40px 36px;width:100%;max-width:400px;box-shadow:0 20px 60px #0000004d}.login-logo{display:flex;align-items:center;gap:12px;margin-bottom:32px}.login-logo-mark{width:44px;height:44px;border-radius:12px;background:var(--grad-blue);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;color:#fff;box-shadow:0 4px 14px #1a73e866}.login-title{font-size:16px;font-weight:700;color:var(--text)}.login-subtitle{font-size:12px;color:var(--text2);margin-top:2px}.login-error{background:#f4433514;border:1px solid rgba(244,67,53,.3);border-radius:8px;padding:10px 14px;font-size:13px;color:#c62828;margin-bottom:16px}.filter-select{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:7px 12px;color:var(--text);outline:none;font-size:13px;transition:border-color .2s}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table thead th{text-align:left;padding:10px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text2);border-bottom:1px solid var(--border)}.data-table tbody tr{border-bottom:1px solid rgba(0,0,0,.05);transition:background .15s}.data-table tbody tr:hover{background:#1a73e808}.data-table tbody td{padding:10px 12px;color:var(--text);vertical-align:middle}.page-container{padding:24px;max-width:1400px;margin:0 auto}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:Inter,DM Sans,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);font-size:13px;line-height:1.5}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}.hidden{display:none!important}button{cursor:pointer;font-family:inherit;font-size:13px}input,select,textarea{font-family:inherit;font-size:13px}a{color:var(--accent);text-decoration:none}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.badge-buy{background:#00c89626;color:var(--buy);border:1px solid rgba(0,200,150,.3)}.badge-accumulate{background:#6c63ff26;color:var(--accum);border:1px solid rgba(108,99,255,.3)}.badge-hold{background:#8b84f026;color:var(--hold);border:1px solid rgba(139,132,240,.3)}.badge-reduce{background:#ff8a6526;color:var(--reduce);border:1px solid rgba(255,138,101,.3)}.badge-sell{background:#ff4b6e26;color:var(--sell);border:1px solid rgba(255,75,110,.3)}.badge-premium{background:#c4c1e01a;color:var(--silver);border:1px solid rgba(196,193,224,.3)}.badge-type{background:#4744d41f;color:var(--accent);border:1px solid rgba(71,68,212,.25)}.form-group{margin-bottom:14px}.form-label{display:block;font-size:11px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.form-input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:var(--rad-sm);padding:10px 14px;color:var(--text);outline:none;transition:border-color .2s}.form-input:focus{border-color:var(--accent)}.btn-primary{width:100%;background:linear-gradient(135deg,#5551E8,var(--brand));border:none;border-radius:var(--rad-sm);color:#fff;font-weight:600;padding:12px;margin-top:6px;letter-spacing:.3px;transition:opacity .2s,transform .1s}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.analyst-connect-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--gap)}.ac-card{background:var(--surface2);border:1px solid var(--border);border-radius:var(--rad);padding:16px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s}.ac-card:hover{border-color:var(--accent)}.ac-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--brand));display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.ac-name{font-weight:600;font-size:13px;color:var(--text)}.ac-spec{font-size:11px;color:var(--text3)}.ac-stats{font-size:10px;color:var(--text3);margin-top:2px}.ac-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.ac-btn{padding:5px 10px;border-radius:4px;font-size:11px;font-weight:600;text-decoration:none;transition:opacity .2s}.ac-btn:hover{opacity:.8}.ac-btn.email{background:#4744d426;color:var(--accent);border:1px solid rgba(71,68,212,.3)}.ac-btn.model{background:#00c8961a;color:var(--buy);border:1px solid rgba(0,200,150,.25)}.ac-btn.meeting{background:#c4c1e014;color:var(--silver);border:1px solid rgba(196,193,224,.2)}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--gap)}.report-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rad);padding:16px;cursor:pointer;transition:border-color .2s,transform .15s}.report-card:hover{border-color:var(--accent);transform:translateY(-2px)}.rc-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.rc-ticker{font-size:14px;font-weight:700;color:var(--text);font-family:Courier New,monospace}.rc-company{font-size:11px;color:var(--text3);margin-top:2px}.rc-title{font-size:12px;color:var(--text2);margin-bottom:12px;line-height:1.4}.rc-footer{display:flex;justify-content:space-between;align-items:center}.rc-analyst{font-size:11px;color:var(--text3)}.rc-date{font-size:10px;color:var(--text3);margin-top:8px}.widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--rad);margin-bottom:var(--gap);overflow:hidden}.widget-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border)}.widget-title{font-size:13px;font-weight:600;color:var(--text)}.widget-badge{font-size:10px;background:#4744d426;color:var(--accent);border:1px solid rgba(71,68,212,.3);padding:2px 8px;border-radius:10px}.widget-body{padding:16px}.empty-state{text-align:center;padding:60px 20px;color:var(--text2);font-size:14px}.toast-container{position:fixed;top:16px;right:16px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast{background:#fff;border-radius:10px;padding:12px 16px;font-size:13px;color:var(--text);box-shadow:0 8px 24px #0000001f;animation:toastIn .2s ease;max-width:320px;border-left:4px solid var(--accent)}.toast.success{border-left-color:var(--buy)}.toast.error{border-left-color:var(--sell)}@keyframes toastIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:none}}.admin-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid var(--border)}.admin-tab{padding:9px 18px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text2);font-weight:500;font-size:13px;cursor:pointer;transition:color .2s,border-color .2s;white-space:nowrap}.admin-tab:hover{color:var(--text)}.admin-tab.active{border-bottom-color:var(--accent);color:var(--accent);font-weight:700}.topnav-brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:var(--text);white-space:nowrap}.topnav-logo-mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--brand));display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:#fff}.topnav-brand span span{color:var(--accent)}.topnav-search{flex:1;max-width:320px;position:relative}.topnav-search input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:20px;padding:7px 14px 7px 32px;color:var(--text);outline:none;transition:border-color .2s}.topnav-search:before{content:"🔍";position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:11px;pointer-events:none}.topnav-links{display:flex;align-items:center;gap:4px}.topnav-links a,.topnav-links button{padding:6px 12px;border-radius:6px;font-size:12px;color:var(--text2);background:none;border:none;text-decoration:none;transition:background .2s,color .2s}.topnav-links a:hover,.topnav-links button:hover,.topnav-links a.active{background:#4744d426;color:var(--accent)}.topnav-right{margin-left:auto;display:flex;align-items:center;gap:10px}.topnav-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--brand));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;cursor:pointer}.topnav-logout{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text2);padding:5px 10px;font-size:11px;transition:border-color .2s,color .2s}.topnav-logout:hover{border-color:var(--sell);color:var(--sell)}.page-container{padding-top:calc(var(--topbar-h) + 24px);padding-left:24px;padding-right:24px;padding-bottom:24px;max-width:1400px;margin:0 auto}.login-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg2)}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--rad);padding:36px 32px;width:100%;max-width:380px}.login-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px}.login-logo-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--brand));display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;color:#fff}.login-title{font-size:15px;font-weight:700;color:var(--text)}.login-subtitle{font-size:11px;color:var(--text3);margin-top:1px}.login-error{background:#ff4b6e1a;border:1px solid rgba(255,75,110,.3);border-radius:var(--rad-sm);padding:10px 12px;font-size:12px;color:var(--sell);margin-bottom:14px}.filter-panel{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;align-items:center}.filter-select{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:var(--rad-sm);padding:7px 10px;color:var(--text);outline:none;transition:border-color .2s}.filter-select option{background:#fff;color:var(--text)}.filter-select:focus{border-color:var(--accent)}.topnav-brand{display:flex;align-items:center;flex-shrink:0}.topnav-search{flex:1;max-width:340px;position:relative;display:flex;align-items:center}.topnav-search-icon{position:absolute;left:12px;color:var(--text3);pointer-events:none}.topnav-search input{width:100%;background:#f5f6fa;border:1px solid rgba(0,0,0,.1);border-radius:24px;padding:8px 16px 8px 36px;color:var(--text);outline:none;font-size:13px;transition:border-color .2s}.topnav-search input::placeholder{color:var(--text3)}.topnav-search input:focus{border-color:var(--accent)}.search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text3);font-size:11px;cursor:pointer;padding:2px 4px;line-height:1;border-radius:50%;transition:color .15s,background .15s}.search-clear:hover{color:var(--text);background:#0000000f}.search-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 8px 32px #00000024;z-index:9999;overflow:hidden;min-width:360px}.search-loading{display:flex;align-items:center;gap:10px;padding:16px;color:var(--text2);font-size:13px}.search-spinner{width:14px;height:14px;border:2px solid rgba(26,115,232,.2);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.search-no-results{padding:20px 16px;text-align:center;color:var(--text2);font-size:13px}.search-group{padding:6px 0}.search-group+.search-group{border-top:1px solid rgba(0,0,0,.06)}.search-group-label{padding:8px 16px 4px;font-size:10px;font-weight:700;letter-spacing:.7px;color:var(--text3);text-transform:uppercase}.search-result-item{display:flex;align-items:center;gap:10px;padding:8px 16px;cursor:pointer;transition:background .12s}.search-result-item:hover{background:#f5f7ff}.sri-main{flex:1;display:flex;flex-direction:column;min-width:0}.sri-ticker{font-size:12px;font-weight:700;color:var(--text);letter-spacing:.3px}.sri-company{font-size:12px;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sri-badge{flex-shrink:0;font-size:9px!important;padding:2px 7px!important}.sri-analyst-row{cursor:pointer}.sri-analyst-row:hover{background:#f9f6ff}.sri-analyst-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sri-name{font-size:13px;font-weight:600;color:var(--text)}.sri-spec{font-size:11px;color:var(--text2)}.search-hl{background:none;color:var(--accent);font-weight:700;padding:0}.topnav-right{margin-left:auto;display:flex;align-items:center;gap:16px}.topnav-links{display:flex;align-items:center;gap:2px}.topnav-link{padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;color:var(--text2);background:none;text-decoration:none;transition:background .2s,color .2s;white-space:nowrap}.topnav-link:hover{color:var(--text);background:#0000000a}.topnav-link.active{color:var(--accent);font-weight:700}.topnav-user{display:flex;align-items:center;gap:8px}.topnav-avatar-new{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#49a3f1,#1a73e8);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0}.topnav-userinfo{display:flex;flex-direction:column;line-height:1.3}.topnav-username{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap}.topnav-role{font-size:10px;color:var(--accent);font-weight:700;letter-spacing:.4px}.topnav-logout-new{background:none;border:1px solid rgba(0,0,0,.12);border-radius:6px;color:var(--text2);padding:5px 14px;font-size:12px;font-weight:500;transition:border-color .2s,color .2s}.topnav-logout-new:hover{border-color:#f44336;color:#f44336}.market-tickers{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-bottom:22px}.market-ticker{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.mt-name{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text2);margin-bottom:6px}.mt-value{font-size:20px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.2}.mt-change{font-size:12px;font-weight:600;margin-top:4px}.mt-change.up{color:var(--buy)}.mt-change.down{color:var(--sell)}.tp-table .tp-num{text-align:right;font-family:Courier New,monospace;font-size:12px}.tp-conviction{font-size:11px;background:#7c6fff26;color:var(--accent);border:1px solid rgba(124,111,255,.3);padding:3px 12px;border-radius:20px;font-weight:600}.data-table thead{background:var(--card-bg)}@media(max-width:900px){.topnav-links,.topnav-userinfo{display:none}.topnav-search{max-width:160px}}
