/* Year-by-Year view (2026-09-24) — see js/21-year-table.js. New class names only (yb-*), so none of
   the ~170 older #projTable rules apply. The original table stays in the page, hidden. */
#projTableContainer.yb-original { display:none !important; }
.yb-view { --yb-line:var(--c-gray-95); --yb-ink:var(--c-slate-30); --yb-muted:var(--c-slate-60); --yb-teal:var(--c-teal-50); --yb-gold:var(--c-orange-60); --yb-red:var(--c-red-55b); --yb-green:var(--c-green-50);
  margin-top:6px; color:var(--yb-ink); font-variant-numeric:tabular-nums; }
.yb-view[hidden] { display:none; }
.yb-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; margin:0 0 8px; }
.yb-seg { display:inline-flex; border:1px solid var(--c-gray-85); border-radius:10px; overflow:hidden; background:var(--c-gray-99); }
.yb-seg button { min-height:38px; padding:7px 14px; border:0; border-right:1px solid var(--c-gray-85); background:transparent; color:var(--c-slate-45); font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.yb-seg button:last-child { border-right:0; }
.yb-seg button[aria-pressed="true"] { background:var(--yb-teal); color:var(--c-gray-99); }
.yb-jump { display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700; color:var(--c-slate-45); }
.yb-jump input { width:84px; min-height:38px; padding:6px 10px; border:1px solid var(--c-gray-85); border-radius:9px; font:inherit; font-size:14px; }
.yb-csv { min-height:38px; margin-left:auto; padding:7px 14px; border:1px solid var(--c-gray-85); border-radius:10px; background:var(--c-gray-99); color:var(--yb-teal); font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.yb-hint { margin:0 0 10px; font-size:12.5px; color:var(--yb-muted); }

/* ---------- table (desktop / tablet) ---------- */
.yb-scroll { overflow:auto; max-height:78vh; border:1px solid var(--yb-line); border-radius:12px; background:var(--c-gray-99); }
.yb-table { width:100%; border-collapse:separate; border-spacing:0; table-layout:auto; font-size:13.5px; }
.yb-table th, .yb-table td { padding:9px 16px; border-bottom:1px solid var(--yb-line); text-align:right; white-space:nowrap; vertical-align:middle; }
.yb-table thead th { position:sticky; top:0; z-index:3; background:var(--c-gray-95); color:var(--c-slate-50); font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; white-space:normal; line-height:1.25; vertical-align:bottom; min-width:64px; }
.yb-table .yb-age { position:sticky; left:0; z-index:2; text-align:left; background:inherit; font-weight:800; min-width:62px; }
.yb-table thead .yb-age { z-index:4; background:var(--c-gray-95); }
.yb-table tbody tr.yb-row { background:var(--c-gray-99); cursor:pointer; }
.yb-table tbody tr.yb-row:nth-child(even) { background:var(--c-gray-99); }
.yb-table tbody tr.yb-row:hover { background:var(--c-gray-95); }
.yb-table tbody tr.yb-row:focus-visible { outline:2px solid var(--yb-teal); outline-offset:-2px; }
.yb-table tbody tr.yb-row.is-open { background:var(--c-gray-95); }
.yb-table tbody tr.yb-row.is-working td { color:var(--c-slate-50); }
.yb-table .yb-c-total { font-weight:800; background:rgba(var(--c-teal-50-rgb), 0.045); }
.yb-table .yb-c-spend { font-weight:800; }
.yb-table .yb-notes-col { text-align:left; white-space:normal; min-width:150px; }
.yb-table thead .yb-notes-col { text-align:left; }
.yb-chev { display:inline-block; width:14px; margin-right:4px; color:var(--c-slate-70); transition:transform .15s; }
.yb-row.is-open .yb-chev, .yb-li.is-open .yb-chev { transform:rotate(90deg); }
.yb-saving { color:var(--c-slate-60); font-weight:600; }
.yb-table tfoot th, .yb-table tfoot td { background:var(--c-gray-95); font-weight:800; border-top:2px solid var(--c-gray-90); border-bottom:0; }
.yb-table tfoot small { display:block; line-height:1.35; white-space:normal; min-width:120px; font-size:11px; font-weight:600; color:var(--yb-muted); }

/* event lines between years */
.yb-table tr.yb-event td { position:relative; padding:6px 12px 6px 16px; text-align:left; white-space:normal; font-size:12.5px; font-weight:700; background:var(--c-gray-95); color:var(--c-amber-40); border-bottom:1px solid var(--yb-line); }
.yb-event-age { display:inline-block; min-width:30px; margin-right:10px; padding:1px 7px; border-radius:6px; background:rgba(var(--c-gray-00-rgb), 0.06); font-size:11.5px; text-align:center; }
.yb-table tr.yb-event.yb-tone-phase td, div.yb-event.yb-tone-phase { background:var(--c-gray-95); color:var(--c-slate-40); font-weight:800; }
.yb-table tr.yb-event.yb-tone-teal td, div.yb-event.yb-tone-teal { background:var(--c-gray-95); color:var(--c-teal-40); }
.yb-table tr.yb-event.yb-tone-green td, div.yb-event.yb-tone-green { background:var(--c-gray-95); color:var(--c-green-45); }
.yb-table tr.yb-event.yb-tone-red td, div.yb-event.yb-tone-red { background:var(--c-gray-95); color:var(--c-red-45); }
.yb-table tr.yb-event.yb-tone-muted td, div.yb-event.yb-tone-muted { background:var(--c-gray-95); color:var(--c-slate-50); }

/* tags */
.yb-tag { display:inline-block; margin:1px 4px 1px 0; padding:2px 8px; border-radius:999px; background:var(--c-gray-95); color:var(--c-slate-50); font-size:11.5px; font-weight:700; white-space:nowrap; }
.yb-tag.yb-tone-gold { background:var(--c-sand-95); color:var(--c-amber-50b); }
.yb-tag.yb-tone-green { background:var(--c-sage-95); color:var(--c-green-45b); }
.yb-tag.yb-tone-red { background:var(--c-rose-95); color:var(--c-red-45); }

/* opened year */
.yb-table tr.yb-detail td { padding:14px 16px 16px; text-align:left; white-space:normal; background:var(--c-gray-99); border-bottom:2px solid var(--c-sage-90); }
.yb-detail-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:10px 18px; }
.yb-field { display:flex; flex-direction:column; gap:2px; min-width:0; }
.yb-field-label { font-size:10.5px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--yb-muted); }
.yb-field-main { font-size:15px; font-weight:800; }
.yb-field-extra { font-size:12.5px; line-height:1.45; color:var(--c-slate-50); }
.yb-field-extra br { display:none; }
.yb-field-extra span[style*="display:block"] { display:inline !important; }
.yb-notes { margin-top:12px; padding-top:10px; border-top:1px dashed var(--c-gray-90); font-size:13px; }
.yb-notes ul { margin:6px 0 0; padding-left:18px; display:grid; gap:4px; }
.yb-flash { outline:3px solid var(--c-amber-75) !important; outline-offset:-3px; }

