/* Agent JiHui's page accent (2026-10-10), JiHui's page sheet in silver. #5f6875 on light pages (5.9:1 on --paper #ffffff, 5.5:1 on --surface-2 #f6f8fd), #c9ced6 on dark ones (11.6:1 on --paper #0e1628, 12.6:1 on --dark #060b1a); button ink #ffffff on #5f6875 5.9:1, #060b1a on #c9ced6 12.6:1. */
.wh-page{--wh-ag:#5f6875;--wh-ag-d:#c9ced6;
  --wh-acc:var(--wh-ag);--wh-acc-ink:#ffffff;--wh-soft:rgba(95,104,117,.10);--wh-line:color-mix(in srgb,var(--wh-acc) 45%,transparent)}
:root[data-theme="dark"] .wh-page{--wh-acc:var(--wh-ag-d);--wh-acc-ink:#060b1a;--wh-soft:rgba(201,206,214,.16)}

/* hero: the medallion carries its own ring, so the frame is only a soft silver glow */
.wh-hero .lo-av.wh-av{box-shadow:0 22px 56px -22px color-mix(in srgb,var(--wh-acc) 60%,transparent);background:transparent}
.wh-hero .wh-av .lo-av-m{display:block;width:100%;height:100%}
.wh-hero .wh-av img,.wh-hero .wh-av svg{display:block;width:100%;height:100%;border-radius:50%}
.wh-av.is-thinking::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid var(--wh-acc);opacity:0;animation:lo-breathe 2.4s ease-out infinite;pointer-events:none}
@media (prefers-reduced-motion:reduce){.wh-av.is-thinking::after{animation:none}}
.wh-hero .wr-chips li{border-color:var(--wh-line)}
.wh-hero .wr-follow .btn-brand{background:var(--wh-acc);border-color:var(--wh-acc);color:var(--wh-acc-ink)}
.wh-hero .wr-follow .btn-brand:hover{filter:brightness(1.08)}
.wh-ref{margin:12px 0 0;font:500 13px/1.4 var(--sans);color:var(--ink-2);display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}

.wh-h2{margin:0 0 12px;font:800 20px/1.2 var(--sans);color:var(--ink);text-wrap:balance}
.wh-body .wr-bio p{max-width:66ch}

/* how JiHui makes a call */
.wh-how{margin-top:26px}
.wh-list{margin:0;padding-left:22px;font:500 16px/1.55 var(--sans);color:var(--ink-2)}
.wh-list li{margin:0 0 10px;padding-left:4px}
.wh-list li::marker{color:var(--wh-acc);font-weight:800}
.wh-list b{color:var(--ink)}

/* notes: what JiHui watches, the hours, the cents-per-pound note, where the rules come from */
.wh-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}
.wh-note{padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2)}
.wh-note h3{margin:0 0 8px;font:800 17px/1.25 var(--sans);color:var(--ink)}
.wh-note p{margin:0;font:500 15px/1.55 var(--sans);color:var(--ink-2)}
.wh-note p+p{margin-top:8px}
.wh-note--scale,.wh-note--study{grid-column:1/-1}
.wh-note--scale{border-color:var(--wh-line);background:var(--wh-soft)}
.wh-note--scale h3{color:var(--ink)}
.wh-note--scale h3::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border-radius:50%;background:var(--wh-acc);vertical-align:1px}
.wh-hours{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:6px;font:600 14px/1.4 var(--sans);color:var(--ink)}
.wh-hours li{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:10px;background:var(--paper);border:1px solid var(--line)}
.wh-hours li span{color:var(--ink-3);font-weight:500}

/* JiHui's own words */
.wh-say{margin:22px 0 0;padding:16px 20px;border-left:3px solid var(--wh-acc);border-radius:0 var(--r) var(--r) 0;background:var(--wh-soft)}
.wh-say blockquote{margin:0}
.wh-say p{margin:0;font:700 18px/1.45 var(--sans);color:var(--ink);text-wrap:pretty}
.wh-say figcaption{margin-top:6px;font:600 13px/1.3 var(--sans);color:var(--ink-2)}

