/* css/honest-score-v2.css — conf-fix 1027. Only styles .hs2-* nodes drawn by js/honest-score-v2.js (flag honest_score_v2). */
#confidence-dashboard.hs2-card { padding: 16px 18px; }
.hs2-head { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(240px, 1.2fr); gap: 16px; align-items: start; margin-bottom: 12px; }
.hs2-title { margin: 0 0 2px; font-size: 1rem; }
.hs2-sub { font-size: .82rem; color: var(--text-secondary, #555); margin-bottom: 6px; }
.hs2-score .overall-confidence { display: flex; align-items: baseline; gap: 8px; }
.hs2-score .overall-score { font-size: 2.1rem; font-weight: 700; }
.hs2-score .overall-score.high { color: var(--green, #15803d); }
.hs2-score .overall-score.medium { color: var(--yellow, #a16207); }
.hs2-score .overall-score.low { color: var(--red, #b91c1c); }
.hs2-complete { border-left: 3px solid var(--border-color, #ddd); padding-left: 12px; }
.hs2-k { font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; color: var(--text-secondary, #555); margin-bottom: 3px; font-weight: 600; }
.hs2-v { font-size: .9rem; color: var(--text, #111); }
.hs2-muted { font-size: .8rem; color: var(--text-secondary, #555); margin-top: 2px; }
.hs2-row { padding: 9px 0; border-top: 1px solid var(--border-color, #e5e5e5); }
.hs2-class b { font-size: .92rem; }
.hs2-parts .hs2-part-top { display: flex; justify-content: space-between; gap: 8px; font-size: .9rem; }
.hs2-pname { font-weight: 600; }
.hs2-pscore { font-weight: 700; }
.hs2-pscore.high { color: var(--green, #15803d); } .hs2-pscore.medium { color: var(--yellow, #a16207); } .hs2-pscore.low { color: var(--red, #b91c1c); }
.hs2-pscore.na { font-weight: 500; color: var(--text-secondary, #555); }
.hs2-part .confidence-bar-track { height: 6px; margin: 5px 0 3px; }
.hs2-why { font-size: .82rem; color: var(--text-secondary, #555); }
.hs2-na .hs2-pname { color: var(--text-secondary, #555); }
.hs2-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.hs2-act, .hs2-go { font: inherit; font-size: .78rem; padding: 4px 10px; border-radius: 6px; border: 1px solid var(--primary, #2563eb); background: transparent; color: var(--primary, #2563eb); cursor: pointer; }
.hs2-act:hover, .hs2-go:hover { background: var(--primary, #2563eb); color: #fff; }
.hs2-act.hs2-paid { border-style: dashed; }
.hs2-go { background: var(--primary, #2563eb); color: #fff; margin-top: 6px; }
.hs2-go:disabled { opacity: .6; cursor: wait; }
.hs2-form { margin-top: 8px; padding: 10px; border: 1px solid var(--border-color, #ddd); border-radius: 8px; background: var(--surface, #fafafa); }
.hs2-in { display: block; width: 100%; box-sizing: border-box; margin-top: 6px; font: inherit; font-size: .85rem; padding: 6px 8px; border: 1px solid var(--border-color, #ccc); border-radius: 6px; background: var(--card-bg, #fff); color: var(--text, #111); }
textarea.hs2-in { min-height: 60px; resize: vertical; }
.hs2-msg { font-size: .8rem; margin-top: 6px; } .hs2-ok { color: var(--green, #15803d); } .hs2-err { color: var(--red, #b91c1c); }
.hs2-state { font-size: .8rem; margin-top: 4px; color: var(--green, #15803d); }
.hs2-facts { margin-top: 6px; border-top: 1px solid var(--border-color, #e5e5e5); padding-top: 10px; }
.hs2-fact { display: grid; grid-template-columns: 170px 1fr; column-gap: 12px; row-gap: 1px; padding: 6px 0; border-top: 1px dashed var(--border-color, #eee); font-size: .86rem; }
.hs2-fact:first-of-type { border-top: 0; }
.hs2-fk { color: var(--text-secondary, #555); font-weight: 600; grid-row: span 2; }
.hs2-fv { color: var(--text, #111); }
.hs2-fw { grid-column: 2; font-size: .78rem; color: var(--text-secondary, #666); }
.hs2-fact > .hs2-actions, .hs2-fact > .hs2-form, .hs2-fact > .hs2-state { grid-column: 2; }
.hs2-detail { margin-top: 10px; font-size: .84rem; }
.hs2-detail summary { cursor: pointer; color: var(--primary, #2563eb); }
.hs2-dl { margin: 6px 0 0 4px; color: var(--text, #222); }
.hs2-flash { outline: 3px solid var(--primary, #2563eb); outline-offset: 3px; transition: outline .3s; }
@media (max-width: 720px) { .hs2-head { grid-template-columns: 1fr; } .hs2-fact { grid-template-columns: 1fr; } .hs2-fk { grid-row: auto; } .hs2-fw, .hs2-fact > * { grid-column: 1 !important; } }
.hs2-more{margin-top:6px}
.hs2-more>summary{cursor:pointer;font-size:12px;color:#2563eb;padding:4px 0}
.hs2-more>.hs2-fact{opacity:.95}

/* conf-fix 1028c: the sticky tab bars (#rl2-bar 134px, stepper 68px) never cover the card when it is scrolled to or linked to.
   The JS sets the exact value from the bar height; this is the fallback. */
#confidence-dashboard, .hs2-card { scroll-margin-top: 150px; }
/* sheet each risk / quantity comes from */
.hs2-card details.hs2-refs { margin-top: 6px; font-size: 12.5px; }
.hs2-card details.hs2-refs > summary { cursor: pointer; color: #0f766e; font-weight: 600; }
.hs2-card .hs2-ref { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: baseline; padding: 5px 0; border-top: 1px solid rgba(15, 23, 42, .07); }
.hs2-card .hs2-ref-name { flex: 1 1 320px; color: #1f2937; }
.hs2-card .hs2-ref-chips { display: inline-flex; flex-wrap: wrap; gap: 4px; align-items: center; }
.hs2-card .hs2-ref-groups { margin: 4px 0 6px; }
.hs2-card .hs2-chip { border: 1px solid #99d5cf; background: #effaf8; color: #0f5f58; border-radius: 10px; padding: 1px 8px; font-size: 12px; cursor: pointer; }
.hs2-card .hs2-chip:hover { background: #d9f3ef; }
.hs2-card .hs2-chip-off { color: #6b7280; font-size: 12px; }
.hs2-card .hs2-chip-none { color: #92400e; background: #fef3c7; border-radius: 10px; padding: 1px 8px; font-size: 12px; }
.hs2-card .hs2-src { flex-basis: 100%; margin: 4px 0 2px 12px; padding: 6px 8px; border-left: 3px solid #e5e7eb; background: #f9fafb; }
.hs2-card .hs2-src-k { font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: #6b7280; margin-top: 6px; }
.hs2-card .hs2-src-v { white-space: pre-wrap; color: #374151; margin: 2px 0 4px; }
#bid-summary .summary-card .hs2-na-val { color: #6b7280; }
#bid-summary .summary-card .hs2-actions { margin-top: 6px; }
body.dark-mode .hs2-card .hs2-ref-name, [data-theme="dark"] .hs2-card .hs2-ref-name { color: #e5e7eb; }
body.dark-mode .hs2-card .hs2-src, [data-theme="dark"] .hs2-card .hs2-src { background: rgba(255,255,255,.04); border-left-color: #374151; }
body.dark-mode .hs2-card .hs2-src-v, [data-theme="dark"] .hs2-card .hs2-src-v { color: #d1d5db; }
