/* Earnings center on research.html (earnings.js): one frosted card, a locked preview for non-Pro users. */
.er-card,.er-lock{position:relative;border-radius:22px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.09);border-top-color:rgba(255,255,255,0.18);padding:22px 24px;}
.er-badge{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,0.12);margin-bottom:16px;}
.er-wait{font-size:13px;color:var(--text-muted);padding:8px 0;}
.er-top{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.3fr) minmax(0,1.1fr);gap:20px;}
.er-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;}
.er-date{font-family:var(--font-display);font-size:26px;font-weight:500;letter-spacing:-0.02em;}
.er-sub{font-size:12.5px;color:var(--text-muted);margin-top:4px;}
.er-v{font-size:14px;color:var(--text-secondary);line-height:1.6;}
.er-v b{color:var(--text-primary);font-family:var(--mono);font-weight:500;}
.er-v span{color:var(--text-muted);font-size:12.5px;}
.er-card .up{color:var(--success);} .er-card .down{color:var(--danger);}
.er-chips{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 6px;}
.er-chips span{font-size:13px;color:var(--text-secondary);padding:7px 12px;border-radius:999px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);}
.er-chips b{color:var(--text-primary);font-family:var(--mono);font-weight:500;}
.er-scroll{overflow-x:auto;margin-top:14px;}
.er-t{width:100%;border-collapse:collapse;font-size:13.5px;min-width:620px;}
.er-t th{text-align:right;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:500;padding:8px 10px;border-bottom:1px solid var(--hairline);}
.er-t td{text-align:right;padding:10px;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,0.05);font-family:var(--mono);color:var(--text-primary);vertical-align:top;}
.er-t th:first-child,.er-t td:first-child{text-align:left;font-family:var(--font);}
.er-t td small{display:block;font-family:var(--font);font-size:11px;color:var(--text-muted);margin-top:2px;}
.er-out{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;padding-top:16px;border-top:1px solid var(--hairline);}
.er-src{font-size:12px;color:var(--text-muted);margin-top:16px;line-height:1.6;}
.er-src a{color:var(--text-secondary);}
.er-lock{overflow:hidden;min-height:220px;}
.er-ghost{filter:blur(6px);opacity:.45;pointer-events:none;user-select:none;}
.er-over{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:24px 28px;background:linear-gradient(90deg,rgba(12,12,14,0.92) 0%,rgba(12,12,14,0.75) 60%,rgba(12,12,14,0.4) 100%);}
.er-over .er-badge{margin:0;color:#c9d8f0;border-color:rgba(143,177,227,0.4);}
.er-over p{max-width:560px;font-size:14.5px;line-height:1.6;color:var(--text-secondary);margin:0;}
.er-over p b{color:var(--text-primary);}
@media (max-width:900px){.er-top{grid-template-columns:1fr;gap:14px;}.er-out{grid-template-columns:1fr;}}
/* Analyst ratings (analysts.js) share the earnings card styles. */
.an-top{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.6fr);gap:22px;align-items:center;}
.an-bar{display:flex;height:12px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,0.06);}
.an-bar span{display:block;height:100%;}
.an-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:12.5px;color:var(--text-secondary);}
.an-legend i,.an-keys i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle;}
.an-legend b{color:var(--text-primary);font-family:var(--mono);font-weight:500;}
.an-range{margin-top:22px;}
.an-track{position:relative;height:6px;border-radius:999px;background:linear-gradient(90deg,rgba(220,179,179,0.35),rgba(201,201,207,0.25),rgba(143,209,173,0.35));}
.an-track span{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid #0c0c0e;}
.an-mean,.an-keys i.m{background:#8fb1e3;}
.an-price,.an-keys i.p{background:#ededee;}
.an-ends{display:flex;justify-content:space-between;font-family:var(--mono);font-size:12px;color:var(--text-muted);margin-top:8px;}
.an-keys{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--text-secondary);margin-top:6px;}
.an-t{min-width:560px;}
.an-t td b.up{color:var(--success);} .an-t td b.down{color:var(--danger);}
.an-firms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;}
.an-firm{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.05);font-size:13.5px;}
.an-firm span:first-child{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.an-firm span:nth-child(2){color:var(--text-muted);font-size:12.5px;}
.an-firm b{font-family:var(--mono);font-weight:500;color:var(--text-primary);}
.an-firm small{grid-column:1 / -1;display:none;}
.an-lock{margin-top:18px;min-height:180px;}
@media (max-width:900px){.an-top{grid-template-columns:1fr;}.an-firms{grid-template-columns:1fr;}}
.an-firm b em{font-style:normal;font-size:12px;margin-left:6px;}
.an-firm b em.up{color:#a9cdb8;}
.an-firm b em.down{color:#dcb3b3;}
