/* Agent LoLo's profile (2026-09-26). The writer pages' bones (writers.css is not loaded; this is its own sheet) with a
   dark, amber-ringed hero, live numbers from /api/lolo/record and /api/lolo/latest, and the founding-list form.
   Tokens only. Every number cell reserves its width; numbers are tabular. Prefix lo-. */
.lo-hero{background:var(--dark);color:var(--dink);padding:36px 0 30px;position:relative;overflow:hidden}
.lo-hero::before{content:"";position:absolute;inset:-40% -10% auto;height:120%;background:radial-gradient(60% 50% at 30% 30%,rgba(245,181,61,.16),transparent 70%);pointer-events:none}
.lo-hero .wrap{position:relative}
.lo-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}
.lo-id{display:flex;gap:22px;align-items:flex-start}
.lo-av{position:relative;flex:none;width:132px;height:132px;border-radius:50%;box-shadow:0 0 0 3px var(--amber),0 24px 60px -20px rgba(245,181,61,.5)}
.lo-av svg{display:block;width:132px;height:132px;border-radius:50%}
.lo-av-m{display:block}   /* one drawing, seven moods: lolo.js sets data-mood on the svg */
.lo-av.is-reading::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid var(--amber);opacity:0;animation:lo-breathe 2.4s ease-out infinite;pointer-events:none}
.lo-av.is-win::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid var(--up);opacity:0;animation:lo-breathe 1.2s ease-out infinite;pointer-events:none}
@keyframes lo-breathe{0%{transform:scale(.92);opacity:.7}100%{transform:scale(1.18);opacity:0}}
@media (prefers-reduced-motion:reduce){.lo-av.is-reading::after,.lo-av.is-win::after{animation:none}}
.lo-live{position:absolute;right:-4px;bottom:8px;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:var(--dark-1);border:1px solid var(--dline-2);font:800 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--dink-2);white-space:nowrap}
.lo-live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--up)}
.lo-live.is-off::before{background:var(--dink-3)}
.lo-eyebrow{margin:0 0 6px;font:800 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--amber)}
.lo-name{margin:0;font:800 clamp(38px,6vw,64px)/.95 var(--display,'Barlow Condensed',var(--sans));letter-spacing:.01em;color:var(--dink)}
.lo-beat{margin:10px 0 0;max-width:56ch;font:500 16px/1.5 var(--sans);color:var(--dink-2)}
.lo-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.lo-chips li{display:inline-flex;align-items:center;height:30px;padding:0 11px;border-radius:999px;background:var(--dark-2);border:1px solid var(--dline);font:600 12px/1 var(--sans);color:var(--dink-2)}
.lo-chips li b{color:var(--dink);font-weight:700;margin-right:5px}
/* the free-this-month card (the month is written by lolo.js from the visitor's clock; the static text says "this month") */
.lo-free{background:var(--dark-1);border:1px solid var(--dline-2);border-radius:18px;padding:18px 18px 16px;box-shadow:0 20px 50px -24px rgba(3,6,20,.8)}
.lo-free-k{margin:0;font:800 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--amber)}
.lo-free-t{margin:8px 0 0;font:800 26px/1.1 var(--sans);color:var(--dink)}
.lo-free-t em{font-style:normal;color:var(--amber)}
.lo-free-p{margin:8px 0 0;font:500 13px/1.5 var(--sans);color:var(--dink-2)}
.lo-free .btn{margin-top:14px;width:100%;justify-content:center}
.lo-free-fine{margin:10px 0 0;font:500 11px/1.4 var(--sans);color:var(--dink-3)}
/* now: what he is doing this minute */
.lo-now{background:var(--dark-1);border-top:1px solid var(--dline);border-bottom:1px solid var(--dline);color:var(--dink)}
.lo-now .wrap{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;min-height:64px;padding-top:10px;padding-bottom:10px}
.lo-now-k{font:800 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--dink-3);white-space:nowrap}
.lo-now-t{display:flex;align-items:center;gap:12px;min-width:0;font:600 14px/1.3 var(--sans);color:var(--dink)}
.lo-now-t .lo-call{display:inline-flex;align-items:center;justify-content:center;min-width:64px;height:26px;padding:0 10px;border-radius:8px;font:800 12px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--dark)}
.lo-call--up{background:var(--up)}.lo-call--down{background:var(--dn)}.lo-call--none{background:var(--dark-3);color:var(--dink-2)}
.lo-now-s{font:500 13px/1.3 var(--sans);color:var(--dink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.lo-now-r{font:700 13px/1 var(--sans);color:var(--dink-2);white-space:nowrap}
.lo-now-r a{color:var(--amber);text-decoration:none}
/* stat tiles */
.lo-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.lo-tile{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:16px 18px 14px;min-height:112px}
.lo-tile i{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-style:normal}
.lo-tile b{display:block;margin-top:10px;font:800 30px/1 var(--sans);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}
.lo-tile b .lo-rec{display:inline-block;white-space:nowrap}   /* a count and its word never split; two counts may stack */
.lo-tile b:has(.lo-rec){white-space:normal;line-height:1.12}   /* two-digit counts ("24 correct 13 missed") are wider than a 1440 tile: they stack as units instead of clipping (Mary, 2026-09-27) */
.lo-tile b .lo-rec small{display:inline;font:600 16px/1 var(--sans);color:var(--ink-3);margin:0 6px 0 3px}
.lo-tile--dark b .lo-rec small{color:var(--dink-2)}
.lo-tile b.is-gain{color:var(--gain)}.lo-tile b.is-loss{color:var(--drop)}
.lo-tile small{display:block;margin-top:8px;font:500 12px/1.35 var(--sans);color:var(--ink-3)}
.lo-tile--dark{background:var(--dark-1);border-color:var(--dline-2)}
.lo-tile--dark i{color:var(--dink-3)}.lo-tile--dark b{color:var(--dink)}.lo-tile--dark small{color:var(--dink-2)}
.lo-tile--dark b.is-gain{color:var(--up)}.lo-tile--dark b.is-loss{color:var(--dn)}
/* the bankroll line */
.lo-eq{margin-top:18px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.lo-eq-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.lo-eq-h h2{margin:0}
.lo-eq-h p{margin:0;font:500 12.5px/1.4 var(--sans);color:var(--ink-3)}
.lo-eq svg{display:block;width:100%;height:120px;margin-top:10px}
.lo-eq-line{fill:none;stroke:var(--brand-ink);stroke-width:2}
.lo-eq-fill{fill:var(--brand-soft)}
.lo-eq-base{stroke:var(--line-2);stroke-dasharray:3 3}
.lo-eq-dot{fill:var(--brand-ink)}
.lo-eq-lbl{font:700 10.5px var(--sans);fill:var(--ink-3)}
/* record vs the market */
.lo-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:18px;align-items:start}
.lo-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px}
.lo-card h2,.lo-h{margin:0 0 4px;font:800 18px/1.2 var(--sans);color:var(--ink)}
.lo-card .lede{margin:0 0 12px;font:500 13px/1.5 var(--sans);color:var(--ink-3);max-width:90ch}
.lo-brier{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lo-brier div{padding:12px 14px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}
.lo-brier i{display:block;font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-style:normal}
.lo-brier b{display:block;margin-top:6px;font:800 24px/1 var(--sans);color:var(--ink);font-variant-numeric:tabular-nums}
.lo-skill{margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--chip);font:600 13px/1.45 var(--sans);color:var(--ink-2)}
.lo-skill b{font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.lo-bar{position:relative;height:8px;border-radius:4px;background:var(--line);margin-top:12px;overflow:hidden}
.lo-bar i{position:absolute;left:0;top:0;bottom:0;background:var(--brand);border-radius:4px}
.lo-bar-t{display:flex;justify-content:space-between;margin-top:6px;font:600 11px/1 var(--sans);color:var(--ink-3);font-variant-numeric:tabular-nums}
/* tables */
.lo-tablewrap{overflow:auto;-webkit-overflow-scrolling:touch;margin-top:10px}
.lo-table{width:100%;border-collapse:collapse;font:500 13px/1.35 var(--sans);color:var(--ink-2);font-variant-numeric:tabular-nums}
.lo-table th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line-2);font:700 10.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}
.lo-table td{padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.lo-table td b{color:var(--ink);font-weight:700}
.lo-table .r{text-align:right}
.lo-table .is-gain{color:var(--gain);font-weight:700}.lo-table .is-loss{color:var(--drop);font-weight:700}
.lo-table .lo-call{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:22px;padding:0 8px;border-radius:6px;font:800 10.5px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--paper)}
.lo-table .lo-call--up{background:var(--gain)}.lo-table .lo-call--down{background:var(--drop)}.lo-table .lo-call--none{background:var(--chip);color:var(--ink-3)}
.lo-empty{padding:18px 0 6px;font:500 13px/1.5 var(--sans);color:var(--ink-3)}
/* how he trades */
.lo-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px}
.lo-how div{padding:14px 16px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}
.lo-how i{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--brand-ink);font-style:normal}
.lo-how b{display:block;margin-top:8px;font:800 15px/1.25 var(--sans);color:var(--ink)}
.lo-how p{margin:6px 0 0;font:500 13px/1.5 var(--sans);color:var(--ink-2)}
.lo-quote{margin:18px 0 0;padding:16px 18px 16px 62px;position:relative;border-radius:16px;background:var(--dark-1);color:var(--dink);font:500 15px/1.55 var(--sans)}
.lo-quote::before{content:"";position:absolute;left:16px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--dark-3);box-shadow:0 0 0 2px var(--amber)}
.lo-quote svg{position:absolute;left:16px;top:16px;width:32px;height:32px;border-radius:50%}
.lo-quote b{color:var(--amber);font-weight:700}
/* founding list: the form rules the pricing page's founding form uses (group-d.css), the dark variant only */
.gd-form{display:grid;gap:18px}
.gd-form-t{font:800 28px/1 var(--cond,var(--sans));text-transform:uppercase;color:var(--dink)}
.field-err{font:600 13.5px/1.4 var(--sans);color:var(--dn)}
.field-err:empty{display:none}
.gd-form--dark{--focus:var(--dlink)}
.gd-form--dark .field label,.gd-form--dark .check{color:var(--dink)}
.gd-form--dark .check span{color:var(--dink-2)}
.gd-form--dark .input{background:var(--dark-1);border-color:var(--dline-2);color:var(--dink)}
.gd-form--dark .input::placeholder{color:var(--dink-3)}
.gd-form--dark .form-msg[data-state="ok"]{color:var(--up)}
.gd-form--dark .form-msg[data-state="warn"]{color:var(--amber)}
.gd-form--dark .form-msg[data-state="err"]{color:var(--dn)}
.gd-form .form-msg:empty{display:none}
/* founding list */
.lo-join{margin-top:28px;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:28px;align-items:start;background:var(--dark);color:var(--dink);border-radius:20px;padding:26px 28px}
.lo-join h2{margin:0;font:800 30px/1.1 var(--sans);color:var(--dink)}
.lo-join h2 em{font-style:normal;color:var(--amber)}
.lo-join p{margin:10px 0 0;font:500 14px/1.55 var(--sans);color:var(--dink-2);max-width:52ch}
.lo-join ul{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:6px;font:500 13px/1.45 var(--sans);color:var(--dink-2)}
.lo-join ul li::before{content:"\2713";color:var(--up);font-weight:800;margin-right:8px}
.lo-join .gd-form{margin:0}
.lo-foot{margin:18px 0 0;font:500 12px/1.5 var(--sans);color:var(--ink-3)}
@media (max-width:1199.98px){.lo-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.lo-how{grid-template-columns:1fr}}
@media (max-width:720px){.lo-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:899.98px){.lo-hero-grid{grid-template-columns:1fr}.lo-two{grid-template-columns:1fr}.lo-join{grid-template-columns:1fr}}
@media (max-width:720px){
  .lo-now-t>span:first-child{white-space:nowrap}.lo-tiles .lo-tile:last-child{grid-column:1/-1}
  .lo-table th:first-child,.lo-table td:first-child{position:sticky;left:0;background:var(--paper);z-index:1}.lo-table--log .lo-day td{position:static}
  .lo-id{gap:14px}.lo-av,.lo-av svg{width:88px;height:88px}.lo-live{right:-6px;bottom:2px}
  .lo-now .wrap{grid-template-columns:1fr;gap:6px}.lo-now-r{justify-self:start}
  .lo-tiles{gap:10px}.lo-tile b{font-size:24px;white-space:normal;line-height:1.15}.lo-tile b .lo-rec small{font-size:13px}
  .lo-join{padding:20px 16px}
}