/* ---------- phone list ---------- */
.yb-list { display:none; }
@media (max-width:700px) {
  .yb-scroll { display:none; }
  .yb-list { display:flex; flex-direction:column; gap:0; border:1px solid var(--yb-line); border-radius:14px; overflow:hidden; background:var(--c-gray-99); }
  .yb-toolbar { gap:8px; }
  .yb-seg { width:100%; }
  .yb-seg button { flex:1 1 0; padding:7px 6px; font-size:12.5px; }
  .yb-jump input { width:76px; }
  .yb-li { border-bottom:1px solid var(--yb-line); }
  .yb-li-row { display:grid; grid-template-columns:34px minmax(0,1fr) auto 14px; align-items:center; gap:10px; width:100%; min-height:52px; padding:8px 12px; border:0; background:var(--c-gray-99); color:var(--yb-ink); font:inherit; text-align:left; cursor:pointer; }
  .yb-li.is-working .yb-li-row { background:var(--c-gray-99); }
  .yb-li.is-open .yb-li-row { background:var(--c-gray-95); }
  .yb-li-age { font-weight:800; font-size:15px; }
  .yb-li-total { display:flex; flex-direction:column; gap:4px; min-width:0; }
  .yb-li-total strong { font-size:15px; }
  .yb-bar { display:block; height:4px; border-radius:2px; background:var(--c-gray-95); overflow:hidden; }
  .yb-bar span { display:block; height:100%; border-radius:2px; background:var(--c-teal-75); }
  .yb-li-spend { display:flex; flex-direction:column; align-items:flex-end; gap:3px; font-size:13.5px; font-weight:700; text-align:right; }
  .yb-li-tags { display:flex; flex-wrap:wrap; justify-content:flex-end; }
  .yb-li-tags .yb-tag { font-size:10.5px; padding:1px 6px; margin:0 0 0 4px; }
  .yb-li-detail { padding:12px 14px 14px; background:var(--c-gray-99); border-top:1px solid var(--c-sage-90); }
  .yb-li-detail .yb-detail-grid { grid-template-columns:1fr 1fr; gap:10px 14px; }
  div.yb-event { padding:7px 12px; font-size:12.5px; font-weight:700; background:var(--c-gray-95); color:var(--c-amber-40); border-bottom:1px solid var(--yb-line); }
  .yb-csv { margin-left:0; }
}
@media print {
  #projTableContainer.yb-original { display:block !important; }
  .yb-view { display:none !important; }
}

