
  *{box-sizing:border-box}
  body{margin:0;padding-top:24px;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:14px;line-height:1.5}
  a{text-decoration:none;color:inherit}
  .pl-wrap{max-width:1360px;margin:0 auto;padding:0 20px 70px}

  /* ── page header ── */
  .pl-hd{padding:18px 0 10px}
  .pl-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}
  .pl-title{font-size:clamp(22px,3vw,32px);font-weight:800;letter-spacing:-.02em;margin:0 0 6px}
  .pl-sub{color:var(--muted);font-size:13px;max-width:88ch}
  .pl-asof{color:var(--muted);font-size:12px;margin-top:4px}
  .pl-back{font-size:12.5px;color:var(--link);margin-top:6px;display:inline-block}

  /* ── tabs ── */
  .pl-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 16px}
  .tabbtn{padding:9px 18px;font:inherit;font-size:13.5px;font-weight:700;border:1.5px solid var(--line);
    background:var(--panel);color:var(--muted);border-radius:10px;cursor:pointer;transition:.15s}
  .tabbtn.on{background:var(--panel2,var(--panel));color:var(--text);border-color:var(--muted)}

  /* ── scoreboard tab ── */
  .sb-note{font-size:12px;color:var(--muted);margin:0 0 12px;padding:10px 13px;
    border:1px solid var(--line);border-left:3px solid var(--link);border-radius:10px;background:var(--panel)}
  .sb-note b{color:var(--text)}
  .sb-halt{font-size:12px;color:var(--muted);margin:0 0 10px;padding:8px 12px;
    border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:9px;background:var(--panel)}
  .tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
  table.sb-tbl{width:100%;border-collapse:collapse;font-size:12.5px;font-variant-numeric:tabular-nums;white-space:nowrap}
  table.sb-tbl th{text-align:right;padding:6px 8px;border-bottom:1px solid var(--line);
    color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
  table.sb-tbl td{text-align:right;padding:6px 8px;border-bottom:1px solid var(--line)}
  table.sb-tbl th:first-child,table.sb-tbl td:first-child{text-align:left}
  table.sb-tbl th.l,table.sb-tbl td.l{text-align:left}
  table.sb-tbl tr.row-random{background:color-mix(in srgb,var(--muted) 7%,transparent);border-top:2px solid var(--line)}
  table.sb-tbl tr.row-random td{color:var(--muted);font-style:italic}
  table.sb-tbl tr.row-inverse td.name-cell{color:var(--warn)}
  .pos{color:var(--up)} .neg{color:var(--down)} .neu{color:var(--muted)}
  .family-badge{display:inline-block;font-size:10px;font-weight:700;padding:1px 5px;border-radius:5px;
    border:1px solid var(--line);color:var(--muted);margin-right:4px}
  .badge-accruing{display:inline-block;font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;
    border:1px solid color-mix(in srgb,var(--warn) 50%,var(--line));
    color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent)}
  .badge-active{display:inline-block;font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;
    border:1px solid color-mix(in srgb,var(--up) 50%,var(--line));
    color:var(--up);background:color-mix(in srgb,var(--up) 10%,transparent)}
  .badge-stale{display:inline-block;font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;
    border:1px solid color-mix(in srgb,var(--warn) 40%,var(--line));
    color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,transparent)}
  .sb-yardstick-label{font-size:10px;color:var(--muted);margin-left:4px}
  .avoid-label{font-size:10px;font-weight:700;color:var(--warn);margin-left:4px}

  /* ── empty state ── */
  .pl-empty{text-align:center;padding:60px 20px 80px;color:var(--muted)}
  .pl-empty-icon{font-size:48px;margin-bottom:14px}
  .pl-empty h2{font-size:20px;font-weight:700;color:var(--text);margin:0 0 8px}
  .pl-empty p{max-width:52ch;margin:0 auto;font-size:14px;line-height:1.6}

  /* ── pick cards ── */
  .pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:13px;margin-top:10px}
  .pick-card{border:1px solid var(--line);border-radius:12px;padding:13px 15px;background:var(--panel);
    border-left:3px solid var(--info,#4c8bf5)}
  .pick-card.avoid-card{border-left-color:var(--down)}
  .pick-card:hover{border-color:var(--muted);background:var(--panel2,var(--panel))}
  .pick-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
  .pick-rank{font-size:11px;color:var(--muted);font-weight:600;min-width:22px}
  .pick-tk{font-size:16px;font-weight:800;letter-spacing:-.01em}
  .pick-close{font-size:13px;font-variant-numeric:tabular-nums;color:var(--muted)}
  .pick-sector{font-size:11.5px;color:var(--muted);margin-top:2px}
  .pick-why{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 0}
  .why-chip{font-size:11px;padding:2px 7px;border-radius:6px;border:1px solid var(--line);color:var(--muted);background:transparent}
  .why-chip.accent{color:var(--text);border-color:var(--muted)}
  .pick-feats{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
  .pick-feats span b{color:var(--text)}

  /* ── book section header ── */
  .book-section{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
  .book-section:first-child{border-top:none;padding-top:0;margin-top:0}
  .book-hd{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}
  .book-name{font-size:16px;font-weight:750}
  .book-sb{font-size:12px;color:var(--muted)}
  .no-picks{font-size:13px;color:var(--muted);padding:14px 0;font-style:italic}
  .stale-banner{font-size:12px;color:var(--warn);padding:9px 13px;margin-top:8px;
    border:1px solid color-mix(in srgb,var(--warn) 50%,var(--line));
    border-left:3px solid var(--warn);border-radius:9px;background:color-mix(in srgb,var(--warn) 6%,var(--panel))}

  /* ── avoid book warning ── */
  .avoid-banner{font-size:12.5px;padding:10px 13px;margin-bottom:10px;
    border:1.5px solid color-mix(in srgb,var(--down) 50%,var(--line));
    border-radius:10px;background:color-mix(in srgb,var(--down) 8%,var(--panel));color:var(--down)}
  .avoid-banner b{color:var(--down)}

  /* ── recent fires table ── */
  .fires-hd{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 6px}
  table.fires-tbl{width:100%;border-collapse:collapse;font-size:12.5px;font-variant-numeric:tabular-nums}
  table.fires-tbl th{text-align:left;padding:5px 8px;border-bottom:1px solid var(--line);color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
  table.fires-tbl td{padding:5px 8px;border-bottom:1px solid var(--line)}
  table.fires-tbl tr:last-child td{border-bottom:none}
  .halt-chip{font-size:10px;font-weight:700;padding:1px 5px;border-radius:5px;
    border:1px solid color-mix(in srgb,var(--warn) 50%,var(--line));
    color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,transparent);margin-left:4px}

  /* ── stale-cross diagnostic (1D tab) ── */
  .stale-cross-box{border:1px solid var(--line);border-radius:12px;padding:14px 16px;
    background:var(--panel);margin-top:20px}
  .stale-cross-box h3{font-size:14px;font-weight:700;margin:0 0 6px}
  .stale-cross-note{font-size:12.5px;color:var(--muted);margin:0 0 10px;line-height:1.5}
  .stale-cross-empty{font-size:12.5px;color:var(--muted);font-style:italic}
  .diag-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:12px}
  @media(max-width:700px){.diag-grid{grid-template-columns:1fr}}
  .diag-col{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--panel2,var(--panel))}
  .diag-col h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 8px}

  /* ── all-books chip selector ── */
  .book-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}
  .book-chip{font-size:12.5px;padding:6px 13px;border:1.5px solid var(--line);border-radius:9px;
    background:transparent;color:var(--muted);cursor:pointer;font-weight:600;transition:.13s}
  .book-chip.on{background:var(--panel2,var(--panel));color:var(--text);border-color:var(--muted)}
  .book-chip .fam{font-size:10px;font-weight:700;color:var(--muted);margin-left:4px}
  .book-chip.chip-avoid{border-color:color-mix(in srgb,var(--down) 40%,var(--line));color:var(--down)}

  /* ── method tab ── */
  .method-body{max-width:78ch;line-height:1.7}
  .method-body h3{font-size:14.5px;font-weight:720;margin:20px 0 6px;color:var(--text)}
  .method-body p{color:var(--muted);font-size:13.5px;margin:0 0 10px}
  .method-body ul{color:var(--muted);font-size:13px;padding-left:18px;margin:0 0 10px}
  .method-body ul li{margin:4px 0}
  .method-body .law{border-left:3px solid var(--link);padding:10px 14px;
    background:color-mix(in srgb,var(--link) 7%,var(--panel));border-radius:0 9px 9px 0;
    margin:12px 0;font-size:13px;color:var(--muted)}
  .method-body .law b{color:var(--text)}
  .method-body .kill-law{border-left:3px solid var(--down);padding:10px 14px;
    background:color-mix(in srgb,var(--down) 6%,var(--panel));border-radius:0 9px 9px 0;
    margin:12px 0;font-size:13px;color:var(--muted)}
  .method-body .kill-law b{color:var(--down)}

  /* ── responsive ── */
  @media(max-width:700px){
    .pl-wrap{padding:0 12px 60px}
    table.sb-tbl{font-size:11.5px}
  }
