:root{--bg: #0a0e1a;--bg-2: #131826;--bg-3: #1c2231;--bg-4: #232a3b;--ink: #e6e8ed;--ink-2: #9aa0ac;--ink-3: #5a5f6b;--accent: #ff6b35;--accent-2: #ff8b5f;--green: #00d68f;--green-soft: rgba(0, 214, 143, .16);--red: #ff4f4f;--red-soft: rgba(255, 79, 79, .16);--gold: #f5a623;--blue: #5fa8ff;--line: #1f2533;--line-2: #2a3142;--mono: "JetBrains Mono", "SF Mono", "Menlo", monospace;--sans: "IBM Plex Sans", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--cn: "Noto Sans SC", "PingFang SC", "Source Han Sans SC", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{background:var(--bg);color:var(--ink);font-family:var(--sans),var(--cn);font-size:13px;line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1,"cv11" 1}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-2)}.mono,code,.num,.ticker,td.num,td.ticker,th{font-family:var(--mono);font-variant-numeric:tabular-nums}.pos{color:var(--green)}.neg{color:var(--red)}.flat{color:var(--ink-3)}.warn{color:var(--gold)}.muted{color:var(--ink-3)}.tiny{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.chip{display:inline-block;font-family:var(--mono);font-size:10.5px;font-weight:600;padding:2px 7px;border:1px solid var(--line-2);background:var(--bg-2);color:var(--ink-2);letter-spacing:.04em}.chip.pos{color:var(--green);border-color:#00d68f66}.chip.neg{color:var(--red);border-color:#ff4f4f66}.chip.accent{color:var(--accent);border-color:#ff6b3580}.wrap{max-width:1240px;margin:0 auto;padding:0 24px 80px}.topnav{position:sticky;top:0;z-index:50;background:#0a0e1aeb;backdrop-filter:blur(8px);border-bottom:1px solid var(--line-2);padding:0 24px;display:flex;align-items:center;height:44px;font-family:var(--sans);font-size:11.5px}.topnav .nav-brand{font-family:var(--mono);font-weight:700;letter-spacing:.18em;color:var(--accent);font-size:13px;text-transform:uppercase}.topnav .nav-links{margin-left:28px;display:flex;gap:18px;flex:1}.topnav .nav-links a{color:var(--ink-2);letter-spacing:.05em;text-transform:uppercase;font-weight:500;font-size:11px}.topnav .nav-links a:hover{color:var(--ink)}.topnav .nav-meta{color:var(--ink-3);font-family:var(--mono);font-size:10.5px;letter-spacing:.06em}.topnav .nav-meta .live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:6px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.masthead{border-bottom:1px solid var(--line-2);padding:20px 0 14px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.masthead .m-left{display:flex;flex-direction:column;gap:4px}.masthead .m-title{font-family:var(--mono);font-size:22px;font-weight:700;letter-spacing:.08em;color:var(--ink);text-transform:uppercase}.masthead .m-title .accent{color:var(--accent)}.masthead .m-tag{font-family:var(--sans);font-size:11.5px;color:var(--ink-3);letter-spacing:.02em}.masthead .m-meta{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;display:flex;gap:12px}.masthead .m-meta .sep{color:var(--line-2)}.lead{font-family:var(--cn);font-size:13.5px;line-height:1.65;color:var(--ink-2);border-left:2px solid var(--accent);padding:8px 0 8px 14px;margin:14px 0 18px}.lead-meta{display:flex;flex-wrap:wrap;gap:4px 22px;margin:14px 0 28px;padding:12px 16px;background:var(--bg-2);border:1px solid var(--line-2)}.lead-meta .item{display:flex;align-items:baseline;gap:8px;padding:4px 0}.lead-meta .item .lbl{color:var(--ink-3);font-family:var(--sans);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.lead-meta .item .val{font-family:var(--mono);font-weight:600;font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}.section{margin:30px 0 14px}.section h2{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--line-2);padding-bottom:8px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}.section h2 .num{color:var(--accent);font-family:var(--mono);font-weight:700;margin-right:10px;font-size:11.5px}.section h2 .src{color:var(--ink-3);font-family:var(--mono);font-size:10px;letter-spacing:.08em;font-weight:500;text-transform:none}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}thead th{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:6px 10px 6px 0;border-bottom:1px solid var(--line-2);background:transparent}tbody td{padding:7px 10px 7px 0;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:12.5px;color:var(--ink)}tbody tr:hover{background:var(--bg-2)}tbody td.ticker{color:var(--ink);font-weight:600}tbody td.name{font-family:var(--cn);color:var(--ink-2);font-size:12px}tbody td.chg-pos,tbody td.pos{color:var(--green);font-weight:600}tbody td.chg-neg,tbody td.neg{color:var(--red);font-weight:600}tbody td.flat,.cross-table td.zero{color:var(--ink-3)}.cross-table td.has{color:var(--green);font-weight:600}.cross-table td.consensus{color:var(--accent);font-weight:700;background:linear-gradient(90deg,rgba(255,107,53,.18),transparent 80%)}.card{background:var(--bg-2);border:1px solid var(--line-2);padding:14px 16px}.card.accent-left{border-left:3px solid var(--accent)}.card.green-left{border-left:3px solid var(--green)}.card.red-left{border-left:3px solid var(--red)}.card.muted-left{border-left:3px solid var(--line-2);opacity:.7}.card-name{font-family:var(--sans);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin-bottom:8px}.card-headline{font-family:var(--mono);font-size:22px;font-weight:700;color:var(--ink);line-height:1.1;letter-spacing:.02em}.card-conf{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:8px}.card-note{font-family:var(--cn);font-size:12px;color:var(--ink-2);line-height:1.5;margin-top:8px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 880px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.score-card{background:var(--bg-2);border:1px solid var(--line-2);padding:16px 18px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}.score-num{font-family:var(--mono);font-size:44px;font-weight:700;color:var(--accent);line-height:1;letter-spacing:-.02em}.score-meta{display:flex;flex-direction:column;gap:4px}.score-ticker{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--ink);letter-spacing:.04em}.score-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:6px}.score-bar{height:4px;background:var(--bg-4);position:relative;overflow:hidden}.score-bar:after{content:"";position:absolute;left:0;top:0;bottom:0;background:var(--accent);width:var(--w, 0%)}.score-bar-labels{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;font-family:var(--mono);font-size:9px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em}.spark{display:inline-block;vertical-align:middle;height:18px}.spark-line{stroke:var(--accent);stroke-width:1.4;fill:none}.spark-fill{fill:#ff6b3529}.spark.green .spark-line{stroke:var(--green)}.spark.green .spark-fill{fill:var(--green-soft)}.spark.red .spark-line{stroke:var(--red)}.spark.red .spark-fill{fill:var(--red-soft)}.heatmap{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}@media (max-width: 880px){.heatmap{grid-template-columns:repeat(3,1fr)}}@media (max-width: 600px){.heatmap{grid-template-columns:repeat(2,1fr)}}.hm-block{background:var(--bg-2);border:1px solid var(--line-2);padding:12px 14px;position:relative;min-height:80px;display:flex;flex-direction:column;justify-content:space-between}.hm-block.pos{background:#00d68f1a;border-color:#00d68f4d}.hm-block.neg{background:#ff4f4f1a;border-color:#ff4f4f4d}.hm-block.split{background:#f5a6231a;border-color:#f5a6234d}.hm-cat{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.hm-headline{font-family:var(--mono);font-size:15px;font-weight:700;color:var(--ink);margin-top:6px}.hm-meta{font-family:var(--mono);font-size:10.5px;color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:4px}.div-card{background:var(--bg-2);border-left:3px solid var(--gold);padding:14px 16px;margin-bottom:10px}.div-card .d-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.div-card .d-ticker{font-family:var(--mono);font-size:15px;font-weight:700;color:var(--ink);letter-spacing:.04em}.div-card .d-tag{font-family:var(--sans);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700}.div-card .d-body{font-family:var(--cn);font-size:12px;color:var(--ink-2);line-height:1.55}.poly-list{list-style:none;padding:0;margin:0}.poly-list li{padding:10px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:baseline}.poly-list li:last-child{border-bottom:none}.poly-q{font-family:var(--cn);font-size:13px;color:var(--ink);line-height:1.4}.poly-dir{font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.poly-dir.BEARISH{color:var(--red)}.poly-dir.BULLISH{color:var(--green)}.poly-meta{grid-column:1 / -1;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.fg-box{background:var(--bg-2);border:1px solid var(--line-2);padding:18px 16px;text-align:center}.fg-num{font-family:var(--mono);font-size:48px;font-weight:700;line-height:1;letter-spacing:-.02em}.fg-class{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);margin-top:6px}.fg-label{font-family:var(--sans);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin-top:8px}.channel-block h4{font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px}.channel-block ul{list-style:none;padding:0;margin:0}.channel-block li{display:grid;grid-template-columns:1fr auto;gap:8px;padding:5px 0;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11.5px;color:var(--ink);font-variant-numeric:tabular-nums}.channel-block .empty{font-family:var(--sans);font-style:italic;color:var(--ink-3);font-size:12px}.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 880px){.research-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.research-grid{grid-template-columns:1fr}}.research-card{background:var(--bg-2);border:1px solid var(--line-2);padding:12px 14px}.research-card .r-meta{font-family:var(--sans);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.research-card .r-meta .tag{color:var(--accent);font-weight:700;margin-right:8px}.research-card .r-title{font-family:var(--cn);font-size:13px;font-weight:600;color:var(--ink);line-height:1.4;margin-bottom:6px}.research-card .r-summary{font-family:var(--cn);font-size:12px;color:var(--ink-2);line-height:1.55}.ipo-row{background:var(--bg-2);border:1px solid var(--line-2);padding:14px 16px;margin-bottom:8px;display:grid;grid-template-columns:1fr;gap:8px}.ipo-row .ipo-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:6px}.ipo-row .ipo-code-name{display:flex;gap:12px;align-items:baseline}.ipo-row .i-code{font-family:var(--mono);font-size:13px;font-weight:700;color:var(--accent)}.ipo-row .i-name{font-family:var(--cn);font-size:14px;font-weight:600;color:var(--ink)}.ipo-row .i-industry{font-family:var(--cn);font-size:11px;color:var(--ink-3)}.ipo-row .ipo-tag-verdict{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:3px 10px}.ipo-row .verdict-strong-buy{background:#00d68f40;color:var(--green)}.ipo-row .verdict-buy{background:#00d68f26;color:var(--green)}.ipo-row .verdict-hold{background:#f5a62326;color:var(--gold)}.ipo-row .verdict-caution{background:#ff4f4f26;color:var(--red)}.ipo-row .verdict-pending{background:var(--bg-3);color:var(--ink-3)}.ipo-row .ipo-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:6px 18px;font-family:var(--mono);font-size:11.5px}@media (max-width: 880px){.ipo-row .ipo-fields{grid-template-columns:repeat(2,1fr)}}.ipo-row .ipo-fields .f{display:flex;flex-direction:column;gap:2px}.ipo-row .ipo-fields .f .lbl{font-family:var(--sans);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.ipo-row .ipo-fields .f .val{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.ipo-row .ipo-reason{font-family:var(--cn);font-size:12px;color:var(--ink-2);line-height:1.55;border-top:1px solid var(--line);padding-top:8px}.disclaimer{margin:40px 0 16px;padding:12px 14px;background:var(--bg-2);border:1px solid var(--line);font-family:var(--sans);font-size:10.5px;color:var(--ink-3);line-height:1.55}.disclaimer strong{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:700}.foot{margin-top:48px;padding-top:16px;border-top:1px solid var(--line-2);font-family:var(--sans);font-size:11px;color:var(--ink-3)}.foot .foot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:12px}@media (max-width: 680px){.foot .foot-grid{grid-template-columns:repeat(2,1fr)}}.foot h4{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);font-weight:700;margin-bottom:8px}.foot ul{list-style:none;padding:0}.foot ul li{padding:3px 0}.foot ul li a{color:var(--ink-3);font-size:11px}.foot ul li a:hover{color:var(--ink)}.foot .foot-meta{margin-top:24px;padding-top:12px;border-top:1px solid var(--line);font-family:var(--mono);font-size:10px;color:var(--ink-3);letter-spacing:.06em}@media (max-width: 680px){.wrap{padding:0 14px 50px}.topnav{padding:0 14px}.topnav .nav-links a{font-size:10.5px}.masthead .m-title{font-size:18px}.lead-meta{gap:4px 14px}}
