/* v27 · 非小号美股详情页专业模块：技术面 / 估值与盈利能力 / 同行业对比 */
.v27-tech,.v27-val,.v27-peer{padding:14px 16px!important}
.v27-tech .dp-h h2,.v27-val .dp-h h2,.v27-peer .dp-h h2{font-size:16px}
.v27-tech .kpi,.v27-val .kpi,.v27-peer .kpi{border:0;background:var(--bg2);padding:8px 11px}
.v27-tech .kpi b,.v27-val .kpi b,.v27-peer .kpi b{font-size:15px;margin-top:2px}
.v27-tech .kpi small,.v27-val .kpi small,.v27-peer .kpi small{margin-top:1px}
.tm-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:18px;align-items:start}
.tm-t{display:flex;align-items:baseline;gap:8px;font-size:13px;font-weight:600;margin:0 0 8px}
.tm-t small{font-weight:400;color:var(--fg3);font-size:11px}
.tm-ma{display:grid;grid-template-columns:44px 64px minmax(40px,1fr) 62px;gap:8px;align-items:center;font-size:12.5px;padding:6px 0;border-bottom:1px dashed var(--line);font-variant-numeric:tabular-nums}
.tm-ma b{color:var(--fg2);font-weight:600}.tm-ma .tm-v{color:var(--fg)}.tm-ma .tm-d{text-align:right}
.tm-bar{position:relative;display:block;height:6px;border-radius:3px;background:var(--bg2)}
.tm-bar:before{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:#c9d1de}
.tm-bar u{position:absolute;top:0;bottom:0;border-radius:3px;text-decoration:none}
.tm-bar u.pos{left:50%;background:#f0524f}.tm-bar u.neg{right:50%;background:#16b97a}
.tm-arr{margin:9px 0 0;font-size:12px;color:var(--fg2);line-height:1.5}
.v27-tech .dp-kg{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.rg2{position:relative;display:block;height:6px;margin:6px 0 3px;border-radius:3px;background:linear-gradient(90deg,#16b97a 0,#16b97a 30%,#d9dfea 30%,#d9dfea 70%,#f0524f 70%,#f0524f 100%);opacity:.9}
.rg2 u{position:absolute;left:var(--p);top:-3px;width:3px;height:12px;margin-left:-1.5px;border-radius:2px;background:var(--fg);text-decoration:none}
/* 估值与盈利能力 */
.vl-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px;align-items:start}
.v27-val .dp-kg{grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:6px}
.vl-grid.one{grid-template-columns:1fr}.vl-r{display:flex;flex-direction:column;gap:16px;min-width:0}
.fy-bars{display:flex;flex-direction:column;gap:4px}
.fy-row{display:grid;grid-template-columns:minmax(78px,auto) minmax(40px,1fr) 62px;gap:8px;align-items:center;font-size:12.5px;padding:5px 0;font-variant-numeric:tabular-nums}
.fy-row>span{color:var(--fg2);white-space:nowrap}.fy-row b{text-align:right;font-weight:600}
/* 同行业对比 */
.v27-peer .dp-h{align-items:center}
.pr-tags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:auto}
.pr-k{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 12px}
.big2{font-size:20px;font-weight:700}.pr-k u{text-decoration:none;color:var(--fg3);font-size:12px;font-weight:400}
.pr-tw{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
.pr-t{width:100%;min-width:0!important;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
.pr-t th{font-weight:500;color:var(--fg3);text-align:right;padding:8px 12px;background:var(--bg2);border-bottom:1px solid var(--line);white-space:nowrap}
.pr-t td{text-align:right;padding:8px 12px;border-bottom:1px solid var(--line);white-space:nowrap}
.pr-t tr:last-child td{border-bottom:0}.pr-t .l{text-align:left}
.pr-t tr.me td{background:var(--accent-bg)}
.pr-t tbody tr:hover td{background:#f7f9fc}.pr-t tr.me:hover td{background:var(--accent-bg)}
.pr-t .rk2{color:var(--fg3)}
.co2{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--fg)}
.co2 .ava{width:26px;height:26px;border-radius:50%;overflow:hidden;position:relative;flex:none;background:#fff;box-shadow:inset 0 0 0 1px #eceff4}
.co2 .ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12%;box-sizing:border-box}
.co2 .cn2{display:flex;flex-direction:column;line-height:1.25}.co2 .cn2 b{font-size:13px}.co2 .cn2 small{font-size:11px;color:var(--fg3)}
.co2:hover .cn2 b{color:var(--accent)}
@media(max-width:1100px){.pr-k{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.tm-grid,.vl-grid{grid-template-columns:1fr;gap:14px}}
@media(max-width:760px){
  .v27-tech,.v27-val,.v27-peer{padding:12px!important}
  .pr-k{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pr-t .h-s,.pr-t .h-m{display:none}.pr-t th,.pr-t td{padding:8px 8px}.co2{gap:7px}.co2 .ava{width:22px;height:22px}.co2 .cn2 b{font-size:12.5px}
  .pr-t .l{position:sticky;left:0;background:#fff;box-shadow:1px 0 0 var(--line)}.pr-t th.l{background:var(--bg2)}.pr-t tr.me td.l{background:var(--accent-bg)}
  .pr-tags{display:none}
  .v27-tech .dp-kg,.v27-val .dp-kg{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* v59 技术面：左右两栏等高，左边均线行均匀铺满，右边 8 个指标 4×2，不留白 */
@media(min-width:901px){
.v28-tech .tm-grid{align-items:stretch}
.v28-tech .tm-l{display:flex;flex-direction:column;justify-content:space-between}
.v28-tech .tm-r .dp-kg{grid-template-columns:repeat(4,minmax(0,1fr))!important;height:100%;grid-auto-rows:1fr}
.v28-tech .tm-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.9fr)}
}