/* confidence tag: the size says it, the word is what a reader scans (Jay, 2026-09-26) */
.lo-conf{display:inline-flex;align-items:center;justify-content:center;min-width:80px;height:20px;padding:0 7px;border-radius:5px;font:800 10px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;vertical-align:2px;box-sizing:border-box}   /* one width for MEDIUM, HIGH and VERY HIGH, so what follows never moves (Mary, 2026-09-26) */
.lo-table td.lo-c{text-align:left}
.lo-c-n{display:inline-block;min-width:3.2ch;margin-left:8px;text-align:right;font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink)}
.lo-c-n--pct{min-width:5.2ch;margin-left:0}
.lo-c-n--usd{min-width:7.6ch;margin-left:10px;font-weight:500;color:var(--ink-2)}
.lo-conf--medium{background:var(--chip);color:var(--ink-3)}
.lo-conf--high{background:var(--warn-soft);color:var(--warn-ink)}
.lo-conf--very-high{background:var(--gain-soft);color:var(--gain)}
.lo-now .lo-conf--medium{background:var(--dark-3);color:var(--dink-2)}
.lo-now .lo-conf--high{background:rgba(245,181,61,.18);color:var(--amber)}
.lo-now .lo-conf--very-high{background:rgba(39,212,137,.18);color:var(--up)}
/* ---- 2026-09-26 v2: the desk teaser, the martingale, what he built, the FAQ (Jay: SEO/GEO, teasers, organized log) ---- */
.lo-k{margin:0 0 6px;font:800 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--amber)}
/* the desk teaser: dark, text left, a small mock of his card right. Both columns reserve their width; nothing in the mock moves. */
.lo-desk{margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:center;background:var(--dark);color:var(--dink);border-radius:20px;padding:26px 28px;position:relative;overflow:hidden}
.lo-desk::before{content:"";position:absolute;inset:auto -10% -60% auto;width:60%;height:120%;background:radial-gradient(50% 50% at 60% 60%,rgba(245,181,61,.14),transparent 70%);pointer-events:none}
.lo-desk-t{position:relative;min-width:0}
.lo-desk h2{margin:0;font:800 28px/1.1 var(--sans);color:var(--dink)}
.lo-desk p{margin:10px 0 0;font:500 14.5px/1.55 var(--sans);color:var(--dink-2);max-width:60ch}
.lo-desk p a.link{color:var(--amber);text-decoration-color:rgba(245,181,61,.4)}
.lo-desk-l{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.lo-desk-l li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;font:500 13px/1.45 var(--sans);color:var(--dink-2)}
.lo-desk-l b{color:var(--dink);font-weight:700}
.lo-desk-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.lo-paid{margin:10px 0 0;font:500 12px/1.45 var(--sans);color:var(--dink-3)}
.lo-desk-v{position:relative;display:grid;place-items:center;min-height:120px}
.lo-desk-v svg{display:block;width:300px;height:auto;border-radius:14px;box-shadow:0 20px 50px -24px rgba(3,6,20,.9)}   /* "the read": his signature animation, assets/img/agents/lolo-analyzing.svg */
.lo-desk-card{position:relative;width:260px;height:150px;border-radius:16px;background:var(--dark-1);border:1px solid var(--dline-2);box-shadow:0 20px 50px -24px rgba(3,6,20,.9);padding:16px}
.lo-desk-av{position:absolute;left:16px;top:16px;width:48px;height:48px;border-radius:50%;box-shadow:0 0 0 2px var(--amber)}
.lo-desk-av svg{display:block;width:48px;height:48px;border-radius:50%}
.lo-desk-lines{position:absolute;left:78px;top:22px;right:70px;display:grid;gap:9px}
.lo-desk-lines i{display:block;height:9px;border-radius:5px;background:var(--dark-3)}
.lo-desk-lines i:nth-child(1){width:100%}.lo-desk-lines i:nth-child(2){width:72%}.lo-desk-lines i:nth-child(3){width:86%;background:var(--amber);opacity:.7}
.lo-desk-ring{position:absolute;right:16px;top:20px;width:44px;height:44px;border-radius:50%;border:3px solid var(--amber);border-right-color:var(--dark-3);display:grid;place-items:center;font:800 10px/1 var(--sans);color:var(--dink);font-variant-numeric:tabular-nums;animation:lo-spin 15s linear infinite}
@keyframes lo-spin{to{transform:rotate(360deg)}}
.lo-desk-ring b{display:block;transform:none;animation:lo-unspin 15s linear infinite;min-width:32px;text-align:center}
@keyframes lo-unspin{to{transform:rotate(-360deg)}}
@media (prefers-reduced-motion:reduce){.lo-desk-ring,.lo-desk-ring b{animation:none}}
.lo-desk-card::after{content:"";position:absolute;left:16px;right:16px;bottom:16px;height:36px;border-radius:10px;background:var(--dark-2);border:1px solid var(--dline)}
/* his line under the daily table, with his talking face */
.lo-mart-say{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;margin:14px 0 0;padding:12px 14px;border-radius:14px;background:var(--dark-1);color:var(--dink);font:500 14px/1.5 var(--sans);min-height:68px}
.lo-mart-av{width:44px;height:44px;border-radius:50%;box-shadow:0 0 0 2px var(--amber)}
.lo-mart-av svg{display:block;width:44px;height:44px;border-radius:50%}
.lo-mart-say b{color:var(--amber);font-weight:700;font-variant-numeric:tabular-nums}
.lo-table .r.is-flat{color:var(--ink-3)}
.lo-table td.lo-ahead{white-space:nowrap}
/* the two lower cards */
.lo-card--dark{background:var(--dark-1);border-color:var(--dline-2);color:var(--dink)}
.lo-card--dark h2{color:var(--dink)}.lo-card--dark .lede{color:var(--dink-2)}
.lo-prose p{margin:0 0 10px;font:500 14.5px/1.6 var(--sans);color:var(--ink-2)}
.lo-prose p:last-child{margin-bottom:0}
.lo-prose b{color:var(--ink);font-variant-numeric:tabular-nums}
.lo-next{margin:0;padding:0;list-style:none;counter-reset:lo;display:grid;gap:10px}
.lo-next li{position:relative;padding-left:38px;counter-increment:lo;font:500 13.5px/1.5 var(--sans);color:var(--dink-2)}
.lo-next li::before{content:counter(lo,decimal-leading-zero);position:absolute;left:0;top:1px;width:28px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--dark-3);color:var(--amber);font:800 11px/1 var(--sans);letter-spacing:.06em}
.lo-next b{display:block;color:var(--dink);font-weight:700}
.lo-next-f{margin:14px 0 0;font:500 13px/1.5 var(--sans);color:var(--dink-2)}
.lo-next-f a{color:var(--amber);font-weight:700;text-decoration:none}
/* the trade log grouped by day */
.lo-table--log td{vertical-align:middle}
.lo-table--log .lo-day td{padding:12px 10px 6px;border-bottom:1px solid var(--line-2);font:800 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-2)}
.lo-table--log .lo-day td b{color:var(--ink)}
.lo-table--log .lo-day td small{font-weight:600;letter-spacing:0;text-transform:none;margin-left:8px;color:var(--ink-3)}
.lo-table--log .is-open{color:var(--ink-3);font-style:italic}
.lo-table--log .lo-res{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:6px;font:700 11px/1 var(--sans);background:var(--chip);color:var(--ink-2);white-space:nowrap}
.lo-table--log .lo-res--won{background:var(--gain-soft);color:var(--gain)}.lo-table--log .lo-res--lost{background:var(--drop-soft);color:var(--drop)}
/* what he built */
.lo-built{margin-top:28px}
.lo-built h2{margin:0;font:800 26px/1.15 var(--sans);color:var(--ink)}
.lo-built-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.lo-built-c{display:block;padding:16px 18px;border-radius:16px;background:var(--paper);border:1px solid var(--line);color:inherit;text-decoration:none;min-height:44px;transition:border-color .15s,transform .15s}
.lo-built-c:hover{border-color:var(--brand);transform:translateY(-1px)}
.lo-built-c b{display:block;font:800 15px/1.25 var(--sans);color:var(--ink)}
.lo-built-c span{display:block;margin-top:6px;font:500 13px/1.5 var(--sans);color:var(--ink-2)}
/* the FAQ, the hub's shape */
.lo-faq{margin-top:28px}
.lo-faq h2{margin:0 0 14px;font:800 26px/1.15 var(--sans);color:var(--ink)}
.lo-faq-l{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:0}
.lo-faq-l div{padding:16px 18px;border-radius:16px;background:var(--paper);border:1px solid var(--line)}
.lo-faq-l dt{font:800 16px/1.3 var(--sans);color:var(--ink)}
.lo-faq-l dd{margin:6px 0 0;font:500 13.5px/1.55 var(--sans);color:var(--ink-2)}
@media (max-width:1099.98px){.lo-built-g{grid-template-columns:repeat(2,minmax(0,1fr))}.lo-desk{grid-template-columns:1fr}.lo-desk-v{min-height:0;justify-items:start}.lo-desk-v svg{width:340px}}
@media (max-width:899.98px){.lo-two--mart{grid-template-columns:1fr}.lo-faq-l{grid-template-columns:1fr}}
@media (max-width:720px){.lo-built-g{grid-template-columns:1fr}.lo-desk{padding:20px 16px}.lo-desk h2{font-size:24px}.lo-desk-l li{grid-template-columns:1fr;gap:2px}.lo-desk-cta .btn{flex:1 1 100%}.lo-desk-v svg{width:100%;max-width:340px}}

.lo-hero .crumbs li[aria-current="page"]{color:var(--dink)}
.lo-hero .crumbs a{color:var(--dink-2)}