/* Older global table/th rules (uppercase, alignment, fixed widths) must not reach this table. */
@layer compassNavTop {
  .yb-table { table-layout:auto !important; }
  .yb-table th, .yb-table td { text-align:right !important; width:1% !important; }
  .yb-table .yb-age, .yb-table .yb-notes-col, .yb-table tr.yb-event td, .yb-table tr.yb-detail td { text-align:left !important; }
  .yb-table .yb-notes-col { width:auto !important; }
  .yb-table tr.yb-event td, .yb-table tr.yb-detail td { width:auto !important; }
  .yb-table tbody th.yb-age, .yb-table tfoot th.yb-age { font-size:14px !important; font-weight:800 !important; letter-spacing:0 !important; text-transform:none !important; color:var(--c-slate-30) !important; }
  .yb-table tbody td, .yb-table tfoot td { font-size:13.5px !important; letter-spacing:0 !important; text-transform:none !important; }
}

/* Phone: the three market tabs as one segmented row instead of three stacked buttons. */
@layer compassNavTop {
  @media (max-width:700px) {
    #scenarioTabs { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:6px !important; padding:6px !important; }
    #scenarioTabs .preset-btn { min-height:44px !important; padding:6px 4px !important; font-size:12px !important; line-height:1.2 !important; justify-content:center !important; text-align:center !important; white-space:normal !important; width:auto !important; margin:0 !important; }
    #scenarioTabs .preset-btn svg { display:none !important; }
  }
}

