/* ============ Section styles (10): Revenue story + Objections ============ */

/* ---- running money tally under the journey rail ---- */
.rev-tally{display:flex; align-items:center; gap:18px; padding:16px 22px; border-top:1px solid var(--border); background:linear-gradient(90deg, color-mix(in srgb,var(--accent) 4%,var(--surface)), var(--surface))}
.rev-tally .rt-lab{font-family:var(--mono); font-size:11px; letter-spacing:.05em; text-transform:uppercase; color:var(--ink-3); flex-shrink:0}
.rev-tally .rt-track{flex:1; height:8px; border-radius:5px; background:var(--surface-3); overflow:hidden; position:relative}
.rev-tally .rt-fill{position:absolute; inset:0; width:0; border-radius:5px; background:linear-gradient(90deg, var(--accent), var(--success)); transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
.rev-tally .rt-val{font-size:20px; font-weight:800; letter-spacing:-.02em; font-variant-numeric:tabular-nums; color:var(--success); flex-shrink:0; min-width:160px; text-align:right}

/* ---- attribution split (fair credit) ---- */
.attr{margin-top:14px; background:var(--glass); -webkit-backdrop-filter:var(--glass-blur); backdrop-filter:var(--glass-blur); border:1px solid var(--glass-line); border-radius:var(--radius); box-shadow:var(--sh-2), var(--glass-inset); overflow:hidden}
.attr-h{display:flex; align-items:center; gap:11px; padding:18px 22px; border-bottom:1px solid var(--glass-line)}
.attr-h .at{font-size:15px; font-weight:700; letter-spacing:-.01em}
.attr-h .as{font-size:12.5px; color:var(--ink-3); margin-top:1px}
.attr-h .atot{margin-left:auto; text-align:right; flex-shrink:0}
.attr-h .atot .v{font-size:18px; font-weight:800; letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.attr-h .atot .l{font-size:11px; color:var(--ink-3)}
.attr-bar{display:flex; height:14px; margin:0; gap:3px; padding:14px 20px 0}
.attr-bar i{height:14px; border-radius:5px; transition:flex .8s cubic-bezier(.2,.7,.2,1)}
.attr-legend{display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:14px 20px 18px}
@media(max-width:640px){ .attr-legend{grid-template-columns:1fr} }
.attr-item{display:flex; align-items:center; gap:14px; padding:14px 16px; border-radius:14px; background:rgba(255,255,255,.55); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); border:1px solid var(--glass-line)}
.attr-ring{position:relative; width:62px; height:62px; flex-shrink:0}
.ar-track{fill:none; stroke:var(--surface-3); stroke-width:6}
.ar-arc{fill:none; stroke-width:6; stroke-linecap:round; animation:rgDraw .8s cubic-bezier(.2,.8,.2,1)}
.ar-num{position:absolute; inset:0; display:grid; place-items:center; font-size:13px; font-weight:800; letter-spacing:-.04em; font-variant-numeric:tabular-nums; white-space:nowrap; line-height:1}
.attr-item .ak{font-size:13px; font-weight:600; display:flex; align-items:center; gap:7px}
.attr-item .apct{font-size:19px; font-weight:800; letter-spacing:-.02em; font-variant-numeric:tabular-nums; line-height:1; margin:5px 0 3px}
.attr-item .amon{font-size:12px; color:var(--ink-3); font-variant-numeric:tabular-nums}
.attr-item .anote{font-size:11.5px; color:var(--ink-3); line-height:1.4; margin-top:6px}

/* enrich journey node with win line */
.jn-win{margin-top:9px; font-size:11px; color:var(--ink-3); line-height:1.3; min-height:30px}
.jnode.lit .jn-win{color:var(--accent-700)}
.jnode.deal.lit .jn-win{color:var(--success)}
.jn-time{position:relative; z-index:2; margin-left:auto; font-family:var(--mono); font-size:10px; color:var(--ink-4); background:var(--surface); padding:3px 9px; border-radius:100px; border:1px solid var(--border-2)}
@media(max-width:860px){ .jn-time{margin-left:0} }
.jnode.lit .jn-time{color:var(--accent-700); border-color:var(--accent-line); background:var(--accent-soft)}

/* ---------- OBJECTIONS ---------- */
.obj-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:46px}
@media(max-width:880px){ .obj-grid{grid-template-columns:1fr} }
.obj{background:var(--glass); -webkit-backdrop-filter:var(--glass-blur); backdrop-filter:var(--glass-blur); border:1px solid var(--glass-line); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--sh-2), var(--glass-inset); display:flex; flex-direction:column; transition:.18s}
.obj:hover{box-shadow:var(--sh-3); transform:translateY(-3px)}
.obj-myth{display:flex; align-items:flex-start; gap:12px; padding:20px 20px 16px; background:rgba(255,255,255,.4); border-bottom:1px solid var(--glass-line)}
.obj-myth .qi{width:34px;height:34px;border-radius:10px; flex-shrink:0; display:grid; place-items:center; background:var(--surface-3); color:var(--ink-3); position:relative}
.obj-myth .qi::after{content:"?"; font-weight:800; font-size:17px}
.obj-myth .qt{font-size:15px; font-weight:600; color:var(--ink-2); line-height:1.35; text-decoration:line-through; text-decoration-color:color-mix(in srgb,var(--risk) 55%,transparent); text-decoration-thickness:2px}
.obj-ans{padding:18px 20px 6px; display:flex; align-items:center; gap:10px}
.obj-ans .verdict-pill{display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:700; color:var(--success); background:var(--success-soft); border:1px solid var(--success-line); padding:8px 14px; border-radius:100px}
.obj-body{padding:14px 20px 8px; flex:1}
.obj-li{display:flex; align-items:flex-start; gap:12px; padding:9px 0; font-size:13.5px; line-height:1.5; color:var(--ink-2)}
.obj-li .li-dot{width:7px;height:7px;border-radius:50%; flex-shrink:0; background:var(--accent); margin-top:7px}
.obj-li b{color:var(--ink); font-weight:600}
.obj-foot{margin-top:auto; padding:14px 20px; border-top:1px solid var(--glass-line); background:rgba(255,255,255,.4); display:flex; align-items:center; gap:10px; font-size:12.5px; color:var(--ink-2); font-weight:600}ight:500}
.obj-foot .ff{width:26px;height:26px;border-radius:8px; display:grid; place-items:center; background:var(--accent-soft); color:var(--accent-700); flex-shrink:0}
.obj-foot b{color:var(--ink-1, var(--ink)); font-weight:700; color:var(--accent-700)}

.obj-strip{display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap; margin-top:24px; padding:18px 22px; border-radius:var(--radius); background:var(--accent-soft); border:1px solid var(--accent-line); color:var(--accent-700); font-size:14.5px; font-weight:600; text-align:center}
.obj-strip svg{flex-shrink:0}