/* v2: the record by rule version, under the Brier bar (Mary: every number in a reserved box, tabular nums, one row per rule) */
.lo-rules{margin-top:14px;display:grid;gap:8px}
.lo-rule{display:grid;grid-template-columns:120px 1fr;gap:8px 12px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-variant-numeric:tabular-nums}
.lo-rule>b{font:800 14px/1.2 var(--sans);color:var(--ink)}.lo-rule>b small{display:block;font:500 12px/1.3 var(--sans);color:var(--ink-3);margin-top:2px}
.lo-rule-n{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(100px,1.4fr);gap:6px 8px}
.lo-rule .lo-rec{display:block;font:800 16px/1.2 var(--sans);color:var(--ink);white-space:nowrap}.lo-rule .lo-rec small{display:block;font:600 11px/1.2 var(--sans);color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.lo-rule .is-gain{color:var(--up)}.lo-rule .is-loss{color:var(--dn)}
@media (max-width:1240px){.lo-rule{grid-template-columns:1fr}}
@media (max-width:640px){.lo-rule-n{grid-template-columns:repeat(3,minmax(0,1fr))}}
.lo-note{margin:14px 0 0;font:500 14px/1.55 var(--sans);color:var(--ink-2)}.lo-note b{color:var(--ink)}

/* ---- 2026-09-27: a closed day on its own page (tools/lolo/build_lolo_days.py) and the hub's list of days.
   Jay: "september 26 trade log should be on a separate page ... note when last updates". Tokens only; tables reuse
   .lo-table--log so a tag, a count and a price sit where they sit on the profile. ---- */
.ld-hero{padding-bottom:26px}
.ld-h1{margin:6px 0 0;max-width:30ch;font:800 clamp(32px,4.6vw,52px)/1 var(--display,'Barlow Condensed',var(--sans));letter-spacing:.01em;color:var(--dink)}
.ld-answer{max-width:72ch}
.ld-answer b{color:var(--dink)}
.ld-stamp{margin:14px 0 0;max-width:72ch;font:600 12.5px/1.5 var(--sans);color:var(--dink-3)}
.ld-stamp time{color:var(--dink-2);font-variant-numeric:tabular-nums}
.ld-sec{margin-top:18px}
.ld-why{margin:4px 0 0;padding:0;list-style:none;counter-reset:ld;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}
.ld-why > li{counter-increment:ld;position:relative;padding:14px 16px 14px 48px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.ld-why > li::before{content:counter(ld);position:absolute;left:14px;top:14px;width:24px;height:24px;border-radius:50%;background:var(--dark);color:var(--dink);font:800 12px/24px var(--sans);text-align:center}
.ld-why h3{margin:0;font:800 15px/1.3 var(--sans);color:var(--ink)}
.ld-why p{margin:6px 0 0;font:500 13.5px/1.55 var(--sans);color:var(--ink-2)}
.ld-why b{color:var(--ink);font-variant-numeric:tabular-nums}
.ld-loss{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:4px;font:500 12.5px/1.45 var(--sans);color:var(--ink-2);font-variant-numeric:tabular-nums}
.ld-loss .is-loss{color:var(--drop);font-weight:700}
.ld-note{margin:14px 0 0;max-width:96ch;font:500 13px/1.55 var(--sans);color:var(--ink-3)}
.ld-list{margin:0;padding:0;list-style:none;display:grid;gap:8px;font:500 13.5px/1.5 var(--sans);color:var(--ink-2)}
.ld-list b{color:var(--ink)}
.ld-fine{margin:12px 0 0;font:500 12.5px/1.55 var(--sans);color:var(--ink-3)}
.ld-mart .ld-him td{border-top:2px solid var(--line-2)}
.lo-table tfoot td{padding:12px 10px;border-top:2px solid var(--line-2);font:600 13px/1.3 var(--sans);color:var(--ink-2)}
.lo-table tfoot .is-loss{color:var(--drop)}.lo-table tfoot .is-gain{color:var(--gain)}
.ld-words{margin:18px 0 0}
.ld-words blockquote{margin:0;padding:0;border:0}
.ld-words blockquote p{margin:10px 0 0;max-width:76ch;font:500 15px/1.6 var(--sans);color:var(--dink)}
.ld-words figcaption{margin-top:12px;font:600 12px/1.4 var(--sans);color:var(--dink-3)}
.ld-links{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}
.ld-links li{display:grid;gap:2px;min-height:44px}
.ld-links span{font:500 12.5px/1.45 var(--sans);color:var(--ink-3)}
.ld-ref{margin:16px 0 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font:500 12px/1.4 var(--sans);color:var(--ink-3)}
/* the hub's list of closed days */
.ld-days-l{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.ld-days-l li{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.ld-day{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--ink);text-decoration:none}
.ld-day b{font:800 15px/1.2 var(--sans);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px}
.ld-day:hover b{text-decoration-color:currentColor}
.ld-day span{font:600 12px/1.2 var(--sans);color:var(--ink-3)}
.ld-day-n{font:600 13px/1.3 var(--sans);color:var(--ink-2);font-variant-numeric:tabular-nums}
.ld-day-n .is-loss{color:var(--drop)}.ld-day-n .is-gain{color:var(--gain)}
.lo-table--log .lo-dayref td{padding:10px;font:500 13px/1.4 var(--sans);color:var(--ink-2);border-bottom:1px solid var(--line)}
.lo-two > *{min-width:0}   /* a wide table scrolls inside its card instead of widening the grid on a phone */
.lo-two .ld-sec{margin-top:0}
@media (max-width:900px){.ld-why,.ld-links{grid-template-columns:1fr}}
.ld-n{white-space:nowrap}
.ld-mart td small{display:block;margin-top:2px;font:600 11.5px/1.3 var(--sans);color:var(--ink-3)}
.lo-table tfoot .is-loss b,.lo-table tfoot .is-gain b{color:inherit}
.ld-log td:last-child{white-space:nowrap}
.ld-log th,.ld-log td{padding-left:8px;padding-right:8px}
.ld-mart .is-loss b,.ld-mart .is-gain b{color:inherit}
/* ---- page v3, wave 1 and 2 (2026-09-27): the live card inside the page, section tabs, patch notes ----
   Jay: "the agent lolo needs to show up in his page ... make [the Right now strip] look nicer and more structure ...
   showcase significant upgrades to him ... like patch notes". Mary's order: hero, live, tabs, record, patch notes,
   the ledger, day pages, FAQ. */
.lo-tile b{min-height:calc(2 * 1.12em)}                                  /* every tile reserves two value lines, so a busy day and a quiet one are the same height */
.lo-tile small{min-height:calc(2 * 1.35em)}   /* two caption lines reserved; a longer caption wraps, never clips (the row's tiles stretch together) */
.lo-sp{margin-top:18px}
.lo-mart{margin-top:18px}
/* live: the card, as a section */
/* section tabs: sticky under the header, one row, scrolls sideways on a phone with an edge fade */
.lo-tabs{position:sticky;top:var(--hd-h);z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}
.lo-tabs ul{display:flex;gap:6px;margin:0;padding:8px 0;list-style:none;overflow-x:auto;scrollbar-width:none}
.lo-tabs ul::-webkit-scrollbar{display:none}
.lo-tabs a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid transparent;font:700 13px/1 var(--sans);color:var(--ink-2);text-decoration:none;white-space:nowrap}
.lo-tabs a:hover{background:var(--paper);border-color:var(--line)}
.lo-tabs a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media (max-width:720px){.lo-tabs .wrap{position:relative}.lo-tabs .wrap::after{content:"";position:absolute;right:0;top:0;bottom:0;width:28px;background:linear-gradient(90deg,transparent,var(--bg));pointer-events:none}}
[id="record"],[id="patch-notes"],[id="daily"],[id="trade-log"],[id="daily-logs"],[id="faq"]{scroll-margin-top:calc(var(--hd-h) + 76px)}
/* ---- patch notes (tools/lolo/build_lolo_patches.py writes the markup). A dark panel like his hero: the version
   badge, the name, the date, the short version, his notes, then the changes as Before / After. Tags carry a word and
   a colour, never the colour alone. ---- */
.lp{margin-top:18px;background:var(--dark);color:var(--dink);border:1px solid var(--dline-2);border-radius:20px;padding:24px 24px 20px;position:relative;overflow:hidden}
.lp::before{content:"";position:absolute;inset:-30% -10% auto auto;width:70%;height:90%;background:radial-gradient(50% 50% at 70% 30%,rgba(245,181,61,.13),transparent 70%);pointer-events:none}
.lp > *{position:relative}
.lp .lo-k{color:var(--amber)}
.lp-top h2{margin:4px 0 6px;font:800 clamp(24px,3vw,32px)/1.1 var(--sans);color:var(--dink)}
.lp-lede{margin:0;max-width:70ch;font:500 14px/1.5 var(--sans);color:var(--dink-2)}
.lp-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;margin-top:18px;align-items:start}
.lp-cur,.lp-card{background:var(--dark-1);border:1px solid var(--dline);border-radius:16px;padding:18px}
.lp-cur{border-color:rgba(245,181,61,.35);box-shadow:0 0 0 1px rgba(245,181,61,.08),0 30px 60px -40px rgba(245,181,61,.35)}
.lp-side{display:grid;gap:14px;align-content:start}
.lp-hd{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center}
.lp-v{grid-row:1/3;display:grid;place-items:center;align-content:center;width:74px;height:74px;margin:0;border-radius:16px;background:linear-gradient(160deg,var(--amber),#c9861a);color:var(--dark);font:800 26px/1 var(--cond);letter-spacing:.02em;font-variant-numeric:tabular-nums}
.lp-v span{display:block;font:800 9.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-bottom:3px}
.lp-name{margin:0;font:800 clamp(24px,3vw,34px)/1 var(--cond);letter-spacing:.02em;text-transform:uppercase;color:var(--dink)}
.lp-when{margin:6px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font:600 12.5px/1.3 var(--sans);color:var(--dink-2)}
.lp-st{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font:800 9.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.lp-st--live{background:rgba(39,212,137,.16);color:var(--up)}
.lp-st--live::before{content:"";width:6px;height:6px;margin-right:5px;border-radius:50%;background:var(--up)}
.lp-st--testing{background:rgba(245,181,61,.16);color:var(--amber)}
.lp-st--retired{background:var(--dark-3);color:var(--dink-3)}
.lp-tldr{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.lp-tldr li{position:relative;padding-left:22px;font:600 14.5px/1.45 var(--sans);color:var(--dink)}
.lp-tldr li::before{content:"";position:absolute;left:4px;top:.55em;width:8px;height:8px;border-radius:2px;background:var(--amber);transform:rotate(45deg)}
.lp-why{margin:16px 0 0;padding:14px 16px;border-left:3px solid var(--amber);border-radius:0 12px 12px 0;background:var(--dark-2)}
.lp-why p{margin:0;font:500 14px/1.6 var(--sans);color:var(--dink-2)}
.lp-why .lp-why-k{margin-bottom:6px;font:800 10px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--amber)}
.lp-cause{margin:12px 0 0;font:600 13px/1.4 var(--sans);color:var(--dink-2)}
.lp .link{color:var(--dlink)}
.lp-ch{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.lp-c{padding:12px 14px;border-radius:12px;background:var(--dark-2);border:1px solid var(--dline)}
.lp-c-h{margin:0;display:flex;align-items:center;gap:10px;font:800 15px/1.2 var(--sans);color:var(--dink)}
.lp-tag{display:inline-flex;align-items:center;justify-content:center;flex:none;width:62px;height:22px;border-radius:6px;font:800 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.lp-tag--fix{background:rgba(245,181,61,.18);color:var(--amber)}
.lp-tag--safer{background:rgba(143,180,255,.16);color:var(--dlink)}
.lp-tag--new{background:rgba(39,212,137,.16);color:var(--up)}
.lp-tag--bolder{background:rgba(255,107,120,.16);color:var(--dn)}
.lp-c dl{margin:10px 0 0;display:grid;gap:6px}
.lp-ba{display:grid;grid-template-columns:5.5em minmax(0,1fr);gap:10px;align-items:baseline}
.lp-ba dt{font:800 10px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--dink-3)}
.lp-ba dd{margin:0;font:500 13.5px/1.5 var(--sans);color:var(--dink-2)}
.lp-ba--a dt{color:var(--up)}
.lp-ba--a dd{color:var(--dink)}
.lp-since{margin-top:14px;padding:14px 16px;border-radius:12px;background:rgba(39,212,137,.07);border:1px solid rgba(39,212,137,.25)}
.lp-since-k{margin:0 0 6px;font:800 10px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--up)}
.lp-since-t{margin:0;min-height:3em;font:500 13.5px/1.5 var(--sans);color:var(--dink-2);font-variant-numeric:tabular-nums}
.lp-since-t b{color:var(--dink);font-weight:800}.lp-since-t b.is-gain{color:var(--up)}.lp-since-t b.is-loss{color:var(--dn)}
.lp-src{margin:12px 0 0;font:500 11.5px/1.4 var(--sans);color:var(--dink-3)}
.lp-card .lp-v{width:56px;height:56px;font-size:20px;border-radius:13px}
.lp-card .lp-v span{font-size:8px}
.lp-card .lp-name{font-size:22px}
.lp-card--test{border-style:dashed;border-color:rgba(245,181,61,.4)}
.lp-card--test .lp-tldr li{font-size:13.5px}
.lp-h3{margin:0 0 10px;font:800 15px/1.2 var(--sans);color:var(--dink)}
.lp-known{margin:0;padding:0 0 0 18px;display:grid;gap:8px;font:500 13px/1.5 var(--sans);color:var(--dink-2)}
.lp-next{margin:0;padding:0;list-style:none;counter-reset:lp;display:grid;gap:10px}
.lp-next li{position:relative;padding-left:38px;counter-increment:lp;font:500 13px/1.5 var(--sans);color:var(--dink-2)}
.lp-next li::before{content:counter(lp,decimal-leading-zero);position:absolute;left:0;top:1px;width:28px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--dark-3);color:var(--amber);font:800 11px/1 var(--sans)}
.lp-next b{display:block;color:var(--dink);font-weight:700}
.lp-next-f{margin:12px 0 0;font:500 13px/1.5 var(--sans);color:var(--dink-2)}
.lp-next-f a{color:var(--amber);font-weight:700;text-decoration:none}
.lp details summary{cursor:pointer;list-style:none}
.lp details summary::-webkit-details-marker{display:none}
.lp-more{margin-top:12px}
.lp-more summary{display:inline-flex;align-items:center;min-height:44px;font:700 13px/1 var(--sans);color:var(--amber)}
.lp-more summary::after,.lp-old summary::after{content:"+";margin-left:8px;font-weight:800}
.lp-more[open] summary::after,.lp-old[open] summary::after{content:"\2212"}
.lp-hist{margin-top:18px}
.lp-old{border:1px solid var(--dline);border-radius:14px;background:var(--dark-1)}
.lp-old summary{display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 16px;font:600 13px/1.2 var(--sans);color:var(--dink-2)}
.lp-old summary .lp-v{width:auto;height:30px;padding:0 10px;border-radius:8px;display:inline-flex;gap:5px;font-size:15px}
.lp-old summary .lp-v span{display:inline;margin:0;font-size:9px}
.lp-old summary b{font:800 17px/1 var(--cond);letter-spacing:.03em;text-transform:uppercase;color:var(--dink)}
.lp-old summary .lp-st{margin-left:auto}
.lp-old summary::after{color:var(--amber)}
.lp-old-b{padding:0 16px 16px}
.lp-known-1{margin:12px 0 0;font:500 13.5px/1.5 var(--sans);color:var(--dink-2)}
.lp-known-1 b{color:var(--dink)}
@media (max-width:1099.98px){.lp-grid{grid-template-columns:1fr}}
@media (max-width:720px){.lp{padding:18px 14px 14px;border-radius:16px}.lp-cur,.lp-card{padding:14px}.lp-v{width:60px;height:60px;font-size:21px}.lp-ba{grid-template-columns:1fr;gap:2px}.lp-old summary{flex-wrap:wrap;gap:6px 10px;padding:10px 14px}.lp-old summary .lp-st{margin-left:0}}
.lo-upd{margin:14px 0 0;font:600 12px/1.4 var(--sans);color:var(--dink-3)}
.lo-upd a{color:var(--amber);text-decoration:none}.lo-upd a:hover{text-decoration:underline}
/* ---- calibration (2026-09-27). One chart and one table, drawn from the view lolo_calibration. Versions carry a
   colour and a shape (1.1 circles in the brand ink, 1.0 squares in warn), and a label, so identity is never colour
   alone; bands under 10 calls are hollow. The svg has a fixed viewBox, so nothing moves when the numbers change. ---- */
.lo-cal{margin-top:18px}
.lo-cal-hd{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:8px 24px;align-items:end}
.lo-cal-hd h2{margin:0}
.lo-cal-hd .lede{margin:0}
.lo-k--ink{color:var(--brand-ink)}
.lo-cal-say{margin:14px 0 0;display:grid;gap:6px;min-height:2.9em;font:500 13.5px/1.45 var(--sans);color:var(--ink-2)}
.lo-cal-say span{display:block}
.lo-cal-say b{color:var(--ink);font-weight:800}
.lo-cal-g{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;margin-top:14px;align-items:start}
.lo-cal-fig{margin:0}
.lo-cal-fig svg{display:block;width:100%;height:auto;aspect-ratio:640/320}
.lo-cal-fig figcaption{margin-top:6px}
.lo-cal-grid{stroke:var(--line);stroke-width:1}
.lo-cal-ax{font:600 11px var(--sans);fill:var(--ink-3)}
.lo-cal-diag{stroke:var(--ink-3);stroke-width:1.5;stroke-dasharray:5 4}
.lo-cal-line{fill:none;stroke-width:2}
.lo-cal-line.is-v2{stroke:var(--brand-ink)}.lo-cal-line.is-v1{stroke:var(--warn)}
.lo-cal-pt{stroke:var(--paper);stroke-width:2}
.lo-cal-pt.is-v2{fill:var(--brand-ink)}.lo-cal-pt.is-v1{fill:var(--warn)}
.lo-cal-pt.is-few{fill:var(--paper);stroke-width:2}
.lo-cal-pt.is-v2.is-few{stroke:var(--brand-ink)}.lo-cal-pt.is-v1.is-few{stroke:var(--warn)}
.lo-cal-lbl{font:800 12px var(--sans);fill:var(--ink)}
.lo-cal-note{margin:8px 0 0}
.lo-cal-t th,.lo-cal-t td{white-space:nowrap}
.lo-cal-t tr.is-few td,.lo-cal-t tr.is-few b{color:var(--ink-3);font-weight:500}
.lo-cal-sw{display:inline-block;width:10px;height:10px;margin-right:7px;border-radius:50%;vertical-align:0}
.lo-cal-sw.is-v2{background:var(--brand-ink)}.lo-cal-sw.is-v1{background:var(--warn);border-radius:2px}
/* version 1.2 (rule v3, 2026-09-27): its own colour, a dashed line and a round swatch, so it never reads by colour alone */
.lo-cal-line.is-v3{stroke:var(--accent);stroke-dasharray:5 3}.lo-cal-pt.is-v3{fill:var(--accent)}.lo-cal-pt.is-v3.is-few{stroke:var(--accent)}.lo-cal-sw.is-v3{background:var(--accent);border-radius:50%}
@media (max-width:999.98px){.lo-cal-hd,.lo-cal-g{grid-template-columns:1fr}}
/* phone: the svg scales down with its box, so its text is set larger in viewBox units to read at about 11px */
@media (max-width:720px){.lo-cal-ax{font-size:20px}.lo-cal-lbl{font-size:21px}.lo-cal-line{stroke-width:3}.lo-cal-t .lo-table{font-size:12px}.lo-cal-t .lo-table th,.lo-cal-t .lo-table td{padding-left:5px;padding-right:5px}.lo-cal-t .lo-table th{letter-spacing:.02em}}

/* ---- profile v4 (2026-09-27, Jay: "make agent lolo's profile to match our other writers / agents with a side rail"):
   his page runs on the writer template (assets/pages/writers.css: wr-hero, wr-tabbar, wr-panels, wr-rail). What
   follows only fits his own pieces into it: his avatar in the hero, his cards inside a panel, his numbers in the rail,
   and the short patch notes. Plan: claude/plan-2026-09-27-lolo-profile-v4.md. ---- */
.lo-wr-hero .lo-av{width:132px;height:132px}
.lo-wr-hero .lo-av svg{width:132px;height:132px}
.lo-panel > .lo-two:first-of-type,.lo-panel > .lo-eq:first-child,.lo-panel > .lo-card:first-child{margin-top:0}
.lo-panel .lo-two{grid-template-columns:1fr}
.lo-panel .lo-desk,.lo-panel .lo-built,.lo-panel .lo-faq,.lo-panel .lo-join,.lo-panel .lo-mart,.lo-panel #daily,.lo-panel .ld-days{margin-top:18px}
.lo-panel .wr-bio{margin-bottom:6px}
.lo-wr-foot{margin-top:28px}
/* the rail: his numbers, the same card every writer has */
.lo-sb .wr-sb-grid dd b{display:block;font:inherit;color:inherit;white-space:nowrap}
.lo-sb .wr-sb-grid dd b.is-gain{color:var(--gain)}
.lo-sb .wr-sb-grid dd b.is-loss{color:var(--drop)}
.lo-sb .lo-sb-wide{grid-column:1 / -1}
.lo-sb .lo-sb-wide dd{font:800 20px/1.1 var(--sans)}
.lo-sb .lo-rec{display:inline-block;margin-right:10px;white-space:nowrap}
.lo-sb .lo-rec small{display:inline;margin-left:4px;font:600 12.5px/1 var(--sans);color:var(--ink-3)}
.lo-sb .wr-sb-grid dd small{display:block;margin-top:6px;font:500 12px/1.35 var(--sans);color:var(--ink-3);letter-spacing:0;text-transform:none}
.lo-sb-note{font-variant-numeric:tabular-nums}
.lo-sb-ver{margin:12px 0 0;font:600 12.5px/1.4 var(--sans);color:var(--ink-3)}
.lo-sb-ver b{color:var(--ink)}
.lo-sb-desk{margin-top:12px}
/* patch notes, short: one card per version, newest first */
.lp--short .lp-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
.lp--short .lp-row article{background:var(--dark-1);border:1px solid var(--dline);border-radius:16px;padding:16px 18px}
.lp--short .lp-row--live article{border-color:rgba(245,181,61,.35);box-shadow:0 0 0 1px rgba(245,181,61,.08)}
.lp--short .lp-row--retired .lp-v{background:var(--dark-2);color:var(--dink-2)}
.lp--short .lp-row--retired .lp-name{color:var(--dink-2)}
.lp-why1{margin:12px 0 0;font:500 14px/1.5 var(--sans);color:var(--dink-2);font-style:italic}
.lp--short .lp-tldr{margin-top:10px;gap:6px}
.lp--short .lp-tldr li{font-weight:500;color:var(--dink-2)}
.lp--short .lp-name{font-size:clamp(22px,2.4vw,30px)}
.lp--short .lp-since-t{min-height:0;margin-top:10px}
.lp-next-s{margin-top:14px;padding:14px 18px;border:1px dashed var(--dline-2);border-radius:16px}
.lp-next-s ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.lp-next-s li{padding:6px 12px;border-radius:999px;background:var(--dark-1);border:1px solid var(--dline);font:600 13px/1.2 var(--sans);color:var(--dink)}
@media (max-width:720px){
  .lo-wr-hero .lo-av,.lo-wr-hero .lo-av svg{width:96px;height:96px}
  .lo-wr-hero .lo-live{bottom:2px;right:-10px}
}

/* ---- profile v5 (2026-09-27): the P&L calendar, the trade log in the Last 10 style, Expand, the desk, past patches ---- */
/* the calendar: a brokerage-statement month. Light card, a hero month P&L, a summary strip, a Sunday-first grid with a
   week total; each traded day is tinted by its size (--t, set by lolo.js) and is a button that opens its trades */
.lo-cal-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px 22px;box-shadow:0 1px 0 rgba(10,18,38,.02)}
.lo-cal-card+.lo-eq,.lo-cal-card+.lo-tlog{margin-top:18px}
.lc-top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.lc-title .lo-k{margin-bottom:8px}
.lc-nav{display:flex;align-items:center;gap:6px}
.lc-month{margin:0;min-width:9.5em;text-align:center;font:800 22px/1.1 var(--sans);color:var(--ink);letter-spacing:-.01em}
.lc-step{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--line-2);background:var(--paper);color:var(--ink-2);cursor:pointer}
.lc-step svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.lc-step:hover:not(:disabled){background:var(--chip);color:var(--ink)}
.lc-step:disabled{opacity:.35;cursor:default}
.lc-step:focus-visible,.lc-d:focus-visible,.lt-row:focus-visible,.lo-tlog-x:focus-visible{outline:2px solid var(--brand-ink);outline-offset:2px}
.lc-hero{text-align:right}
.lc-hero span{display:block;font:700 10.5px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.lc-hero b{display:block;margin-top:6px;font:800 38px/1 var(--cond);letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink)}
.lc-hero small{display:block;margin-top:4px;font:500 12px/1.3 var(--sans);color:var(--ink-3)}
.lo-cal-card .is-gain{color:var(--gain)}.lo-cal-card .is-loss{color:var(--drop)}
.lc-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:16px 0 0;border:1px solid var(--line);border-radius:14px;background:var(--line);overflow:hidden}
.lc-sum>div{padding:11px 12px;background:var(--surface-2);min-width:0}
.lc-sum dt{font:700 10px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc-sum dd{margin:5px 0 0;font:800 17px/1.1 var(--sans);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.lc-sum dd small{display:block;margin-top:3px;font:600 11px/1 var(--sans);color:var(--ink-3)}
.lc-grid{margin-top:14px;display:grid;gap:6px}
.lc-wk{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) 60px;gap:6px}
.lc-hd span{padding:0 4px;font:700 10.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.lc-hd .lc-wt{text-align:right}
.lc-d{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;min-height:74px;padding:8px 7px;border-radius:12px;border:1px solid var(--line);background:var(--paper);text-align:left;font:inherit;color:var(--ink);min-width:0}
.lc-d.is-out{border:0;background:transparent}
.lc-d.is-empty{background:var(--surface-2);border-color:transparent}
.lc-d.is-future .lc-n{opacity:.5}
button.lc-d{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}
button.lc-d:hover{transform:translateY(-1px);box-shadow:0 8px 20px -12px rgba(10,18,38,.35)}
.lc-d.is-gain{background:color-mix(in srgb,var(--gain) var(--t,20%),var(--paper));border-color:color-mix(in srgb,var(--gain) 35%,var(--paper))}
.lc-d.is-loss{background:color-mix(in srgb,var(--drop) var(--t,20%),var(--paper));border-color:color-mix(in srgb,var(--drop) 35%,var(--paper))}
.lc-d.is-flat{background:var(--chip)}
.lc-n{font:700 12px/1 var(--sans);color:var(--ink-3)}
.lc-d.is-gain .lc-n,.lc-d.is-loss .lc-n{color:var(--ink-2)}
.lc-v{display:block;white-space:nowrap;font:800 16px/1.05 var(--cond);letter-spacing:.01em;font-variant-numeric:tabular-nums;color:var(--ink);max-width:100%;overflow:hidden;text-overflow:ellipsis}
.lc-v-s{display:none}
.lc-d.is-gain .lc-v,.lc-d.is-loss .lc-v{color:var(--ink)}
.lc-t{font:600 10.5px/1.1 var(--sans);color:var(--ink-2)}
.lc-h{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.lc-roll{padding:2px 5px;border-radius:999px;background:var(--ink);color:var(--paper);font:800 8.5px/1.2 var(--sans);white-space:nowrap;font-style:normal;letter-spacing:.06em;text-transform:uppercase}
.lc-d.is-today{box-shadow:inset 0 0 0 2px var(--brand-ink)}
.lc-d.is-sel{box-shadow:0 0 0 3px var(--brand-ink);z-index:1}
.lc-d.is-today.is-sel{box-shadow:inset 0 0 0 2px var(--brand-ink),0 0 0 3px var(--brand-ink)}
.lc-wt{text-align:right}
.lc-wt-v{align-self:center;font:800 14px/1 var(--cond);font-variant-numeric:tabular-nums;padding-right:4px}
.lc-wt-v.is-flat{color:var(--ink-3)}
.lc-f{margin:12px 0 0;font:500 12px/1.5 var(--sans);color:var(--ink-3)}
/* dark theme: the tints mix into the dark paper the same way; the roll badge flips */
:root[data-theme="dark"] .lc-roll{background:var(--amber);color:#1a1200}
@media (max-width:720px){
  .lo-cal-card{padding:16px 12px;border-radius:16px}
  .lc-top{align-items:stretch;flex-direction:column}
  .lc-nav{justify-content:space-between}.lc-month{font-size:19px;min-width:0}
  .lc-hero{text-align:left}.lc-hero b{font-size:32px}
  .lc-sum{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lc-wk{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
  .lc-wt{display:none}
  .lc-d{min-height:54px;padding:5px 3px;border-radius:8px;align-items:center}
  .lc-n{font-size:10.5px}
  .lc-v{font-size:12.5px;letter-spacing:0}.lc-v-l{display:none}.lc-v-s{display:inline}
  .lc-t{display:none}
  .lc-h{justify-content:center;gap:2px}.lc-roll{padding:1px 3px;font-size:7px;letter-spacing:.02em}
  .lc-hd span{padding:0;text-align:center;font-size:9.5px;letter-spacing:.02em}
}

/* the trade log: the floating card's "His last 10 windows", grown up. A dark card; one row per trade with the call, the
   result and the net side by side, then entry to exit, size and plan; tap a row for the detail */
.lo-tlog{background:var(--dark-1);border:1px solid var(--dline-2);border-radius:18px;color:var(--dink);overflow:hidden;scroll-margin-top:calc(var(--hd-h, 64px) + 70px)}
.lo-tlog-h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid var(--dline)}
.lo-tlog-k{margin:0 0 6px;font:800 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--amber)}
.lo-tlog-h h2{margin:0;font:800 22px/1.15 var(--sans);color:var(--dink)}
.lo-tlog-s{margin:6px 0 0;font:600 13px/1.4 var(--sans);color:var(--dink-2);font-variant-numeric:tabular-nums}
.lo-tlog-s b{font-weight:800}
.lo-tlog .is-gain{color:var(--up)}.lo-tlog .is-loss{color:var(--dn)}.lo-tlog .is-flat{color:var(--dink-3)}
.lo-tlog-x{flex:none;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:12px;border:1px solid var(--dline-2);background:transparent;color:var(--dink);font:700 13px/1 var(--sans);cursor:pointer}
.lo-tlog-x svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.lo-tlog-x:hover{background:var(--dark-2)}
.lo-tlog-x[aria-pressed="true"]{border-color:var(--amber);color:var(--amber)}
.lo-tlog-cols,.lt-row{display:grid;grid-template-columns:112px 96px 70px 128px minmax(84px,1fr) 80px 16px;align-items:center;gap:10px}
.lo-tlog-cols span:nth-child(7),.lt-plan{display:none}   /* the plan is in the detail; Expand gives it a column */
.lo-tlog-cols{padding:10px 20px 8px;font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--dink-3);border-bottom:1px solid var(--dline)}
.lo-tlog-cols .r,.lt-sz{text-align:right;justify-self:end}
.lo-tlog-l{margin:0;padding:0 8px;list-style:none}
.lt{border-bottom:1px solid var(--dline)}
.lt:last-child{border-bottom:0}
.lt-row{width:100%;min-height:52px;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:var(--dink-2);font:600 13.5px/1.1 var(--sans);text-align:left;cursor:pointer;font-variant-numeric:tabular-nums}
.lt-row:hover,.lt.is-open .lt-row{background:var(--dark-2)}
.lt-w{color:var(--dink);font-weight:700;white-space:nowrap}
.lt-call{display:flex;align-items:center;gap:8px}
.lt-side{display:inline-flex;align-items:center;justify-content:center;min-width:3.9em;height:22px;padding:0 6px;border-radius:6px;font:800 10.5px/1 var(--sans);font-style:normal;letter-spacing:.06em;text-transform:uppercase}
.lt-side--up{background:rgba(39,212,137,.16);color:var(--up)}.lt-side--down{background:rgba(255,107,120,.16);color:var(--dn)}
.lt-p{font-style:normal;font-weight:800;color:var(--dink);padding:3px 5px;border-radius:5px;background:var(--dark-3)}
.lt-p--high{background:rgba(245,181,61,.16);color:var(--amber)}
.lt-p--very-high{background:rgba(245,181,61,.26);color:var(--amber)}
.lt-res{font-weight:800}
.lt-res--correct{color:var(--up)}.lt-res--missed{color:var(--dn)}.lt-res--open{color:var(--amber)}
.lt-net{font:800 15px/1 var(--sans);white-space:nowrap}
.lt-net small{display:inline-block;margin-left:6px;padding:3px 5px;border-radius:5px;font:800 10.5px/1 var(--sans);vertical-align:1px}
.lt-net.is-gain small{background:rgba(39,212,137,.16)}.lt-net.is-loss small{background:rgba(255,107,120,.14)}
.lt-ex,.lt-sz{white-space:nowrap}
.lt-ex small,.lt-sz small{display:block;margin-top:3px;font:600 10.5px/1 var(--sans);color:var(--dink-3)}
.lt-plan{color:var(--dink-2);white-space:nowrap}
.lt-chev{width:8px;height:8px;border-right:2px solid var(--dink-3);border-bottom:2px solid var(--dink-3);transform:rotate(45deg);justify-self:center;transition:transform .15s ease}
.lt.is-open .lt-chev{transform:rotate(225deg)}
.lt-more{padding:4px 12px 14px}
.lt-more dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;padding:12px 14px;border-radius:12px;background:var(--dark-2);border:1px solid var(--dline)}
.lt-more dt{font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--dink-3)}
.lt-more dd{margin:5px 0 0;font:500 13px/1.45 var(--sans);color:var(--dink)}
.lt--off .lt-off{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border-radius:10px;background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(255,255,255,.025) 8px 16px);border:1px dashed var(--dline)}
.lt-off-tag{font:700 10.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:6px;background:var(--dark-2);color:var(--dink-2);border:1px solid var(--dline)}
.lt-off-why{font:500 13px/1.45 var(--sans);color:var(--dink-2)}
.lo-tlog-empty{padding:22px 12px;font:500 13.5px/1.5 var(--sans);color:var(--dink-2);list-style:none}
.lo-tlog-f{margin:0;padding:12px 20px 16px;border-top:1px solid var(--dline);font:500 12px/1.5 var(--sans);color:var(--dink-3)}
.lo-tlog-f a.link{color:var(--amber);font-weight:700;text-decoration-color:rgba(245,181,61,.4)}
@media (max-width:720px){
  .lo-tlog{border-radius:16px}
  .lo-tlog-h{padding:16px 14px 12px}.lo-tlog-h h2{font-size:19px}
  .lo-tlog-x span{display:none}.lo-tlog-x{padding:0 11px}
  /* 2026-10-09 (Jay: "we gotta space the longshot abd extreme better so tbey dont block"): the Longshot badge is 69px and
     the result column was 60px, so it ran 9px into the net column and sat on top of the percent chip on every badged row.
     The badge now has its own line under the result word, the column is 72px and the badge 65px: no overflow, row height
     unchanged at 52px. */
  .lo-tlog-cols,.lt-row{grid-template-columns:minmax(0,1fr) 78px 72px 82px 14px;gap:6px}
  .lt-res{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}
  .lt-xt{margin-left:0;padding:0 4px;letter-spacing:.04em}
  .lo-tlog-cols{padding:9px 12px 7px}
  .lo-tlog-cols span:nth-child(n+5):not(:last-child),.lt-ex,.lt-sz,.lt-plan{display:none}
  .lo-tlog-l{padding:0 4px}
  .lt-row{padding:8px;font-size:12.5px}
  .lt-w{white-space:normal;font-size:12px}
  .lt-call{gap:4px}.lt-side{min-width:0;padding:0 5px;font-size:9.5px}.lt-p{padding:2px 4px;font-size:11px}
  .lt-net{font-size:13.5px}.lt-net small{display:block;margin:3px 0 0;width:max-content}
  .lt-more dl{grid-template-columns:1fr 1fr}
  .lo-tlog-f{padding:12px 14px 14px}
}
/* Expand: the log takes the width; the scoreboard folds to a slim column of the two numbers that matter */
@media (min-width:980.02px){
  .lo-wr-body.lo-wide .wr-body-grid{grid-template-columns:minmax(0,1fr) 176px;gap:32px 24px}
  .lo-wide .lo-sb .wr-card-h .tag,.lo-wide .lo-sb .lo-sb-wide,.lo-wide .lo-sb .lo-sb-note,.lo-wide .lo-sb .lo-sb-ver{display:none}
  .lo-wide .lo-sb .wr-sb-grid{grid-template-columns:1fr}
  .lo-wide .lo-sb .wr-sb-grid>div:nth-child(2){border-top:1px solid var(--line);padding-top:10px}
  .lo-wide .lo-sb .wr-sb-big dd{font-size:28px}
  .lo-wide .lo-sb .lo-sb-desk{font-size:12px;padding-left:8px;padding-right:8px}
  .lo-wide .lo-tlog-cols,.lo-wide .lt-row{grid-template-columns:minmax(160px,1.1fr) 110px 108px minmax(160px,1fr) minmax(128px,.9fr) 108px 100px 16px;gap:14px}
  .lo-wide .lc-sum{grid-template-columns:repeat(8,minmax(0,1fr))}
  .lo-wide .lo-tlog-cols span:nth-child(7),.lo-wide .lt-plan{display:block}
}
@media (max-width:980px){.lo-tlog-x{display:none}}