/* ---------- Portfolio Projection chart (js/13 drawFanChart, 2026-09-24) ---------- */
.fan-dollar-switch { display:inline-flex; border:1px solid var(--c-gray-85); border-radius:10px; overflow:hidden; background:var(--c-gray-99); flex-shrink:0; }
.fan-dollar-switch button { min-height:36px; padding:6px 14px; border:0; border-right:1px solid var(--c-gray-85); background:transparent; color:var(--c-slate-45); font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.fan-dollar-switch button:last-child { border-right:0; }
.fan-dollar-switch button[aria-pressed="true"] { background:var(--c-teal-50); color:var(--c-gray-99); }
.fan-chart-foot { display:block !important; }
.fan-chart-key { display:flex; flex-wrap:wrap; gap:6px 16px; margin:0 0 8px; font-size:12.5px; color:var(--c-slate-45); }
.fan-chart-key:empty { display:none; }
.fan-key-item { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
.fan-key-item:has(> small) { white-space:normal; flex-wrap:wrap; row-gap:0; } .fan-key-item > small { white-space:nowrap; color:var(--c-slate-45); } /* "(spouse 75)" wraps on a phone (2026-10-10) */
.fan-key-item b { color:var(--c-slate-30); }
.fan-key-ic { width:14px; height:14px; flex:none; fill:none; stroke:var(--c-teal-50); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; margin-right:-2px; }
@media (max-width:600px){ .fan-key-ic { display:none; } }
.fan-key-num { display:inline-grid; place-items:center; width:18px; height:18px; border-radius:50%; border:1.4px solid var(--c-teal-50); color:var(--c-teal-50); font-size:10px; font-weight:800; margin-right:4px; }
#fanChartTooltip { background:var(--c-gray-99); border:1px solid var(--c-gray-90); border-radius:12px; box-shadow:0 10px 26px rgba(var(--c-shadow-rgb), 0.16); padding:10px 12px; min-width:190px; font-size:12.5px; white-space:normal !important; }
.fan-tip-head { font-size:14px; font-weight:800; color:var(--c-slate-30); margin-bottom:6px; }
.fan-tip-head span { display:block; font-size:11.5px; font-weight:600; color:var(--c-slate-60); }
.fan-tip-row { display:flex; justify-content:space-between; gap:16px; padding:2px 0; font-variant-numeric:tabular-nums; }
.fan-tip-row.good span { color:var(--c-amber-60); } .fan-tip-row.med span { color:var(--c-blue-35); } .fan-tip-row.bad span { color:var(--c-red-55b); }
.fan-tip-row span { font-weight:700; }
.fan-tip-ms { margin-top:6px; padding-top:6px; border-top:1px dashed var(--c-gray-90); line-height:1.7; color:var(--c-slate-30); font-weight:600; }
.fan-tip-out { margin-top:6px; color:var(--c-red-50); font-weight:700; }
.fan-tip-foot { margin-top:6px; font-size:11px; color:var(--c-slate-70); }
@media (max-width:700px) {
  .fan-chart-head { flex-wrap:wrap; gap:10px; }
  .fan-chart-key { font-size:12px; gap:4px 12px; }
}
.fan-key-out { color:var(--c-red-50); font-weight:600; }
.fan-key-out b { color:var(--c-red-50); }
.fan-key-dot { display:inline-block; width:9px; height:9px; border-radius:50%; background:var(--c-red-55b); margin-right:4px; }
.yb-age-sub { display:block; font-size:10.5px; font-weight:600; color:var(--c-slate-55); letter-spacing:0; text-transform:none; line-height:1.1; }
.yb-table thead .yb-age-sub { font-size:9.5px; text-transform:uppercase; letter-spacing:.06em; }

/* ---- Cash Flow: one year traced, with a year slider (2026-09-24; js/13 renderCashFlowSankey) ---- */
.cf-sk-controls { display:flex; flex-direction:column; gap:12px; margin:0 0 10px; }
.cf-sk-head { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:10px 16px; }
.cf-sk-label { display:block; font-size:11.5px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--c-slate-60); margin:0 0 2px; }
.cf-sk-yearline { display:flex; align-items:baseline; gap:10px; }
.cf-sk-yearline strong { font-size:26px; font-weight:800; color:var(--c-blue-25); letter-spacing:-.01em; font-variant-numeric:tabular-nums; }
.cf-sk-yearline span { font-size:15px; font-weight:600; color:var(--c-slate-60); font-variant-numeric:tabular-nums; }
.cf-sk-dollars { display:inline-flex; padding:3px; border-radius:999px; background:var(--c-gray-95); }
.cf-sk-dollars button { border:0; background:transparent; padding:6px 12px; border-radius:999px; font:inherit; font-size:12.5px; font-weight:700; color:var(--c-slate-45); cursor:pointer; }
.cf-sk-dollars button[aria-pressed="true"] { background:var(--c-gray-99); color:var(--c-teal-50); box-shadow:0 1px 3px rgba(var(--c-shadow-rgb), 0.14); }
.cf-sk-sliderrow { display:flex; align-items:center; gap:8px; }
.cf-sk-btn { flex:0 0 38px; width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--c-gray-90); border-radius:50%; background:var(--c-gray-99); color:var(--c-teal-50); font:inherit; font-size:22px; line-height:1; cursor:pointer; }
.cf-sk-btn:disabled { opacity:.35; cursor:default; }
.cf-sk-btn:focus-visible, .cf-sk-range:focus-visible, .cf-sk-dollars button:focus-visible { outline:2px solid var(--c-teal-50); outline-offset:2px; }
.cf-sk-play { background:var(--c-teal-50); border-color:var(--c-teal-50); color:var(--c-gray-99); }
.cf-sk-play svg { width:15px; height:15px; fill:currentColor; }
.cf-sk-play .i-pause, .cf-sk-play.is-playing .i-play { display:none; }
.cf-sk-play.is-playing .i-pause { display:block; }
.cf-sk-track { flex:1 1 auto; min-width:0; padding-top:14px; }
.cf-sk-range { -webkit-appearance:none; appearance:none; width:100%; height:8px; margin:0; border-radius:999px; background:linear-gradient(to right, var(--c-teal-50) 0 var(--cf-fill,0%), var(--c-gray-90) var(--cf-fill,0%) 100%); cursor:pointer; }
.cf-sk-range::-webkit-slider-thumb { -webkit-appearance:none; width:24px; height:24px; border-radius:50%; background:var(--c-gray-99); border:3px solid var(--c-teal-50); box-shadow:0 2px 6px rgba(var(--c-shadow-rgb), 0.25); }
.cf-sk-range::-moz-range-thumb { width:18px; height:18px; border-radius:50%; background:var(--c-gray-99); border:3px solid var(--c-teal-50); box-shadow:0 2px 6px rgba(var(--c-shadow-rgb), 0.25); }
.cf-sk-ends { display:flex; justify-content:space-between; margin-top:6px; font-size:11.5px; font-weight:600; color:var(--c-slate-60); }
.cf-sk-summary { display:grid; grid-template-columns:repeat(var(--cf-chips, 4), minmax(0,1fr)); gap:8px; }
.cf-sk-chip { display:flex; flex-direction:column; gap:1px; padding:9px 12px; border:1px solid var(--c-gray-95); border-radius:12px; background:var(--c-gray-99); min-width:0; }
.cf-sk-chip span { font-size:11.5px; font-weight:700; color:var(--c-slate-60); text-transform:uppercase; letter-spacing:.06em; }
.cf-sk-chip strong { font-size:18px; font-weight:800; color:var(--c-slate-25); font-variant-numeric:tabular-nums; }
.cf-sk-chip em { font-style:normal; font-size:12px; color:var(--c-slate-60); }
.cf-sk-shortfall { margin:10px 0 0; font-size:12.5px; font-weight:600; color:var(--red, var(--c-red-55b)); text-align:center; }
.cf-sk-detail { display:grid; grid-template-columns:1fr 1fr; gap:6px 28px; margin:14px 0 8px; }
.cf-sk-col h3 { margin:0 0 6px; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--c-slate-45); }
.cf-sk-line { display:grid; grid-template-columns:12px minmax(0,1fr) auto auto 38px; align-items:center; gap:8px; padding:5px 2px; border-bottom:1px solid var(--c-gray-95); font-size:13px; color:var(--c-slate-30); font-variant-numeric:tabular-nums; }
.cf-sk-dot { width:10px; height:10px; border-radius:3px; }
.cf-sk-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cf-sk-mo { color:var(--c-slate-60); font-size:12px; }
.cf-sk-yr { font-weight:700; text-align:right; min-width:72px; }
.cf-sk-pc { color:var(--c-slate-60); font-size:12px; text-align:right; }
.cf-sk-group { margin-top:6px; font-weight:800; background:var(--c-gray-99); border-radius:8px 8px 0 0; }
.cf-sk-item .cf-sk-name { padding-left:10px; }
.cf-sk-sub { font-size:12.5px; color:var(--c-slate-45); }
.cf-sk-sub .cf-sk-name { padding-left:24px; }
.cf-sk-sub .cf-sk-yr { font-weight:600; }
.cf-sk-total { border-bottom:0; border-top:2px solid var(--c-gray-90); font-weight:800; grid-template-columns:minmax(0,1fr) auto auto 38px; }
.cf-sk-notes { grid-column:1 / -1; font-size:12px; color:var(--c-slate-60); }
.cf-sk-notes p { margin:2px 0; }
@media (max-width:760px) {
  .cf-sk-summary { grid-template-columns:repeat(2, minmax(0,1fr)); }
  .cf-sk-detail { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .cf-sk-yearline strong { font-size:22px; }
  .cf-sk-line { grid-template-columns:10px minmax(0,1fr) auto 34px; gap:6px; }
  .cf-sk-line .cf-sk-mo { display:none; }
  .cf-sk-total { grid-template-columns:minmax(0,1fr) auto 34px; }
  .cf-sk-btn { flex-basis:34px; width:34px; height:34px; }
}

/* Cash Flow top bar (2026-10-03): markets as one row of segments, and one Today's $ / Future $ switch for the
   whole page (both charts). */
.cf-top { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 14px; margin:4px 0 6px; }
.cf-segs .nw-seg { white-space:nowrap; }
@media (max-width:600px){
  .cf-top { flex-direction:column; align-items:stretch; }
  .cf-segs { display:flex; }
  .cf-segs .nw-seg { flex:1; padding:6px 8px; font-size:12.5px; }
  .cf-top .cf-sk-dollars { align-self:flex-end; }
}

/* 2026-10-04: Flow / Step-down toggle and the savings strip */
.cf-sk-head .cf-sk-view { order:2; }
.cf-sk-savings { margin:14px 0 4px; padding:12px 14px; border:1px solid var(--c-gray-95); border-radius:14px; background:var(--c-gray-99); }
.cf-sv-h { font-size:13px; font-weight:800; color:var(--c-slate-25); margin-bottom:8px; }
.cf-sv-h small { margin-left:6px; font-size:11.5px; font-weight:500; color:var(--c-slate-60); }
.cf-sv-row { display:flex; align-items:stretch; gap:6px; }
.cf-sv-tile { flex:1 1 0; min-width:0; display:flex; flex-direction:column; gap:1px; padding:8px 10px; border-radius:10px; background:var(--c-gray-95); }
.cf-sv-tile span { font-size:11px; font-weight:700; color:var(--c-slate-60); text-transform:uppercase; letter-spacing:.05em; }
.cf-sv-tile strong { font-size:16px; font-weight:800; color:var(--c-slate-25); font-variant-numeric:tabular-nums; }
.cf-sv-tile em { font-style:normal; font-size:11.5px; color:var(--c-slate-60); }
.cf-sv-tile.up strong { color:var(--c-green-50); } .cf-sv-tile.dn strong { color:var(--c-red-50b); }
.cf-sv-tile.end { background:var(--c-sage-95); }
.cf-sv-op { flex:none; align-self:center; font-style:normal; font-size:16px; font-weight:800; color:var(--c-slate-60); }
@media (max-width:700px){
  .cf-sv-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .cf-sv-op { display:none; } .cf-sv-tile.end { grid-column:1 / -1; }
  .cf-sv-tile strong { font-size:15px; }
}

/* Milestone icons, style B (2026-10-05): a filled circle in the event's colour, the icon in the card colour, a thin
   card-coloured ring; a spouse's adds a dot. The number after it matches the chart's badge. */
.ms-b { position:relative; display:inline-grid; place-items:center; width:20px; height:20px; flex:none; border-radius:50%; background:var(--ms); box-shadow:0 0 0 1.5px var(--c-gray-99); vertical-align:-5px; }
.ms-b svg { width:12px; height:12px; fill:none; stroke:var(--c-gray-99); stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.ms-b.ms-sp::after { content:""; position:absolute; right:-2px; bottom:-2px; width:6px; height:6px; border-radius:50%; background:var(--c-gray-99); border:1.5px solid var(--ms); }
.fan-key-item .fan-key-num, .fan-tip-ms .fan-key-num { width:auto; height:auto; border:0 !important; border-radius:0; color:var(--c-slate-45); font-size:11px; margin:0 1px 0 0; }
.fan-tip-ms .ms-b { margin-right:4px; }
/* What each account paid of a source (js/13 cfAcctSplit, 2026-10-12) */
.cf-sk-line.cf-sk-sub { display:block; padding:0 2px 6px 22px; border-bottom:1px solid var(--c-gray-95); font-size:12px; color:var(--c-slate-50); }