/* FAQ */
.wh-faq-s{margin-top:28px}
.wh-faq{margin:0;display:grid;gap:10px}
.wh-faq>div{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.wh-faq dt{font:800 16px/1.35 var(--sans);color:var(--ink)}
.wh-faq dd{margin:6px 0 0;font:500 15px/1.55 var(--sans);color:var(--ink-2)}

/* record */
.wh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.wh-grid>div{padding:16px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);min-width:0}
.wh-grid dt{font:700 11px/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.wh-grid dd{margin:8px 0 6px;font:800 34px/1 var(--cond);color:var(--ink);font-variant-numeric:tabular-nums}
.wh-grid small{font:500 13px/1.4 var(--sans);color:var(--ink-3)}
.wh-stats{margin-top:26px}
.wh-page .is-pos{color:var(--gain)}.wh-page .is-neg{color:var(--loss)}
.wh-first{padding:22px 24px;border:1px dashed var(--wh-line);border-radius:var(--r-lg);background:var(--wh-soft)}
.wh-first-t{margin:0;font:800 20px/1.35 var(--sans);color:var(--ink);text-wrap:balance}
.wh-first-s{margin:8px 0 0;font:500 14.5px/1.5 var(--sans);color:var(--ink-2)}
.wh-fg{grid-template-columns:minmax(0,1fr)}
.lch-l.wh-l{stroke:var(--wh-acc)}.lch-p.wh-p{fill:var(--wh-acc)}

/* trade log */
.wh-tlog{padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2)}
.wh-tlog-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wh-tlog-h>div{text-align:center;min-width:0}.wh-tlog-h h2{margin:2px 0}
.wh-nav{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:var(--paper);color:var(--ink);font:700 20px/1 var(--sans);cursor:pointer}
.wh-nav:hover{border-color:var(--wh-acc)}
.wh-tlog-l{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.wh-tl,.wh-tlog-empty{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.wh-tlog-empty{color:var(--ink-2);font:500 14px/1.5 var(--sans)}
.wh-first-li{border-style:dashed;border-color:var(--wh-line);background:var(--wh-soft);color:var(--ink);font-weight:700}
.wh-tl--off{border-style:dashed;background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(127,127,127,.06) 8px 16px)}
.wh-tl--off .wh-tl-r,.wh-tl--off .wh-tl-note{color:var(--ink-2)}
.wh-tl-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wh-tl-w{font:700 14px/1.2 var(--sans);font-variant-numeric:tabular-nums}
.wh-tl-r{font-size:13px;color:var(--ink-2)}
.wh-tl-n{margin-left:auto;font:800 16px/1 var(--cond);font-variant-numeric:tabular-nums}
.wh-tl-d,.wh-tl-g{margin:6px 0 0;font-size:13px;color:var(--ink-2)}
.wh-tl-g{margin-top:3px;font-variant-numeric:tabular-nums}
.wh-tl-note{margin:4px 0 0;font-size:13.5px;color:var(--ink)}
.wh-tl-b{margin:3px 0 0;font-size:13px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.wh-tl-b--no{font-weight:500;color:var(--ink-2)}
.wh-tp{font:700 11px/1 var(--sans);padding:4px 8px;border-radius:6px;color:#fff;letter-spacing:.04em}
.wh-tp.is-up{background:var(--gain)}.wh-tp.is-down{background:var(--loss)}.wh-tp.is-flat{background:var(--line-2);color:var(--ink-2)}
:root[data-theme="dark"] .wh-tp.is-up,:root[data-theme="dark"] .wh-tp.is-down{color:#07101f}
.wh-ok{color:var(--gain);font-weight:700}.wh-no{color:var(--loss);font-weight:700}
.wh-tlog-f{margin:12px 0 0;font-size:13px;color:var(--ink-3)}
.wh-tlog .lo-tlog-c{margin:4px 0 14px;color:var(--ink-2)}
.wh-tlog .lt-cr{font-size:17px;color:var(--ink)}
.wh-tlog .lt-cr em{color:var(--gain);text-shadow:none}
.wh-tlog .lt-cf--cum{color:var(--ink-3)}
.wh-tlog .lo-tlog-c .is-gain{color:var(--gain)}.wh-tlog .lo-tlog-c .is-loss{color:var(--loss)}.wh-tlog .lo-tlog-c .is-flat{color:var(--ink-2)}

/* patch notes */
.wh-pn-lede{color:var(--ink-2);margin:4px 0 14px}
.wh-pn-c{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);margin-bottom:12px}
.wh-pn-c.is-live{border-color:var(--wh-line);box-shadow:inset 3px 0 0 var(--wh-acc)}
.wh-pn-c h3{margin:2px 0;font:800 20px/1.2 var(--sans);color:var(--ink)}
.wh-pn-when{margin:0;font-size:13px;color:var(--ink-3)}
.wh-pn-st{margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--wh-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--wh-line);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.wh-pn-c ul{margin:10px 0 0;padding-left:18px;color:var(--ink-2)}.wh-pn-c li{margin:4px 0}
.wh-pn-why{margin:8px 0 0;font-size:14px;color:var(--ink-2)}

/* rail */
.wh-page .lo-sb-desk{border-color:var(--wh-line)}
.wh-disc{margin:26px 0 8px}

/* the founding band keeps LoLo's dark card (--dark in both themes), so its accent is always the dark-surface silver (5.17:1) */
.wh-page .lo-join h2 em{color:var(--wh-ag-d)}

@media (max-width:860px){.wh-notes{grid-template-columns:1fr}}
@media (max-width:640px){
  .wh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wh-grid dd{font-size:28px}
  .wh-note{padding:16px}
  .wh-first{padding:18px 16px}.wh-first-t{font-size:18px}
}

/* lolo.css colours these for LoLo's dark log card; JiHui's log card follows the theme, so they take the page's ink here */
.wh-tlog .lo-tlog-k{color:var(--wh-acc)}
.wh-tlog .lo-tlog-s{color:var(--ink-2)}
.wh-pn-c .lp-v{display:inline-flex;align-items:baseline;gap:6px;width:auto;height:auto;margin:0 0 6px;padding:5px 10px;border-radius:8px;background:var(--wh-acc);color:var(--wh-acc-ink);font:800 16px/1 var(--cond)}
.wh-pn-c .lp-v span{display:inline;margin:0;font-size:9.5px}
.lo-calls .wh-first{grid-column:1/-1}
.lo-calls:has(.wh-first){display:block}

/* the month mini nav (lolo.css .mn*): the chosen chip is ink on paper inverted, so its net needs its own colours to keep
   AA in both themes (lolo.css uses --ink-3 and light greens there, 3.3:1 and 1.4:1 on the inverted chip) */
.wh-page .mn-m.is-on .mn-net{color:color-mix(in srgb,var(--paper) 80%,var(--ink))}
.wh-page .mn-m.is-on .mn-net.is-gain{color:#7ee2a8}.wh-page .mn-m.is-on .mn-net.is-loss{color:#ff9aa4}
:root[data-theme="dark"] .wh-page .mn-m.is-on .mn-net.is-gain{color:#087043}
:root[data-theme="dark"] .wh-page .mn-m.is-on .mn-net.is-loss{color:#b42333}

/* Indicators tab (2026-10-09): the indicator list, the buy terms, "My view right now" and "Check my entries". Accent only as a
   bar, a dot or a button fill; text on the wash takes --ink or --ink-2, as above. With and against carry a word, never colour alone. */
.wh-ind .wh-say{margin-top:12px}
.wh-ind-l{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wh-ind-i{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);min-width:0}
.wh-ind-i h3{margin:0 0 6px;font:800 17px/1.25 var(--sans);color:var(--ink)}
.wh-ind-i p{margin:0;font:500 14.5px/1.5 var(--sans);color:var(--ink-2)}
.wh-ind-i p+p{margin-top:6px}
.wh-ind-i b{color:var(--ink)}
.wh-ind-w{padding-top:8px;border-top:1px solid var(--line)}
.wh-ind-i p.wh-ind-w{margin-top:10px}
.wh-ind-w span{display:block;font:700 11px/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px}
.wh-ind-x{margin:12px 0 0;font:500 14px/1.5 var(--sans);color:var(--ink-3)}
.wh-terms{margin-top:18px;padding:18px 20px;border:1px solid var(--wh-line);border-radius:var(--r-lg);background:var(--wh-soft)}
.wh-terms h3{margin:0 0 8px;font:800 17px/1.25 var(--sans);color:var(--ink)}
.wh-terms h3::before{content:"";display:inline-block;width:10px;height:10px;margin-right:8px;border-radius:50%;background:var(--wh-acc);vertical-align:1px}
.wh-terms ul{margin:0;padding-left:20px;font:600 15px/1.55 var(--sans);color:var(--ink)}
.wh-terms p{margin:8px 0 0;font:500 14.5px/1.5 var(--sans);color:var(--ink-2)}
.wh-now,.wh-ent{margin-top:28px;padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper)}
.wh-now-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.wh-now-top .wr-h{margin:0}
.wh-now-t{font:500 13px/1.3 var(--sans);color:var(--ink-3);font-variant-numeric:tabular-nums}
.wh-now-e{margin-top:12px;padding:16px 18px;border:1px dashed var(--line-2);border-radius:var(--r);background:var(--surface-2)}
.wh-now-et{margin:0;font:800 17px/1.35 var(--sans);color:var(--ink)}
.wh-now-es{margin:6px 0 0;font:500 14.5px/1.5 var(--sans);color:var(--ink-2)}
.wh-now-call{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding:14px 16px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line)}
.wh-now-call .wh-tp{font-size:13px;padding:6px 10px}
.wh-now-k{margin:0;font:700 11px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.wh-now-c{margin:3px 0 0;font:700 16px/1.3 var(--sans);color:var(--ink)}
.wh-now-c b{font:800 20px/1 var(--cond);font-variant-numeric:tabular-nums}
.wh-now-tally{margin:0 0 0 auto;font:600 14px/1.3 var(--sans)}
.wh-now-l{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.wh-fr{display:grid;grid-template-columns:84px 120px minmax(0,1fr);align-items:baseline;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);border-left:4px solid var(--line-2)}
.wh-fr.is-with{border-left-color:var(--gain)}.wh-fr.is-against{border-left-color:var(--loss)}
.wh-fr-m{font:800 11px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.wh-fr.is-with .wh-fr-m{color:var(--gain)}.wh-fr.is-against .wh-fr-m{color:var(--loss)}
.wh-fr-k{font:700 14px/1.3 var(--sans);color:var(--ink)}
.wh-fr-t{font:500 14px/1.4 var(--sans);color:var(--ink-2);min-width:0}
.wh-fr-t small{display:block;font-size:12.5px;color:var(--ink-3)}
.wh-now-go{margin:12px 0 0;font-size:14px}
.wh-now-f{margin:12px 0 0;font-size:13px;color:var(--ink-3)}
.wh-ent-lede{margin:6px 0 0;max-width:66ch;font:500 15px/1.55 var(--sans);color:var(--ink-2)}
.wh-ent-l{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px}
.wh-en{display:grid;grid-template-columns:minmax(0,1.3fr) auto 64px minmax(0,1.4fr);align-items:center;gap:12px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);text-decoration:none}
.wh-en:hover{border-color:var(--wh-acc)}
.wh-en:focus-visible{outline:2px solid var(--wh-acc);outline-offset:2px}
.wh-en-w{font:600 14px/1.3 var(--sans);font-variant-numeric:tabular-nums}
.wh-en .wh-tp{justify-self:start}
.wh-en-p{font:800 17px/1 var(--cond);font-variant-numeric:tabular-nums;text-align:right}
.wh-en-r{font:600 13.5px/1.3 var(--sans);color:var(--ink-2);text-align:right}
.wh-ent-cta.btn{display:flex;justify-content:center;margin-top:16px;background:var(--wh-acc);border-color:var(--wh-acc);color:var(--wh-acc-ink)}
.wh-ent-cta.btn:hover{filter:brightness(1.08)}
@media (max-width:860px){.wh-ind-l{grid-template-columns:1fr}}
@media (max-width:640px){
  .wh-now,.wh-ent{padding:14px}
  .wh-fr{grid-template-columns:auto minmax(0,1fr);gap:4px 10px}
  .wh-fr-t{grid-column:1/-1}
  .wh-now-tally{margin-left:0;width:100%}
  .wh-en{grid-template-columns:auto minmax(0,1fr) auto;gap:4px 10px}
  .wh-en-w{grid-column:1/-1}
  .wh-en-r{text-align:right}
}
.wh-page{--ag-acc:var(--wh-acc);--ag-soft:var(--wh-soft);--ag-line:var(--wh-line)}   /* the Record card (assets/pages/lolo.css .ag-rec), 2026-10-15 */