/* Profile: the desk, re-laid. The words and the animation side by side, the three facts as cards, the buttons together */
.lo-desk.lo-desk--v2{display:block;padding:28px}
.lo-desk-top{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:28px;align-items:center}
.lo-desk--v2 h2{font-size:30px;letter-spacing:-.01em;max-width:18ch}
.lo-desk--v2 .lo-desk-t p{max-width:56ch}
.lo-desk--v2 .lo-desk-v{min-height:0}
.lo-desk--v2 .lo-desk-v svg{width:100%;max-width:300px}
.lo-desk--v2 .lo-desk-l{position:relative;margin:22px 0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lo-desk--v2 .lo-desk-l li{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:14px;background:var(--dark-1);border:1px solid var(--dline);grid-template-columns:none}
.lo-desk-n{font:800 11px/1 var(--sans);letter-spacing:.1em;color:var(--amber)}
.lo-desk--v2 .lo-desk-l b{font-size:14.5px}
.lo-desk--v2 .lo-desk-l span:not(.lo-desk-n){font-size:13px;line-height:1.5;color:var(--dink-2)}
.lo-desk--v2 .lo-desk-cta{position:relative;align-items:center;margin-top:20px}
.lo-desk--v2 .lo-desk-cta .lo-paid{flex:1 1 100%;margin:2px 0 0;font:500 12px/1.5 var(--sans);color:var(--dink-3)}
@media (max-width:1099.98px){.lo-desk-top{grid-template-columns:1fr}.lo-desk--v2 .lo-desk-v{justify-items:start}}
@media (max-width:720px){.lo-desk.lo-desk--v2{padding:20px 16px}.lo-desk--v2 h2{font-size:24px}.lo-desk--v2 .lo-desk-l{grid-template-columns:1fr}}

/* Patch notes: the live version up front; the retired ones one click away */
.lp-past{margin-top:14px;border:1px solid var(--dline-2);border-radius:16px;background:rgba(255,255,255,.02)}
.lp-past summary{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 18px;cursor:pointer;list-style:none;font:800 14px/1 var(--sans);color:var(--dink)}
.lp-past summary::-webkit-details-marker{display:none}
.lp-past summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--dink-3);border-bottom:2px solid var(--dink-3);transform:rotate(45deg);transition:transform .15s ease}
.lp-past[open] summary::after{transform:rotate(225deg)}
.lp-past summary b{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--dark-3);font:800 11px/1 var(--sans);color:var(--dink-2)}
.lp-past summary small{font:600 12px/1 var(--sans);color:var(--dink-3)}
.lp-past summary:hover{background:var(--dark-2);border-radius:16px}
.lp-past summary:focus-visible{outline:2px solid var(--amber);outline-offset:2px;border-radius:16px}
.lp-past .lp-list--past{margin:0;padding:0 12px 12px}

