/* Adapted from the supplied BaRe-Mem bundle: scoped selectors and lab font tokens. */
.bare-mem-note .widget, .bare-mem-note .box {
  --bg: #ffffff; --ink: #33383c; --muted: #7a8288; --faint: #a4aaaf; --line: #e4e6e8;
  --accent: #00369f; --wfill: #f7f8f9; --table-head: #f2f3f3;
  --c1: #00369f; --c2: #3f8f93; --ok: #2e8b57; --bad: #c9304a; --q: #a4aaaf;
}
.bare-mem-note .widget, .bare-mem-note .widget.narrow { width: 100%; left: auto; transform: none; box-sizing: border-box; }
.bare-mem-note .widget {
  width: min(940px, calc(100vw - 32px)); position: relative; left: 50%; transform: translateX(-50%);
  margin: 2em 0 2.2em; padding: 18px 20px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--wfill);
  font: 400 14.5px/1.5 var(--font-sans); color: var(--ink);
}
.bare-mem-note .widget.narrow { width: min(760px, calc(100vw - 32px)); }
.bare-mem-note .widget .w-title { font: 600 14.5px/1.3 var(--font-sans); letter-spacing: .01em; color: var(--accent); margin: 0 0 4px; }
.bare-mem-note .widget .w-sub { color: var(--muted); margin: 0 0 12px; }
.bare-mem-note .w-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 6px 0 10px; }
.bare-mem-note .w-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 22px; margin: 6px 0 10px; }
.bare-mem-note .w-slider { display: flex; align-items: center; gap: 10px; min-width: 0; }
.bare-mem-note .w-slider-name { min-width: 64px; }
.bare-mem-note .w-slider input[type=range] { width: 0; flex: 1; min-width: 90px; accent-color: var(--accent); }
.bare-mem-note .w-slider-value { width: 46px; text-align: right; font-variant-numeric: tabular-nums; color: var(--muted); }
.bare-mem-note .w-btn {
  padding: 5px 13px; border-radius: 999px; border: 1px solid var(--line); background: var(--bg); color: var(--ink);
  font: 500 13.5px/1.3 var(--font-sans); cursor: pointer;
}
.bare-mem-note .w-btn:hover { border-color: var(--faint); }
.bare-mem-note .w-btn.w-ghost { background: transparent; }
.bare-mem-note .w-btn.w-ok { color: var(--ok); }
.bare-mem-note .w-btn.w-bad { color: var(--bad); }
.bare-mem-note .w-btn.w-chip.on { background: var(--ink); color: var(--bg); border-color: var(--ink); }
.bare-mem-note .w-choices { gap: 6px; }
.bare-mem-note .w-toggle { display: inline-flex; align-items: center; gap: 4px; color: var(--muted); cursor: pointer; }
.bare-mem-note .w-muted { color: var(--muted); }
.bare-mem-note .w-svg { display: block; width: 100%; height: auto; margin: 6px 0; overflow: visible; }
.bare-mem-note .w-formula { overflow-x: auto; padding: 4px 0; }
.bare-mem-note .w-stats { color: var(--muted); overflow-x: auto; }
.bare-mem-note .w-log { margin-top: 8px; min-height: 2.2em; overflow-x: auto; }
.bare-mem-note .w-cands { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.bare-mem-note .w-cand { border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; background: var(--bg); }
.bare-mem-note .w-cand-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; }
.bare-mem-note .w-cand.c1 .w-cand-head b { color: var(--c1); }
.bare-mem-note .w-cand.c2 .w-cand-head b { color: var(--c2); }
.bare-mem-note .w-cand-btns { display: inline-flex; gap: 6px; }
.bare-mem-note .w-gains { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; margin-top: 4px; font-size: 13px; }
.bare-mem-note .w-gainchip { padding: 1px 8px; border-radius: 999px; border: 1px solid var(--line); font-variant-numeric: tabular-nums; }
.bare-mem-note .w-gainchip.ok { color: var(--ok); }
.bare-mem-note .w-gainchip.bad { color: var(--bad); }
.bare-mem-note .w-frame { fill: none; stroke: var(--line); }
.bare-mem-note .w-tick { stroke: var(--faint); }
.bare-mem-note .w-ticklabel, .bare-mem-note .w-small { fill: var(--muted); font: 11px var(--font-sans); }
.bare-mem-note .w-axislabel { fill: var(--muted); font: 12px var(--font-sans); }
.bare-mem-note .w-note { fill: var(--muted); font: 11.5px var(--font-sans); }
.bare-mem-note .w-rowname { fill: var(--ink); font: italic 600 17px var(--font-serif); }
.bare-mem-note .w-rowname.small { font: 600 12.5px var(--font-sans); font-style: normal; }
.bare-mem-note .w-blocklabel { fill: var(--faint); font: 11px var(--font-sans); }
.bare-mem-note .w-blocklabel.on { fill: var(--ink); font-weight: 600; }
.bare-mem-note .w-cell { stroke: none; }
.bare-mem-note .w-cell.zero { fill: none; stroke: var(--line); stroke-dasharray: 2 2; }
.bare-mem-note .w-cell.q { fill: var(--c1); }
.bare-mem-note .w-cell.c { fill: var(--c2); }
.bare-mem-note .w-cell.b { fill: var(--q); }
.bare-mem-note .w-cell.wq { fill: var(--c1); opacity: .45; }
.bare-mem-note .w-cell.wc { fill: var(--c2); opacity: .45; }
.bare-mem-note .w-cell.wb { fill: var(--q); opacity: .45; }
.bare-mem-note .w-cell.wfaint { fill: var(--line); }
.bare-mem-note .w-cellzero { fill: var(--faint); font: 10px var(--font-sans); }
.bare-mem-note .w-cellone { fill: #fff; font: 600 11px var(--font-sans); }
.bare-mem-note .w-line { fill: none; stroke-width: 2.2; }
.bare-mem-note .w-line.c1 { stroke: var(--c1); }
.bare-mem-note .w-line.c2 { stroke: var(--c2); }
.bare-mem-note .w-area.c1 { fill: var(--c1); opacity: .18; }
.bare-mem-note .w-area.c2 { fill: var(--c2); opacity: .18; }
.bare-mem-note .w-ghostline { fill: none; stroke: var(--faint); stroke-width: 1.2; stroke-dasharray: 4 3; }
.bare-mem-note .w-zero { stroke: var(--ink); stroke-width: 1; opacity: .5; }
.bare-mem-note .w-pnum { font: 600 13px var(--font-sans); }
.bare-mem-note .w-pnum.c1 { fill: var(--c1); }
.bare-mem-note .w-pnum.c2 { fill: var(--c2); }
.bare-mem-note .w-band.c1 { fill: var(--c1); opacity: .12; }
.bare-mem-note .w-band.c2 { fill: var(--c2); opacity: .12; }
.bare-mem-note .w-true { stroke-width: 1.4; stroke-dasharray: 5 4; }
.bare-mem-note .w-true.c1 { stroke: var(--c1); }
.bare-mem-note .w-true.c2 { stroke: var(--c2); }
.bare-mem-note .w-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.bare-mem-note .w-panel { border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px 4px; background: var(--bg); }
.bare-mem-note .w-panel-title { font: 600 13px/1.3 var(--font-sans); color: var(--ink); }
.bare-mem-note .w-gainstats { margin-top: 6px; }
.bare-mem-note .w-belief { fill: none; stroke: var(--ink); stroke-width: 2.2; }
.bare-mem-note .w-belief-area { fill: var(--ink); opacity: .07; }
.bare-mem-note .w-lik { fill: none; stroke-width: 1.8; stroke-dasharray: 5 3; }
.bare-mem-note .w-lik.ok { stroke: var(--ok); }
.bare-mem-note .w-lik.bad { stroke: var(--bad); }
.bare-mem-note .w-seg-track { stroke: var(--line); stroke-width: 6; stroke-linecap: round; }
.bare-mem-note .w-seg-move { stroke: var(--accent); stroke-width: 6; stroke-linecap: round; opacity: .75; }
.bare-mem-note .w-pt.old { fill: var(--bg); stroke: var(--faint); stroke-width: 2; }
.bare-mem-note .w-pt.new { fill: var(--accent); stroke: var(--bg); stroke-width: 1.5; }
.bare-mem-note .w-pt.ok { fill: var(--ok); }
.bare-mem-note .w-pt.bad { fill: var(--bad); }
.bare-mem-note .w-pt.hollow { fill: var(--bg); stroke: var(--muted); stroke-width: 1.6; }
.bare-mem-note .w-kfrac { fill: var(--accent); font: 600 12px var(--font-sans); }
.bare-mem-note .w-strong { font-weight: 600; fill: var(--ink); }
.bare-mem-note .w-parabola { fill: none; stroke: var(--ink); stroke-width: 2; }
.bare-mem-note .w-kline { stroke: var(--accent); stroke-width: 1.4; stroke-dasharray: 3 3; }
.bare-mem-note .w-legend { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 2px 0 4px; color: var(--muted); font-size: 13.5px; }
.bare-mem-note .w-legend-item { display: inline-flex; align-items: center; gap: 6px; }
.bare-mem-note .w-swatch { display: inline-block; width: 22px; height: 0; border-top: 3px solid; }
.bare-mem-note .w-swatch.kal { border-color: var(--accent); }
.bare-mem-note .w-swatch.fix1 { border-color: var(--q); }
.bare-mem-note .w-swatch.fix2 { border-color: var(--c2); }
.bare-mem-note .w-swatch.truth { border-color: var(--ink); border-top-style: dashed; border-top-width: 2px; }
.bare-mem-note .w-truthline { stroke: var(--ink); stroke-width: 1.3; stroke-dasharray: 6 4; opacity: .7; }
.bare-mem-note .w-traj { fill: none; stroke-width: 2.1; }
.bare-mem-note .w-traj.thin { stroke-width: 1.8; }
.bare-mem-note .w-traj.kal { stroke: var(--accent); }
.bare-mem-note .w-traj.fix1 { stroke: var(--q); }
.bare-mem-note .w-traj.fix2 { stroke: var(--c2); }
.bare-mem-note .katex-display { overflow-x: auto; overflow-y: hidden; padding: 4px 0; }
.bare-mem-note .box {
  border-left: 3px solid var(--accent); background: var(--wfill); border-radius: 0 10px 10px 0;
  padding: 12px 18px; margin: 1.4em 0; font-size: .97em;
}
.bare-mem-note .box p:last-child { margin-bottom: 0; }

@media (max-width: 640px) {
.bare-mem-note .widget { padding: 14px 12px; }
.bare-mem-note .w-grid2, .bare-mem-note .w-cands, .bare-mem-note .w-pair { grid-template-columns: minmax(0, 1fr); }
}
.bare-mem-note .w-axisline { stroke: var(--line); stroke-width: 1; }

.bare-mem-note .widget, .bare-mem-note .widget.narrow { width: 100%; min-width: 0; left: auto; transform: none; }
.bare-mem-note .bare-mem-equation { overflow-x: auto; overflow-y: hidden; padding-block: 0.25rem; }

/* Prose's inherited last-line alignment overrides KaTeX's fraction centering. */
.bare-mem-note .katex { text-align-last: auto; }