/* the scoreboard follows the reader down the page (the rail column stretches so its sticky card has room to travel) */
.lo-wr-body .wr-rail{align-self:stretch}

/* Profile, below the rail (2026-09-27, Jay: "it doesn't need to be confined in the width space because the Record section
   is not that long so stretch them out or even put them side by side"). A full-width area that shows with the Profile tab. */
.lo-profile-wide{margin-top:8px;display:grid;gap:22px}
.lo-profile-wide[hidden]{display:none}
.lo-profile-wide>*{margin-top:0!important}
.lo-nums{padding:18px 22px;border-radius:18px;background:var(--paper);border:1px solid var(--line)}
.lo-nums-g{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;margin:10px 0 0;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.lo-nums-g>div{padding:14px 16px;background:var(--surface-2);min-width:0}
.lo-nums-g dt{font:700 10.5px/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.lo-nums-g dd{margin:6px 0 0;font:800 30px/1 var(--cond);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.lo-nums-g dd small{display:block;margin-top:5px;font:600 12px/1.2 var(--sans);color:var(--ink-3);white-space:normal}
.lo-nums-g .is-gain{color:var(--gain)}.lo-nums-g .is-loss{color:var(--drop)}
.lo-how-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 22px;padding:22px 24px}
.lo-how-card>h2,.lo-how-card>.lede,.lo-how-card>.lo-how{grid-column:1/-1}
.lo-how-card h2{font-size:24px}
.lo-how-card .lo-how div{padding:18px 20px}
.lo-how-card .lo-how b{font-size:17px}
.lo-how-card .lo-how p{font-size:14px}
.lo-how-card .lo-note{align-self:center;margin-top:18px}
.lo-profile-wide .lo-desk--v2{padding:32px 36px}
.lo-profile-wide .lo-desk-top{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:36px}
.lo-profile-wide .lo-desk--v2 h2{font-size:34px;max-width:20ch}
.lo-profile-wide .lo-desk--v2 .lo-desk-v{justify-items:center}
.lo-profile-wide .lo-desk--v2 .lo-desk-v svg{max-width:520px;border-radius:18px;box-shadow:0 30px 70px -30px rgba(245,181,61,.35),0 0 0 1px rgba(245,181,61,.25)}
.lo-profile-wide .lo-desk--v2 .lo-desk-l li{padding:18px 20px}
.lo-duo{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:22px;align-items:start}
.lo-duo>*{margin-top:0!important}
.lo-duo .lo-join{grid-template-columns:1fr;position:sticky;top:calc(var(--hd-h, 64px) + 72px)}
.lo-duo .lo-join h2{font-size:26px}
@media (max-width:1099.98px){.lo-nums-g{grid-template-columns:repeat(3,minmax(0,1fr))}.lo-duo{grid-template-columns:1fr}.lo-duo .lo-join{position:static;grid-template-columns:minmax(0,1fr) minmax(0,380px)}.lo-profile-wide .lo-desk-top{grid-template-columns:1fr}}
@media (max-width:720px){
  .lo-nums{padding:14px 12px}.lo-nums-g{grid-template-columns:repeat(2,minmax(0,1fr))}.lo-nums-g dd{font-size:24px}
  .lo-how-card{grid-template-columns:1fr;padding:18px 16px}.lo-how-card .lo-how{grid-template-columns:1fr}
  .lo-profile-wide .lo-desk--v2{padding:20px 16px}.lo-profile-wide .lo-desk--v2 h2{font-size:25px}
  .lo-duo .lo-join{grid-template-columns:1fr}.lo-faq-l{grid-template-columns:1fr}
}

/* Patch notes as a version switcher (2026-09-27, Jay: "put patch number on top to slide to see how each patch gets better").
   A timeline of versions on top, oldest to newest; one card at a time; arrows beside it; his numbers on each version. */
.lp-tl{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:10px;margin-top:18px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x mandatory}
.lp-tl::before{content:"";position:absolute;left:24px;right:24px;top:33px;height:2px;background:var(--dline-2);z-index:0}
.lp-t{position:relative;z-index:1;scroll-snap-align:start;display:grid;gap:4px;justify-items:start;min-height:84px;padding:12px 14px;border-radius:14px;border:1px solid var(--dline-2);background:var(--dark-1);color:var(--dink-2);text-align:left;font:inherit;cursor:pointer;transition:border-color .15s,background .15s}
.lp-t:hover{border-color:rgba(245,181,61,.5)}
.lp-t:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.lp-t-v{display:inline-grid;place-items:center;min-width:52px;height:28px;padding:0 8px;border-radius:8px;background:var(--dark-3);color:var(--dink);font:800 15px/1 var(--cond);letter-spacing:.02em}
.lp-t-n{font:800 13.5px/1.2 var(--sans);color:var(--dink)}
.lp-t-s{font:600 11.5px/1.2 var(--sans);color:var(--dink-3);font-variant-numeric:tabular-nums}
.lp-t-s b{font-weight:800}
.lp-t .is-gain{color:var(--up)}.lp-t .is-loss{color:var(--dn)}
.lp-t--live .lp-t-v{background:linear-gradient(180deg,#f7c257,#e59a1c);color:#1a1200}
.lp-t[aria-selected="true"]{border-color:var(--amber);background:var(--dark-2);box-shadow:0 0 0 1px rgba(245,181,61,.25),0 12px 30px -18px rgba(245,181,61,.5)}
.lp-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:10px;align-items:center;margin-top:8px}
.lp-step{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--dline-2);background:var(--dark-1);color:var(--dink);cursor:pointer}
.lp-step svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.lp-step:hover:not(:disabled){border-color:var(--amber);color:var(--amber)}
.lp-step:disabled{opacity:.3;cursor:default}
.lp-step:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.lp--switch:not(.lp-js) .lp-step{display:none}
.lp--switch:not(.lp-js) .lp-stage{grid-template-columns:1fr}
.lp-cards{display:grid;gap:12px;min-width:0;touch-action:pan-y}
.lp-c{background:var(--dark-1);border:1px solid var(--dline);border-radius:16px;padding:18px 20px}
.lp-c.lp-row--live{border-color:rgba(245,181,61,.35)}
.lp-c.lp-row--retired .lp-v{background:var(--dark-2);color:var(--dink-2)}
.lp-c[hidden]{display:none}
.lp-c .lp-tldr li{font-weight:500;color:var(--dink-2)}
/* a version's result card (2026-10-17), the daily log's result card in the patch-notes dark: net and return, won and lost, the days */
.lp-vr:empty{display:none}
.lp-vr-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 0}
.lp-vr-top>div{padding:14px 16px;border-radius:12px;background:var(--dark-2);border:1px solid var(--dline);min-width:0}
.lp-vr-k{margin:0;font:700 10px/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--dink-3)}
.lp-vr-big{margin:6px 0 0;font:800 34px/1 var(--cond);color:var(--dink);font-variant-numeric:tabular-nums}
.lp-vr-s{margin:6px 0 0;font:600 12px/1.35 var(--sans);color:var(--dink-3);font-variant-numeric:tabular-nums}
.lp-vr .is-gain{color:var(--up)}.lp-vr .is-loss{color:var(--dn)}.lp-vr .is-flat{color:var(--dink-3)}
.lp-vr-wl{margin:12px 0 0}
.lp-vr-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--dline-2)}
.lp-vr-bar .is-w{background:var(--up)}.lp-vr-bar .is-l{background:var(--dn)}
.lp-vr-lg{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 0;font:600 12.5px/1.4 var(--sans);color:var(--dink-2);font-variant-numeric:tabular-nums}
.lp-vr-lg b{font-weight:800}
.lp-vr-days{margin:14px 0 0}
.lp-vr-days ul{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px}
.lp-vr-days li>a,.lp-vr-days li>div{display:grid;gap:3px;padding:10px 12px;border-radius:12px;background:var(--dark-2);border:1px solid var(--dline);text-decoration:none;color:var(--dink);font-variant-numeric:tabular-nums}
.lp-vr-days li>a:hover{border-color:rgba(245,181,61,.5)}
.lp-vr-days li>a:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.lp-vr-days span{font:700 12px/1.2 var(--sans);color:var(--dink-2)}
.lp-vr-days b{font:800 18px/1.1 var(--cond)}
.lp-vr-days small{font:600 11px/1.3 var(--sans);color:var(--dink-3)}
.lp-vstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:14px 0 0;border-radius:12px;overflow:hidden;background:var(--dline);border:1px solid var(--dline)}
.lp-vstats:empty{display:none}
.lp-vstats>div{padding:11px 12px;background:var(--dark-2);min-width:0}
.lp-vstats dt{font:700 10px/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--dink-3)}
.lp-vstats dd{margin:5px 0 0;font:800 22px/1 var(--cond);color:var(--dink);font-variant-numeric:tabular-nums}
.lp-vstats dd small{display:block;margin-top:4px;font:600 11px/1.3 var(--sans);color:var(--dink-3)}
.lp-vstats .is-gain{color:var(--up)}.lp-vstats .is-loss{color:var(--dn)}.lp-vstats .is-flat{color:var(--dink-3)}
.lp-weak{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:rgba(245,181,61,.07);border:1px solid rgba(245,181,61,.18);font:500 13px/1.5 var(--sans);color:var(--dink-2)}
.lp-weak b{color:var(--amber)}
@media (max-width:720px){
  .lp-tl{grid-auto-columns:minmax(132px,46%)}
  .lp-stage{grid-template-columns:1fr}.lp-step{display:none}
  .lp-c{padding:16px 14px}
  .lp-vstats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lp-vr-big{font-size:28px}
}

/* 1.06: the treasury card in the rail and the day's goal bar (tokens only; --up fill on --dline-2 track, pace tick --dink-3) */
.lo-tr{margin-top:14px}
.lo-tr-goal{margin:4px 0 10px}
.lo-tr-goal[hidden]{display:none}
.lo-tr-gk{display:flex;align-items:baseline;gap:6px;margin:0 0 6px;font:600 12px/1.2 var(--sans);color:var(--ink-2)}
.lo-tr-gk span{font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:10.5px;color:var(--ink-3)}
.lo-tr-gk b{font:800 16px/1 var(--sans);font-variant-numeric:tabular-nums;margin-left:auto}
.lo-tr-gk b.is-gain{color:var(--gain)}.lo-tr-gk b.is-loss{color:var(--loss)}
.lo-tr-gbar{position:relative;height:8px;border-radius:4px;background:var(--line-2)}
.lo-tr-gbar i{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:var(--gain)}
.lo-tr-gbar em{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;border-radius:1px;background:var(--ink-3)}
.lo-tr-gbar em[hidden]{display:none}
.lo-tr-gs{margin:6px 0 0;font:500 12px/1.4 var(--sans);color:var(--ink-3);text-wrap:pretty}

/* 1.06a: a stopped trade whose call was right: the asterisk beside its net, and the "If held" line in its detail */
.lt-ast{margin-left:2px;color:var(--amber);font-weight:800;cursor:help}
.lt-held dd{color:var(--dink-2)}
/* 1.07e: Extreme and Longshot windows in the trade log */
.lt-xt{display:inline-flex;align-items:center;height:16px;margin-left:6px;padding:0 5px;border-radius:5px;font:800 9.5px/1 var(--sans);font-style:normal;letter-spacing:.07em;text-transform:uppercase;vertical-align:1px;cursor:help}
.lt-xt--extreme{background:rgba(192,38,211,.1);color:#a21caf;box-shadow:inset 0 0 0 1px currentColor}
.lt-xt--longshot{background:rgba(8,145,178,.1);color:#0e7490;box-shadow:inset 0 0 0 1px currentColor}
:root[data-theme="dark"] .lt-xt--extreme{background:rgba(232,121,249,.14);color:#f0abfc}
:root[data-theme="dark"] .lt-xt--longshot{background:rgba(34,211,238,.12);color:#67e8f9}
/* Calls right and "$100 on every call" (2026-10-01, plan claude/plan-2026-10-01-lolo-calls-right-and-follow.md). Theme tokens only:
   --paper/--ink/--gain move with the toggle. The panel sits --paper on --bg (1.09:1), so a 2px --brand edge carries the boundary. */
.lo-calls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:18px 28px;margin:0 0 18px;padding:22px 24px;min-height:300px;background:var(--paper);border:2px solid var(--brand);border-radius:18px;box-shadow:var(--shadow)}
.lo-calls .is-gain{color:var(--gain)}.lo-calls .is-loss{color:var(--drop)}.lo-calls .is-flat{color:var(--ink)}
.lch-k{margin:0;font:700 11px/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
.lch-n{margin:6px 0 0;line-height:.9}
.lch-n b{font:800 clamp(64px,13vw,104px)/.9 var(--cond);letter-spacing:-.02em;color:var(--gain);font-variant-numeric:tabular-nums;text-shadow:0 0 30px rgba(8,112,67,.30),0 0 12px rgba(8,112,67,.18)}
:root[data-theme="dark"] .lch-n b{text-shadow:0 0 32px rgba(47,217,143,.35),0 0 12px rgba(47,217,143,.25)}
.lch-c{margin:8px 0 0;font:600 14px/1.4 var(--sans);color:var(--ink-2)}
.lch-vs{display:grid;gap:10px;align-content:center}
.lch-bar{display:grid;grid-template-columns:8.5em minmax(0,1fr) auto;align-items:center;gap:10px;font:600 13px/1.2 var(--sans);color:var(--ink-2)}
.lch-bar i{display:block;height:12px;border-radius:0 4px 4px 0;background:linear-gradient(90deg,var(--gain) var(--w),var(--surface-2) var(--w));box-shadow:inset 0 0 0 1px var(--line)}
.lch-bar--px i{background:linear-gradient(90deg,var(--ink-3) var(--w),var(--surface-2) var(--w))}
.lch-bar b{font:800 15px/1 var(--sans);color:var(--ink);text-align:right;white-space:nowrap;min-width:4.4em;font-variant-numeric:tabular-nums}
.lch-gap{margin:4px 0 0;font:500 13.5px/1.5 var(--sans);color:var(--ink-2)}.lch-gap b{font-weight:800}
.lch-follow{grid-column:1/-1;padding-top:16px;border-top:1px solid var(--line)}
.lch-fg{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
.lch-fg>div{padding:12px 14px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}
.lch-fg>div.lch-fg--conf{border-color:var(--gain)}
.lch-fg span{display:block;font:700 12px/1.2 var(--sans);color:var(--ink-2)}
.lch-fg b{display:block;margin-top:6px;font:800 30px/1 var(--cond);font-variant-numeric:tabular-nums}
.lch-fg small{display:block;margin-top:5px;font:600 12px/1.3 var(--sans);color:var(--ink-3)}
.lch-spark{display:block;width:100%;height:auto;margin-top:12px;overflow:visible}
.lch-zero{stroke:var(--line-2);stroke-width:1;stroke-dasharray:3 4}
.lch-l{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.lch-l--conf{stroke:var(--gain)}.lch-l--all{stroke:var(--ink-3)}
.lch-p{stroke:var(--paper);stroke-width:2}.lch-p--conf{fill:var(--gain)}.lch-p--all{fill:var(--ink-3)}
.lch-key{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0 0;font:600 12px/1.3 var(--sans);color:var(--ink-2)}
.lch-sw{display:inline-block;width:14px;height:3px;border-radius:2px}.lch-sw--conf{background:var(--gain)}.lch-sw--all{background:var(--ink-3);margin-left:10px}
.lch-f{margin:10px 0 0;font:500 12.5px/1.5 var(--sans);color:var(--ink-3)}
.lc-c{display:block;margin-top:2px;font:700 10.5px/1.1 var(--sans);color:var(--ink-2)}
.lo-tlog-c{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:10px 0 0;font:600 13px/1.4 var(--sans);color:var(--dink-2);font-variant-numeric:tabular-nums}
.lt-cr{font:800 19px/1.2 var(--sans);color:var(--dink)}.lt-cr em{font-style:normal;margin-left:6px;color:var(--up);text-shadow:0 0 14px rgba(39,212,137,.45)}
.lo-tlog-c .is-gain{color:var(--up)}.lo-tlog-c .is-loss{color:var(--dn)}.lo-tlog-c .is-flat{color:var(--dink)}
.lt-cf--cum{flex-basis:100%;color:var(--dink-3);font-size:12px}
@media (max-width:720px){
  .lo-calls{grid-template-columns:1fr;padding:18px 16px;min-height:0}
  .lch-bar{grid-template-columns:7.4em minmax(0,1fr) auto;font-size:12px}
  .lch-fg b{font-size:24px}
  .lc-c{font-size:9.5px}
}

/* ===== 2026-10-05: month mini nav (sticky under the tabs), Patch fuel, sponsor spots, week chips ===== */
.mn{position:sticky;top:calc(var(--hd-h) + var(--tab-h,57px));z-index:calc(var(--z-hd) - 2);margin:0 0 16px;background:var(--bg);padding:8px 0;transition:box-shadow .2s}
.mn.is-stuck{box-shadow:0 10px 18px -14px rgba(10,18,38,.35)}
.mn-in{position:relative;display:flex;align-items:center;gap:6px;min-height:52px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.mn-step{display:grid;place-items:center;flex:none;width:36px;height:44px;border:0;border-radius:10px;background:none;color:var(--ink);cursor:pointer}
.mn-step svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.mn-step:hover{background:var(--surface-2)}.mn-step:disabled{color:var(--line-3);cursor:default;background:none}
.mn-months{display:flex;gap:4px;margin:0;padding:0;list-style:none;flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none}
.mn-months::-webkit-scrollbar{display:none}.mn-months li{flex:none}
.mn-m{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:44px;padding:4px 12px;border:0;border-radius:10px;background:none;font:inherit;color:var(--ink-2);white-space:nowrap;cursor:pointer;text-align:left}
.mn-m b{font:700 13.5px/1.2 var(--sans)}.mn-net{font:600 12px/1.2 var(--sans);font-variant-numeric:tabular-nums;color:var(--ink-3)}
.mn-net.is-gain{color:var(--gain)}.mn-net.is-loss{color:var(--loss)}
button.mn-m:hover{background:var(--surface-2);color:var(--ink)}
/* 2026-10-09 (Jay: "The total is hard to see with the colors for october or whatever is clicked on"): the selected chip used
   to invert to --ink, which is a light surface in the dark theme, and the month's net was painted with two literals picked
   for a dark chip. Measured in the dark theme: #7ee2a8 on #e9efff was 1.37:1 and #ff9aa4 was 1.75:1. The chip now keeps the
   theme's own paper and ink and is marked by a 2px --brand ring, so the net can use --gain / --loss like everywhere else:
   9.83:1 and 6.55:1 dark, 6.16:1 and 4.78:1 light, ring 3.77:1 dark and 5.58:1 light against the 3:1 non-text floor. */
.mn-m.is-on{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 2px var(--brand)}
.mn-m.is-off{opacity:.55;cursor:default}
.mn-live{display:inline-block;width:7px;height:7px;margin:0 6px 1px 0;border-radius:50%;background:#2fd27a;vertical-align:middle;animation:mn-pulse 1.6s infinite}
@keyframes mn-pulse{50%{opacity:.35}}
.mn-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mn-fuel{position:relative;flex:none;margin-left:auto}
.mn-fuel summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border-radius:10px;border:1px solid var(--line);cursor:pointer;list-style:none;color:var(--ink)}
.mn-fuel summary::-webkit-details-marker{display:none}
.mn-fuel summary:hover,.mn-fuel[open] summary{background:var(--surface-2)}
.mn-cup,.mn-chev{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mn-chev{width:14px;height:14px;transition:transform .15s}.mn-fuel[open] .mn-chev{transform:rotate(180deg)}
.mn-ft{display:flex;flex-direction:column;gap:3px}.mn-fk{font:700 10px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.mn-fv{font:600 13.5px/1.2 var(--sans)}
.mn-pop{position:absolute;right:0;top:calc(100% + 8px);width:360px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:var(--shadow-lg);z-index:5}
.mn-ph{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.mn-pk{margin:0;font:700 11px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.mn-pm{font:600 12px/1 var(--sans);color:var(--ink-3)}
.mn-pt{margin:0 0 8px;font:700 15px/1.4 var(--sans);color:var(--ink)}
.mn-fl{list-style:none;margin:12px 0;padding:0;display:grid;gap:8px}
.mn-fl li{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.mn-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:10px;background:var(--paper);border:1px solid var(--line);color:var(--ink-2)}
.mn-ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mn-fi{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mn-fi b{font:700 14.5px/1.2 var(--sans);color:var(--ink)}.mn-fi small{font-size:12.5px;line-height:1.3;color:var(--ink-3)}
.mn-go{flex:none;display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line-3);background:var(--paper);color:var(--ink);font:700 12.5px/1 var(--sans);text-decoration:none;white-space:nowrap}
.mn-go:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.mn-go svg,.mn-pcta svg{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mn-pcta{display:flex;align-items:center;gap:10px;margin-top:12px;padding:12px;min-height:44px;border:1px dashed var(--line-3);border-radius:12px;text-decoration:none;color:var(--ink)}
.mn-pcta:hover{background:var(--surface-2)}.mn-pcta span{flex:1;display:flex;flex-direction:column;gap:2px}.mn-pcta b{font:700 13.5px/1.25 var(--sans)}.mn-pcta small{font-size:12px;color:var(--ink-3)}
.mn button:focus-visible,.mn a:focus-visible,.mn summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@property --mn-nw{syntax:'<angle>';inherits:false;initial-value:0deg}
.mn-in.is-newwin::after{content:'';position:absolute;inset:-1px;border-radius:inherit;padding:2px;pointer-events:none;z-index:3;
  background:conic-gradient(from var(--mn-nw),transparent 0deg,transparent 170deg,rgba(59,155,255,.35) 250deg,#3b9bff 320deg,#dff0ff 352deg,transparent 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  filter:drop-shadow(0 0 6px rgba(59,155,255,.9));animation:mn-nw-lap .95s cubic-bezier(.45,.05,.3,1) 2 both,mn-nw-out 2.4s ease-out both}
.mn-in.is-newwin{animation:mn-nw-glow 2.4s ease-out 1}
@keyframes mn-nw-lap{to{--mn-nw:360deg}}
@keyframes mn-nw-out{0%,70%{opacity:1}100%{opacity:0}}
@keyframes mn-nw-glow{0%{box-shadow:0 0 0 1px rgba(59,155,255,.9),0 0 0 0 rgba(59,155,255,.5)}35%{box-shadow:0 0 0 1px rgba(59,155,255,.8),0 0 24px 4px rgba(59,155,255,.3)}100%{box-shadow:0 0 0 0 rgba(59,155,255,0)}}
@media (prefers-reduced-motion:reduce){.mn-in.is-newwin::after{animation:none;opacity:0}.mn-in.is-newwin,.mn-live{animation:none}}
.wr-rail-in{top:calc(var(--hd-h) + var(--tab-h,57px) + 8px)}
@media(max-width:720px){.mn{margin:0 -16px 12px;padding:6px 12px}.mn-in{border-radius:12px;gap:4px}.mn-step,.mn-yr{display:none}.mn-fv,.mn-chev{display:none}
  .mn-fk{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.mn-fuel summary{width:44px;padding:0;justify-content:center}.mn-cup{width:20px;height:20px}
  .mn-fuel{position:static}.mn-pop{left:0;right:0;width:auto}.mn-m{padding:4px 10px}}

/* sponsor spots: dashed while open, every one labeled Sponsored */
.sp-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;border:1px solid var(--warn-ink);color:var(--warn-ink);font:700 10.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.sp-k{margin:0;font:700 11px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.sp-logo{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:12px;border:1px dashed var(--line);background:var(--surface-2);color:var(--ink-3);font:700 11px/1.15 var(--sans);text-align:center}
.sp-logo--sm{width:36px;height:36px;border-radius:9px;font-size:9.5px}
.sp-strip{display:flex;align-items:center;gap:12px;margin:14px 0 4px;padding:10px 12px;border:1px dashed var(--line);border-radius:12px;background:var(--surface-2);text-decoration:none;color:var(--ink)}
.sp-strip:hover{border-color:var(--line-3)}
.sp-st{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sp-st b{font:700 14px/1.3 var(--sans);color:var(--ink)}.sp-st span{font-size:12.5px;color:var(--ink-3)}
.sp-card{background:var(--paper);border:1px dashed var(--line);border-radius:var(--r);padding:16px 18px}
.sp-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.sp-infeed{margin:18px 0;border-radius:18px;padding:18px 22px}
.sp-body{display:flex;align-items:center;gap:16px}
.sp-body h2{margin:0 0 4px;font:800 20px/1.15 var(--cond);text-transform:uppercase;color:var(--ink)}
.sp-body p{margin:0;font-size:14px;line-height:1.5;color:var(--ink-2)}
.sp-body>div{flex:1;min-width:0}.sp-btn{flex:none;min-height:44px}
.sp-row{display:flex;align-items:center;gap:12px;padding:8px 0;text-decoration:none;color:var(--ink)}.sp-row+.sp-row{border-top:1px solid var(--line)}
.sp-row b{display:block;font:700 15px/1.25 var(--sans);color:var(--ink)}.sp-row span span{display:block;font-size:12.5px;line-height:1.35;color:var(--ink-3)}
.sp-apply{margin-top:10px;min-height:44px}
@media(max-width:720px){.sp-body{flex-wrap:wrap}.sp-btn{width:100%}.sp-st span{display:none}}

/* week totals as small chips; hover for trades, calls right and the month so far */
.lc-wt-v.wkp{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;padding:6px 5px;border-radius:10px;min-width:0;cursor:default;
  background:linear-gradient(160deg,color-mix(in srgb,var(--gain) 16%,var(--paper)),color-mix(in srgb,var(--gain) 6%,var(--paper)));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gain) 30%,transparent),0 6px 14px -10px color-mix(in srgb,var(--gain) 70%,transparent)}
.lc-wt-v.wkp.is-loss{background:linear-gradient(160deg,color-mix(in srgb,var(--drop) 16%,var(--paper)),color-mix(in srgb,var(--drop) 6%,var(--paper)));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--drop) 30%,transparent),0 6px 14px -10px color-mix(in srgb,var(--drop) 70%,transparent)}
.wkp small{display:inline-flex;align-items:center;gap:3px;font:700 9px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.wkp b{font:800 14px/1 var(--cond);letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums}
.wkp.is-gain b{color:var(--gain)}.wkp.is-loss b{color:var(--loss)}
.wkp--live small::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}

/* week chips on a phone (2026-10-08, Mary). Above 720px the chip is the 60px eighth column. Below it the grid has seven
   columns, and `.lc-wt{display:none}` lost to `.lc-wt-v.wkp{display:flex}` (two classes beat one), so the chip wrapped
   into an eighth cell under Sunday: rows with a chip measured 99 and 111px against 54 for the rest, and "+$20,261" needed
   51px in a 45px chip. Now the chip spans the row as a bar under its week: week and dates, the net, trades and calls
   right, and the month so far. The net is 19px/800 so it counts as large text (3:1); its worst pair, --loss on the 16%
   --drop tint in light, measures 3.71:1. The small text is --ink-2: 6.30:1 or better on every tint in both themes,
   where --ink-3 measured 4.25 to 4.42 at the 16% stop. */
.wkp-x{display:none}
@media (max-width:720px){
  .lc-wt-v.wkp{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"k d v" "s s m";
    align-items:baseline;column-gap:8px;row-gap:4px;padding:8px 10px;margin:0 0 3px;border-radius:8px;text-align:left}
  .wkp-x{display:contents}
  .wkp small{grid-area:k;font-size:10px}
  .wkp b{grid-area:v;justify-self:end;font-size:19px}
  .wkp-d{grid-area:d;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 12px/1.2 var(--sans);color:var(--ink-2)}
  .wkp-s{grid-area:s;min-width:0;font:500 11.5px/1.2 var(--sans);color:var(--ink-2);font-variant-numeric:tabular-nums}
  .wkp-m{grid-area:m;justify-self:end;white-space:nowrap;font:500 11.5px/1.2 var(--sans);color:var(--ink-2)}
  .wkp-m strong{font:800 13px/1 var(--cond);color:var(--ink);font-variant-numeric:tabular-nums}
  /* day values: at 390px a cell's value box is 37px and "+$9,407" at 12.5px measured 37px, so it ellipsized
     ("+$5,2..."). At 11.5px with 2px side padding it measures 34px in a 39px box; a five-digit day, 37px, still fits */
  .lc-d{padding:5px 2px}
  .lc-v{font-size:11.5px;letter-spacing:-.01em}
}
/* by version (2026-10-09): newest first, the newest five open, the rest folded; each version links to its patch note */
.lo-rules-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:4px 0 2px}
.lo-rules-h h3{margin:0;font:800 13px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.lo-rules-h .link{font:600 13px/1.2 var(--sans)}
.lo-rule>b a{color:var(--brand-ink);text-decoration:none;border-bottom:1px solid currentColor}
.lo-rule>b a:hover,.lo-rule>b a:focus-visible{text-decoration:none;border-bottom-width:2px}
.lo-rule.is-live{border-color:var(--amber);box-shadow:inset 3px 0 0 var(--amber)}
.lo-rules-more{display:grid;gap:8px}
.lo-rules-more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px dashed var(--line);border-radius:10px;font:700 13px/1.2 var(--sans);color:var(--ink-2)}
.lo-rules-more>summary::-webkit-details-marker{display:none}
.lo-rules-more>summary::before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.lo-rules-more[open]>summary::before{transform:rotate(45deg)}
.lo-rules-more>summary span{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--ink-3)}
.lo-rules-more[open]>summary{margin-bottom:0}
/* How he trades: four steps (Read, Call, Size, Sell), two by two until there is room for four */
.lo-how-card .lo-how--4{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:719.98px){.lo-how-card .lo-how--4{grid-template-columns:1fr}}
.wr-bio p+p{margin-top:12px}
/* 2026-10-09 (Jay: "we need a tab or something to link it to the btc 15 min page"): a live link at the end of the tab bar (outside the
   tablist, so the tabs keep their keyboard model) and a call to action under "Calls right" */
.wr-tabbar .wrap{display:flex;align-items:center;gap:12px}
.wr-tabbar .wr-tabs{flex:1 1 auto;min-width:0}
.lo-tab-desk{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--brand);color:var(--on-brand);text-decoration:none;font:700 14px/1.1 var(--sans);white-space:nowrap;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.lo-tab-desk:hover,.lo-tab-desk:focus-visible{filter:brightness(1.08);text-decoration:none}
.lo-tab-desk:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.lo-tab-s{font-weight:500;opacity:.85}
.lo-tab-s::before{content:"\00b7";margin:0 6px 0 0}
.lo-tab-dot{width:8px;height:8px;border-radius:50%;background:var(--up);box-shadow:0 0 0 0 rgba(47,217,143,.6);animation:loTabPulse 1.8s ease-out infinite;flex:0 0 auto}
@keyframes loTabPulse{0%{box-shadow:0 0 0 0 rgba(47,217,143,.55)}70%{box-shadow:0 0 0 7px rgba(47,217,143,0)}100%{box-shadow:0 0 0 0 rgba(47,217,143,0)}}
@media (prefers-reduced-motion:reduce){.lo-tab-dot{animation:none}}
@media (max-width:820px){.lo-tab-s{display:none}.lo-tab-desk{padding:7px 12px;font-size:13px}}
.lo-tab-xs{display:none}
@media (max-width:430px){.lo-tab-arr,.lo-tab-l{display:none}.lo-tab-xs{display:inline}.lo-tab-desk{padding:6px 10px;gap:6px}.wr-tabbar .wrap{gap:8px}.wr-tabbar .wr-tabs [role=tab]{padding:12px 9px;font-size:15px}}
.lch-cta{display:flex;align-items:center;gap:10px;margin-top:16px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);text-decoration:none;font:600 14px/1.35 var(--sans)}
.lch-cta b{color:var(--brand-ink)}
.lch-cta span:last-child{margin-left:auto;color:var(--brand-ink);font-weight:800}
.lch-cta:hover,.lch-cta:focus-visible{border-color:var(--brand);text-decoration:none}
/* 2026-10-09 (Jay: "the time for the windows not traded should not be bigger"): the no-ticket row's window time inherited the list's
   size; it now matches the traded rows (13.5px, 12px on phones), tabular figures, the same 52px row height */
.lt--off .lt-off{min-height:52px;padding:8px 12px}
.lt--off .lt-w{font:700 13.5px/1.1 var(--sans);font-variant-numeric:tabular-nums}
@media (max-width:720px){.lt--off .lt-off{padding:8px}.lt--off .lt-w{font-size:12px}}
/* 2026-10-09 (Jay): "By the numbers" on top of every tab, right under the tab bar */
.lo-nums-top{padding-top:4px;margin-bottom:22px}
.lo-nums--top{margin:0}
/* trade log, Mary pass (2026-10-09, Jay: "things are getting cut off ... entry and exit column can be more to the left ... net needs to be
   near the closed ... use some more colors"). Rows: a wider window column (11:45 PM–12:00 AM fits), net and entry/exit share the free
   space so nothing sits stranded at the far right. Open row: an outcome strip first (Closed, Net, If held), colour-coded, then the facts,
   then his words. The log is always the dark surface, so the tints below are tuned for it. */
.lo-tlog-cols,.lt-row{grid-template-columns:150px 92px 80px minmax(140px,1fr) minmax(92px,.6fr) 80px 14px;gap:8px}
.lt-row .lt-w{white-space:nowrap;line-height:1.2}   /* one line, always (Jay 2026-10-09: "the PM on another line ... should just be in 1 line") */
.lt-net{display:flex;align-items:center;gap:6px}.lt-net small{margin-left:0}
.lt-more{padding:6px 12px 16px}
.lt-more .lt-strip{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;background:none;border:0;border-radius:0}
.lt-k{margin:0;padding:12px 14px;border-radius:12px;background:var(--dark-2);border:1px solid var(--dline);min-width:0}
.lt-k dt{font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--dink-3)}
.lt-k dd{margin:7px 0 0;font:500 13px/1.45 var(--sans);color:var(--dink)}
.lt-k dd b{display:block;font:800 17px/1.15 var(--sans);font-variant-numeric:tabular-nums;color:var(--dink)}
.lt-k dd b span{font-size:13px;font-weight:700;opacity:.85}
.lt-k dd small{display:block;margin-top:5px;font:500 12px/1.45 var(--sans);color:var(--dink-2)}
.lt-k--net.is-gain{background:rgba(39,212,137,.08);border-color:rgba(39,212,137,.32)}.lt-k--net.is-gain dd b{color:var(--up)}
.lt-k--net.is-loss{background:rgba(255,107,120,.08);border-color:rgba(255,107,120,.32)}.lt-k--net.is-loss dd b{color:var(--dn)}
.lt-k--held{background:rgba(245,181,61,.09);border-color:rgba(245,181,61,.38)}.lt-k--held dd b{color:var(--amber)}.lt-k--held dt{color:var(--amber)}
.lt-k--saved{background:rgba(39,212,137,.08);border-color:rgba(39,212,137,.32)}.lt-k--saved dd b{color:var(--up)}.lt-k--saved dt{color:var(--up)}
.lt-k--right dd b{color:var(--up)}.lt-k--wrong dd b{color:var(--dn)}
.lt-more .lt-facts{margin:10px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 18px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.02);border:1px solid var(--dline)}
.lt-facts dt{font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--dink-3)}
.lt-facts dd{margin:6px 0 0;font:500 13px/1.45 var(--sans);color:var(--dink)}
.lt-facts b{font-weight:800}
.lt-facts .is-gain{color:var(--up)}.lt-facts .is-loss{color:var(--dn)}
.lt-dir--up{color:var(--up)}.lt-dir--down{color:var(--dn)}
.lt-cf{padding:1px 5px;border-radius:5px;background:var(--dark-3);color:var(--dink)}.lt-cf--high,.lt-cf--very-high{background:rgba(245,181,61,.18);color:var(--amber)}
.lt-saw,.lt-xtd{margin-top:10px;padding:12px 14px 12px 16px;border-radius:12px;background:rgba(255,255,255,.02);border:1px solid var(--dline);border-left:3px solid #7aa2ff}
.lt-saw p,.lt-xtd p{margin:0;font:500 13px/1.55 var(--sans);color:var(--dink)}
.lt-saw-k{margin:0 0 6px!important;font:700 10px/1 var(--sans)!important;letter-spacing:.1em;text-transform:uppercase;color:#9fbaff!important}
.lt-xtd--longshot{border-left-color:#67e8f9;background:rgba(34,211,238,.06)}.lt-xtd--longshot .lt-saw-k{color:#67e8f9!important}
.lt-xtd--extreme{border-left-color:#f0abfc;background:rgba(232,121,249,.07)}.lt-xtd--extreme .lt-saw-k{color:#f0abfc!important}
@media (max-width:1099.98px){.lt-more .lt-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* one-line window labels (Jay 2026-10-09). "11:45 AM–12:00 PM" needs about 150px; on a mid-width screen the size column steps
   aside (it is in the open row under Bought) so the window keeps its line; on a phone the window gets the row's full first line. */
@media (min-width:721px) and (max-width:1199.98px){
  .lo-tlog-cols,.lt-row{grid-template-columns:146px 90px 78px minmax(150px,1fr) minmax(86px,.6fr) 14px;gap:7px}
  .lo-tlog-cols span:nth-child(6),.lt-row .lt-sz{display:none}
}
@media (max-width:720px){
  .lo-tlog-cols,.lt-row{grid-template-columns:minmax(0,1fr) 78px 76px 88px 14px;gap:6px}
  .lt-row{grid-template-columns:78px 76px minmax(0,1fr) 14px;row-gap:6px}.lt-row .lt-w{grid-column:1/-1;font-size:12.5px}
  .lo-tlog-cols{grid-template-columns:78px 76px minmax(0,1fr) 14px}.lo-tlog-cols span:first-child{display:none}
  .lt-more .lt-strip{grid-template-columns:1fr}.lt-more .lt-facts{grid-template-columns:1fr 1fr;gap:10px 12px}
  .lt-net{display:block}.lt-net small{display:block;margin:3px 0 0;width:max-content}
  .lt-k dd b{font-size:16px}
}

/* ===== trade log on a phone, v2 (2026-10-10, Jay: "stretch out and have right column to show better for results and net. The time
   can be 2 lines"). Mary: at 390 the old row spent 78+76px on call and result, left net a 1fr column that started mid-row, and put
   the window on its own first line, so every trade took two lines anyway and the right ~90px of the card sat empty (measured in the
   harness, tools note in docs). Now: the window takes the left column on two lines (start, then "to" and the end), the call sits in
   the middle, and the right column carries the outcome: the net on top in 16px, the result word under it, both flush right, so the
   eye reads down one edge. Wide screens are unchanged: the window's extra parts (.lt-wm, .lt-wt) are hidden there. ===== */
.lt-wm,.lt-wt{display:none}
@media (max-width:720px){
  .lo-tlog-cols,.lt-row{grid-template-columns:68px 82px minmax(0,1fr) 12px;grid-template-areas:"w call net chev";column-gap:10px;row-gap:3px}
  .lo-tlog-cols span:first-child{white-space:nowrap}
  .lt-row{grid-template-areas:"w call net chev" "w call res chev";min-height:60px;padding:10px 8px}
  .lo-tlog-cols span{grid-area:auto}
  .lo-tlog-cols span:first-child{display:block;grid-area:w}
  .lo-tlog-cols span:nth-child(2){grid-area:call}
  .lo-tlog-cols span:nth-child(3){display:none}
  .lo-tlog-cols span:nth-child(4){grid-area:net;justify-self:end;text-align:right}
  .lo-tlog-cols span:nth-child(4)::before{content:"Result, "}
  .lo-tlog-cols span:last-child{grid-area:chev}
  .lt-row .lt-w{grid-area:w;grid-column:auto;align-self:center;white-space:nowrap;font:700 13px/1.2 var(--sans)}
  .lt-wa,.lt-wb{display:block}
  .lt-wd{display:none}
  .lt-wm,.lt-wt{display:inline}
  .lt-wb{margin-top:3px;font:600 11.5px/1.2 var(--sans);color:var(--dink-2)}
  .lt-row .lt-call{grid-area:call;align-self:center}
  .lt-row .lt-side{min-width:44px}   /* Jay: "the % needs to align". Down is 43.5px, Up was 24.3px, so Up's percent sat 19px left; both chips now 44px */
  /* the net as a slotted grid (Jay: "make the $$ align too"): the amount, a 7px slot for the If-held mark, then a fixed slot for the return chip, so every
     amount ends on the same line whatever the chip says (+4% or -102%), and a row with no chip keeps the slot empty */
  .lt-row .lt-net{grid-area:net;justify-self:end;align-self:end;display:grid;grid-template-columns:auto 7px 46px;justify-content:end;align-items:center;column-gap:0;font:800 16px/1.1 var(--sans);text-align:right}
  .lt-row .lt-net small{display:block;grid-column:3;margin:0;width:auto;padding:3px 0;text-align:center}
  .lt-row .lt-net .lt-ast{grid-column:2;grid-row:1;align-self:start;margin:0;font-size:12px}   /* the If-held mark keeps its own 7px slot */
  .lt-row .lt-res{grid-area:res;justify-self:end;align-self:start;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:6px;font:700 12px/1.2 var(--sans)}
  .lt-row .lt-xt{order:-1;margin-left:0}
  .lt-row .lt-chev{grid-area:chev;align-self:center}
  .lt--off .lt-off{display:grid;grid-template-columns:67px auto minmax(0,1fr);align-items:center;column-gap:10px;row-gap:6px}
  .lt--off .lt-w{white-space:nowrap;font:700 13px/1.2 var(--sans)}
  .lt--off .lt-off-why{font-size:12.5px;line-height:1.4}
}
@media (max-width:379.98px){
  .lo-tlog-cols,.lt-row{grid-template-columns:66px 80px minmax(0,1fr) 10px;column-gap:8px}
  .lt-row .lt-net{font-size:14.5px;grid-template-columns:auto 6px 42px}
  .lt-row .lt-net small{font-size:10px}
  .lt-row .lt-p{padding:2px 3px}
  .lo-tlog-cols span:first-child{letter-spacing:.03em}
  .lt--off .lt-off{grid-template-columns:65px auto minmax(0,1fr);column-gap:8px}
}
@media (max-width:339.98px){
  .lt-row .lt-net{grid-template-columns:auto 6px;row-gap:2px}
  .lt-row .lt-net small{grid-column:1 / -1;justify-self:end;padding:3px 5px}
}
/* the log card is dark in both themes, so its Longshot and Extreme badges take the dark-theme colours always: the light-theme
   #0e7490 and #a21caf on --dark-1 measured 3.5:1 and 3.0:1, under AA for 9.5px text */
.lo-tlog .lt-xt--extreme{background:rgba(232,121,249,.14);color:#f0abfc}
.lo-tlog .lt-xt--longshot{background:rgba(34,211,238,.12);color:#67e8f9}

/* 2026-10-12 day cells on a phone, for every 15-minute agent's calendar (Jay: "aligned properly and centered with no distortion
   for the values"). Measured at 390px before: every "NN% right" wrapped to two left-aligned lines in its 39px box, and a $1,000+
   day was clipped ("+$9,407" 41px, "-$12,345" 47px). Now the date, the value and the share right stack centered from the top, so
   the dates line up with the empty days; the value is whole dollars, then $9.4k / $12k (usdK in each page.js), never clipped
   or squeezed; the share right is "72%" on one line, with "right" kept on a wider screen and in the week bar. */
@media (max-width:720px){
  .lc-d{justify-content:flex-start;gap:3px;text-align:center}
  .lc-h,.lc-v,.lc-c{align-self:stretch;text-align:center}
  .lc-h{justify-content:center}
  /* a cell's text box is about (100vw - 117px) / 7 wide (45px cells at 390px, 35px at 320px, less 6px of border and padding);
     the widest value (+$9.4k) is 3.1 font-sizes wide, so a font-size of (100vw - 117px) / 23 always fits */
  .lc-v{font-size:clamp(8.5px,calc((100vw - 117px) / 23),12.5px);letter-spacing:0;overflow:visible;text-overflow:clip}
  .lc-c{margin-top:0;font-size:clamp(8px,calc((100vw - 117px) / 24),10px);white-space:nowrap}
  .lc-c-w{display:none}
}

/* No-ticket rows in the trade grid (2026-10-15; Jay: "when there is no ticket, I still want the call and the correct or missed to be
   uniform"). The row keeps the trade columns: window, call and confidence, Correct or Missed; the money columns say No ticket. The
   hatched fill and dashed edge are the old no-ticket look, so a glance still tells a trade from a call without one. */
.lt--nt .lt-row--nt{cursor:default;outline:1px dashed var(--dline);outline-offset:-1px;background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(255,255,255,.025) 8px 16px)}
.lt--nt .lt-row--nt:hover{background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(255,255,255,.025) 8px 16px)}
.lt-nt-tag{display:inline-block;padding:4px 8px;border-radius:6px;background:var(--dark-2);border:1px solid var(--dline);color:var(--dink-2);font:700 10.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.lt-side--pass{background:var(--dark-2);color:var(--dink-2);border:1px solid var(--dline)}
.lt-res--pass{color:var(--dink-3);font-weight:700}
.lt--nt .lt-ex,.lt--nt .lt-sz{color:var(--dink-3)}
.lt-chev--none{visibility:hidden}
.lt--nt .lt-row--nt .lt-net{display:block;text-align:right}   /* the tag sits flush right, where the money sits on a trade row */
@media (min-width:721px){.lt--nt .lt-row--nt .lt-net{text-align:left}}
/* The agent Record card (2026-10-15; Jay: "see if wojimi's format is optimal across all 15 min accounts and have them all adapt to it").
   One card for every 15-minute agent, current and new: Bankroll and Today net, Peak bankroll used today (bar, never-touched line,
   +N% return on a green day only), calls right today and all-time, trades won and lost. The section carries .ag-rec; each agent's
   own sheet maps its accent onto --ag-acc, --ag-soft and --ag-line, each with a dark twin, so the toggle moves everything.
   Scoped as .lo-sb.ag-rec ... b.is-pos because .lo-sb .wr-sb-grid dd b{color:inherit} above outranks a bare .is-pos. */
/* LoLo's accent, Bitcoin amber: the light and dark --amber values .hbd already ships in home.css */
.lo-page{--lo-acc:#8a5a00;--ag-acc:var(--lo-acc);--ag-soft:color-mix(in srgb,var(--lo-acc) 10%,transparent);--ag-line:color-mix(in srgb,var(--lo-acc) 45%,transparent)}
:root[data-theme="dark"] .lo-page{--lo-acc:#f5b53d}
.lo-sb.ag-rec{border-top-color:var(--ag-acc,var(--ink))}
.lo-sb.ag-rec .wr-card-h .tag{background:var(--ag-soft,transparent);color:var(--ag-acc,var(--ink));border-color:var(--ag-line,var(--line))}
.lo-sb.ag-rec .lo-sb-desk{border-color:var(--ag-line,var(--line))}
.lo-sb.ag-rec .wr-sb-grid dd b.is-pos,.lo-sb.ag-rec .wr-sb-grid dd b.is-gain,.lo-sb.ag-rec .wr-sb-grid dd .is-pos{color:var(--gain)}
.lo-sb.ag-rec .wr-sb-grid dd b.is-neg,.lo-sb.ag-rec .wr-sb-grid dd b.is-loss,.lo-sb.ag-rec .wr-sb-grid dd .is-neg{color:var(--drop)}
.lo-sb.ag-rec .ag-used .ag-used-top>b{color:var(--ag-acc,var(--ink))}
.ag-used-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ag-used-bar{display:block;position:relative;height:10px;margin-top:10px;border-radius:999px;background:var(--gain-soft);overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.ag-used-bar i{position:absolute;left:0;top:0;bottom:0;width:0;min-width:3px;border-radius:999px;background:var(--ag-acc,var(--ink));transition:width .4s ease}
.lo-sb.ag-rec .ag-used dd small b{display:inline;color:var(--gain);font-weight:700;white-space:normal}
.ag-eff{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;background:var(--gain-soft);color:var(--gain);font:800 13px/1 var(--sans);font-style:normal;letter-spacing:.01em;white-space:nowrap}
.ag-eff[hidden]{display:none}
.ag-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}
@media (prefers-reduced-motion:reduce){.ag-used-bar i{transition:none}}
/* The trade log's daily log link (2026-10-15; Jay: "put a button next to expand to say see detailed daily log"; Mary, claude/daylog/
   mary-spec.md section 6; words by Igor). Expand on top, the link under it, in one right-hand column so the title never wraps
   differently (measured: no shift at 800 to 1440). Expand does not exist at 980 and under, so the link sits alone there, and at 720
   and under it is a full-width row present from first paint. The short label shows when the log is narrow. */
.tl-acts{flex:none;display:flex;flex-direction:column;align-items:stretch;gap:8px}
.tl-day{justify-content:center;text-decoration:none}
.tl-day .tl-day-s{display:none}
.tl-day[data-off]{visibility:hidden}
.lo-tlog{container-type:inline-size}
@container (max-width:699px){.tl-day .tl-day-l{display:none}.tl-day .tl-day-s{display:inline}}
@media (max-width:980px){.tl-acts .lo-tlog-x.tl-day{display:inline-flex}}
@media (max-width:720px){.lo-tlog-h{flex-wrap:wrap}.tl-acts{flex:1 1 100%}.tl-acts .tl-day{height:44px}.tl-day .tl-day-l{display:inline}.tl-day .tl-day-s{display:none}}
/* The agent page's static list of daily logs, under the trade log: crawlable links to every closed day (tools/agents/build_agent_days.py) */
.dl-days{margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:var(--r-lg,18px);background:var(--paper)}
.dl-days>p{margin:6px 0 0;color:var(--ink-2);font-size:14px}
.dl-days-l{margin:14px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.dl-days-l a{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r,12px);background:var(--surface-2);color:var(--ink);text-decoration:none}
.dl-days-l a:hover{border-color:var(--ag-line,var(--line-2))}
.dl-days-l b{font:700 14px/1.3 var(--sans)}
.dl-days-l span{font:800 14px/1.3 var(--sans);font-variant-numeric:tabular-nums}
.dl-days-l small{grid-column:1/-1;color:var(--ink-3);font-size:12px}
.dl-days-l .is-gain{color:var(--gain)}.dl-days-l .is-loss{color:var(--drop)}
