
      #panel-reputation .tk-search {
        flex:1 1 240px; min-width:180px; padding:.45rem .7rem; border:1px solid var(--border);
        border-radius:8px; font-family:var(--font-sans); font-size: var(--fs-sm); background:var(--white); color:var(--text);
      }

      /* ── Reputation panel (scoped to #panel-reputation to avoid bleed) ──
         Ordering note: every rule here is prefixed with the panel id, so it
         cannot lose a same-specificity tie to a later generic rule elsewhere
         in this file. */
      #panel-reputation .rp-subtabs { display:flex; gap:2px; border-bottom:1px solid var(--border); margin-bottom:22px; overflow-x:auto; }
      #panel-reputation .rp-subtabs button { border:0; background:none; font-weight:700;font-size:var(--fs-xs);font-family:var(--font-sans); color:var(--text-muted); padding:10px 16px; cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-1px; white-space:nowrap; }
      #panel-reputation .rp-subtabs button.active { color:var(--cerulean); border-bottom-color:var(--ocean); }
      #panel-reputation .rp-subtabs button:hover:not(.active) { color:var(--text-strong); }

      #panel-reputation .rp-stub-card { background:#fff; border:1px dashed var(--border); border-radius:12px; padding:40px 26px; text-align:center; }
      #panel-reputation .rp-stub-badge { display:inline-block; font-size: var(--fs-eyebrow); font-weight:800; letter-spacing:.06em; text-transform:uppercase; padding:3px 10px; border-radius:999px; background:var(--sand); color:#0b4f6c; margin-bottom:12px; }
      #panel-reputation .rp-stub-card b { display:block; font-family:var(--font-display,Georgia,serif); color:var(--text-strong); font-size: var(--fs-lg); margin-bottom:8px; }
      #panel-reputation .rp-stub-card p { max-width:56ch; margin:0 auto 18px; font-size: var(--fs-xs); line-height:1.6; color:var(--text-muted); }

      #panel-reputation .rp-alert { display:flex; gap:14px; align-items:flex-start; background:#fee2e2; border:1px solid #f3b4b4; border-left:4px solid #dc2626; border-radius:10px; padding:14px 16px; margin-bottom:18px; }
      #panel-reputation .rp-alert .t { font-weight:800; color:#8f1d1d; font-size: var(--fs-xs); }
      #panel-reputation .rp-alert .b { font-size: var(--fs-xs); color:#7c2626; margin-top:2px; }

      #panel-reputation .rp-scoreboard { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin-bottom:26px; }
      #panel-reputation .rp-sc { background:#fff; border:1px solid var(--border); border-radius:12px; padding:14px 16px; }
      #panel-reputation .rp-sc .l { font-size: var(--fs-eyebrow); font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--text-muted); }
      #panel-reputation .rp-sc .v { font-family:var(--font-display,Georgia,serif); font-size: var(--fs-2xl); color:var(--text-strong); line-height:1.15; margin-top:4px; letter-spacing:-.5px; }
      #panel-reputation .rp-sc .v small { font-size: var(--fs-sm); color:var(--text-muted); font-family:var(--font-sans); font-weight:600; }
      #panel-reputation .rp-sc .s { font-size: var(--fs-xs); color:var(--text-muted); margin-top:3px; }
      #panel-reputation .rp-bar { height:5px; border-radius:99px; background:#f0ece2; margin-top:9px; overflow:hidden; }
      #panel-reputation .rp-bar i { display:block; height:100%; border-radius:99px; background:var(--ocean); }
      #panel-reputation .rp-stars { color:#c9a96e; letter-spacing:1px; font-size: var(--fs-sm); }

      #panel-reputation .rp-sec { margin-bottom:30px; }
      #panel-reputation .rp-sec-head { display:flex; align-items:center; gap:10px; margin-bottom:4px; }
      #panel-reputation .rp-sec-head h2 { font-family:var(--font-display,Georgia,serif); font-size: var(--fs-lg); color:var(--text-strong); margin:0; }
      #panel-reputation .rp-count { font-size: var(--fs-xs); font-weight:800; padding:2px 9px; border-radius:999px; background:#e6f3f8; color:var(--cerulean); }
      #panel-reputation .rp-count.urgent { background:#fee2e2; color:#8f1d1d; }
      #panel-reputation .rp-count.ok { background:#e6f5ee; color:#157a3a; }
      #panel-reputation .rp-sec-sub { font-size: var(--fs-xs); color:var(--text-muted); margin-bottom:12px; max-width:80ch; line-height:1.5; }

      #panel-reputation #rp-approve-list.rp-card { background:transparent; border:0; border-radius:0; overflow:visible; display:flex; flex-direction:column; gap:12px; }
      #panel-reputation .rp-card { background:#fff; border:1px solid var(--border); border-radius:12px; overflow:hidden; }
      #panel-reputation .rp-bulkbar { display:flex; align-items:center; gap:12px; background:#e6f3f8; border:1px solid #cfe6ef; border-radius:10px; padding:9px 14px; margin-bottom:10px; font-size: var(--fs-xs); font-weight:600; color:var(--cerulean); }
      #panel-reputation .rp-bulkbar input[type=checkbox] { width:16px; height:16px; accent-color:var(--ocean); cursor:pointer; }
      #panel-reputation .rp-bulk-actions { margin-left:auto; display:flex; gap:8px; }

      #panel-reputation .rp-row { display:block; }
      #panel-reputation .rp-row input[type=checkbox] { width:16px; height:16px; accent-color:var(--ocean); cursor:pointer; }
      #panel-reputation .rp-who { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
      #panel-reputation .rp-who b { font-size: var(--fs-sm); color:var(--text-strong); }
      #panel-reputation .rp-msg { font-size: var(--fs-xs); color:var(--text-strong); margin-top:6px; background:#e4f7fc; border:1px solid transparent; border-radius:8px; padding:9px 11px; line-height:1.45; width:100%; font-family:var(--font-sans); resize:vertical; min-height:64px; box-sizing:border-box; }
      #panel-reputation .rp-msg:focus { outline:none; background:#fff; border-color:var(--ocean); box-shadow:0 0 0 3px rgba(26,159,196,.12); }
      #panel-reputation .rp-rowacts { display:flex; flex-direction:row; gap:6px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
      #panel-reputation .rp-tag { font-size: var(--fs-eyebrow); font-weight:800; letter-spacing:.03em; text-transform:uppercase; padding:2px 8px; border-radius:5px; background:var(--sand); color:#0b4f6c; }
      #panel-reputation .rp-tag.step { background:#e6f3f8; color:var(--cerulean); }
      #panel-reputation .rp-tag.stale { background:#fee2e2; color:#8f1d1d; }
      #panel-reputation .rp-tag.warn { background:#fef3e0; color:#9a5b00; }
      #panel-reputation .rp-tag.good { background:#e6f5ee; color:#157a3a; }
      #panel-reputation .rp-meta { font-size: var(--fs-xs); color:var(--text-muted); margin-top:2px; }
      #panel-reputation .rp-stage { display:flex; align-items:center; gap:9px; margin-top:7px; flex-wrap:wrap; }
      #panel-reputation .rp-stage-txt { font-size: var(--fs-xs); color:var(--text-muted); font-weight:600; }
      #panel-reputation .rp-warnline { font-size: var(--fs-xs); color:#9a5b00; font-weight:600; margin-top:6px; }

      #panel-reputation .rp-rev { padding:16px 18px; border-bottom:1px solid #f0ece2; }
      #panel-reputation .rp-rev:last-child { border-bottom:0; }
      #panel-reputation .rp-rev.bad { background:#fffafa; border-left:4px solid #dc2626; }
      #panel-reputation .rp-rev-head { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:8px; }
      #panel-reputation .rp-rev-body { font-size: var(--fs-sm); color:var(--text-strong); line-height:1.55; font-style:italic; }
      #panel-reputation .rp-rev-attr { font-size: var(--fs-xs); color:var(--text-muted); font-weight:600; margin-top:8px; }
      #panel-reputation .rp-nodraft { background:#fee2e2; border:1px solid #f3b4b4; border-radius:10px; padding:12px 14px; margin-top:12px; font-size: var(--fs-xs); color:#7c2626; }
      #panel-reputation .rp-nodraft b { display:block; color:#8f1d1d; margin-bottom:3px; font-size: var(--fs-xs); }
      #panel-reputation .rp-reply { width:100%; margin-top:12px; padding:10px 12px; border:1px solid var(--border); border-radius:9px; font-weight:400;font-size:var(--fs-xs);font-family:var(--font-sans); color:var(--text-strong); min-height:76px; resize:vertical; box-sizing:border-box; }
      #panel-reputation .rp-reply:focus { outline:none; border-color:var(--ocean); box-shadow:0 0 0 3px rgba(26,159,196,.12); }
      #panel-reputation .rp-rev-acts { display:flex; gap:8px; margin-top:10px; align-items:center; flex-wrap:wrap; }

      #panel-reputation .rp-qrow { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:14px; align-items:center; padding:12px 16px; border-bottom:1px solid #f0ece2; }
      #panel-reputation .rp-qrow:last-child { border-bottom:0; }
      #panel-reputation .rp-dots { display:flex; gap:5px; align-items:center; }
      #panel-reputation .rp-dot { width:9px; height:9px; border-radius:50%; background:#e8e2d8; }
      #panel-reputation .rp-dot.done { background:var(--ocean); }
      #panel-reputation .rp-dot.now { background:#c9a96e; box-shadow:0 0 0 3px rgba(201,169,110,.25); }
      #panel-reputation .rp-when { font-size: var(--fs-xs); color:var(--text-muted); font-weight:600; text-align:right; }
      #panel-reputation .rp-when.due { color:#9a5b00; }

      #panel-reputation .rp-libtools { display:flex; gap:8px; margin-bottom:12px; flex-wrap:wrap; align-items:center; }
      #panel-reputation .rp-libtools .tk-search { flex:1; min-width:220px; }
      #panel-reputation .rp-chips { display:flex; gap:6px; flex-wrap:wrap; }
      #panel-reputation .rp-chip { font-weight:600;font-size:var(--fs-xs);font-family:var(--font-sans); padding:6px 12px; border-radius:999px; border:1px solid var(--border); background:#fff; color:var(--text-muted); cursor:pointer; }
      #panel-reputation .rp-chip.active { background:var(--cerulean); border-color:var(--cerulean); color:#fff; }
      #panel-reputation .rp-libgrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:12px; }
      #panel-reputation .rp-lib { background:#fff; border:1px solid var(--border); border-radius:12px; padding:14px 16px; display:flex; flex-direction:column; }
      #panel-reputation .rp-lib .q { font-size: var(--fs-xs); color:var(--text-strong); line-height:1.5; font-style:italic; flex:1; }
      #panel-reputation .rp-lib .f { display:flex; align-items:center; gap:8px; margin-top:11px; padding-top:10px; border-top:1px solid #f0ece2; flex-wrap:wrap; }
      #panel-reputation .rp-lib .f .n { font-size: var(--fs-xs); font-weight:700; color:var(--text-strong); }
      #panel-reputation .rp-fits { display:flex; gap:5px; flex-wrap:wrap; margin-top:9px; }
      #panel-reputation .rp-fit { font-size: var(--fs-xs); font-weight:700; padding:2px 7px; border-radius:5px; background:var(--sand); color:#0b4f6c; cursor:pointer; border:0; font-family:var(--font-sans); }
      #panel-reputation .rp-fit.on { background:var(--ocean); color:#fff; }

      #panel-reputation .rp-empty { padding:26px; text-align:center; color:var(--text-muted); font-size: var(--fs-xs); }
      #panel-reputation .rp-empty b { display:block; color:var(--text-strong); font-size: var(--fs-sm); margin-bottom:3px; }

      @media (max-width:1000px) { #panel-reputation .rp-scoreboard { grid-template-columns:repeat(2,minmax(0,1fr)); } }
      @media (max-width:720px) {
        #panel-reputation .rp-scoreboard { grid-template-columns:1fr; }
        #panel-reputation .rp-qrow { grid-template-columns:1fr; }
        #panel-reputation .rp-when { text-align:left; }
      }

      /* Tasks: pointer to the Reputation approval lane + flagged-customer block */
      #panel-tasks .tk-pointer { display:flex; align-items:center; gap:14px; background:#fef3e0; border:1px solid #f0d08a; border-radius:10px; padding:12px 16px; margin:20px 0 0; }
      #panel-tasks .tk-pointer-body { font-size: var(--fs-xs); color:#9a5b00; }
      #panel-tasks .tk-pointer-body b { font-weight:800; }
      #panel-tasks .tk-pointer button { margin-left:auto; flex-shrink:0; }
      #panel-tasks .tk-flagged { margin-top:34px; padding-top:22px; border-top:1px solid var(--border); margin-bottom:3.5rem; }
      #panel-tasks .tk-flagged-sub { font-size: var(--fs-xs); color:var(--text-muted); margin:-4px 0 14px; max-width:80ch; line-height:1.5; }

      /* ── Pipeline (js/15-partners-leads.js). The board and the Closed table are the shared MBoard and MTable
            (m-components.css); only the page's own layout lives here. ── */
      #panel-pipeline .pl-top { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
      #panel-pipeline .pl-search { flex:1 1 320px; min-width:300px; max-width:480px; }
      #panel-pipeline .pl-counts { display:flex; align-items:center; gap:10px; }
      #panel-pipeline .pl-new { flex:none; white-space:nowrap; margin-left:auto; }
      @media (min-width:861px) { #panel-pipeline .pl-new { min-height:40px; } }
      #panel-pipeline .pl-nowrap { white-space:nowrap; }
      #panel-pipeline .pl-stagechip, #panel-pipeline .pl-phone-only { display:none; }
      #panel-pipeline .m-table td, #panel-pipeline .m-table th { padding-left:12px; padding-right:12px; }
      /* Stage colours are STATE, so they reuse status and brand tokens that resolve (no new hue). Contrast on the column
         surface (--tf-ink-050), measured: New 4.65, Engaged 6.61, Qualified 5.13, Quoted 10.96, Won 5.12, Lost 4.25.
         Not a lead is the brand gold at 2.12: below 3:1, so it is never the only carrier; its name always sits beside it. */
      .pl-dot--new { background:var(--tf-ocean-700); }
      .pl-dot--engaged { background:var(--tf-cerulean-600); }
      .pl-dot--qualified { background:var(--status-warning-text); }
      .pl-dot--quoted { background:var(--tf-cerulean-700); }
      .pl-dot--won { background:var(--status-success-text); }
      .pl-dot--lost { background:var(--tf-coral); }
      .pl-dot--notlead { background:var(--tf-saffron); }
      .pl-accent--new { --m-accent:var(--tf-ocean-700); }
      .pl-accent--engaged { --m-accent:var(--tf-cerulean-600); }
      .pl-accent--qualified { --m-accent:var(--status-warning-text); }
      .pl-accent--quoted { --m-accent:var(--tf-cerulean-700); }
      /* The closed-this-month strip: a quiet caption and state-coloured numerals (a zero goes pale, so the live ones stand out). */
      #panel-pipeline .pl-summary { display:flex; align-items:center; gap:14px; margin:-4px 0 16px; }
      #panel-pipeline .pl-capt { font-size:.6875rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-muted); white-space:nowrap; }
      #panel-pipeline .pl-cnt--won:not(.is-zero) b { color:var(--status-success-text); }
      #panel-pipeline .pl-cnt--lost:not(.is-zero) b { color:var(--tf-coral-text); }
      #panel-pipeline .pl-tags { display:flex; gap:4px; overflow:hidden; }
      #panel-pipeline .pl-filters { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
      #panel-pipeline .pl-filters .pl-chips { margin-bottom:0; flex:1; }
      #panel-pipeline .pl-stage { flex:none; min-width:150px; }
      #panel-pipeline .pl-stage select { min-height:40px; font-size:.875rem; padding-top:0; padding-bottom:0; }
      #panel-pipeline .pl-chips { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:16px; }
      #panel-pipeline .pl-chips .m-chip-btn b, #panel-pipeline .pl-counts .m-chip-btn b { color:var(--tf-ocean-800); }
      #panel-pipeline .pl-quiet { margin-left:auto; display:inline-flex; align-items:center; gap:6px; font-size: var(--fs-xs); color:var(--status-warning-text); }
      #panel-pipeline .pl-link { all:unset; cursor:pointer; min-height:44px; display:inline-flex; align-items:center; padding:0 4px; font-weight:700; color:var(--tf-ocean-800); text-decoration:underline; }
      #panel-pipeline .pl-link:focus-visible { outline:2px solid var(--tf-ocean-800); outline-offset:2px; }
      #panel-pipeline .m-table-bar .m-field { min-width:150px; }
      #panel-pipeline .m-table-bar .m-table-action { align-self:flex-end; }
      #lead-drawer-actions .m-btn { flex:1 1 calc(50% - 8px); min-width:0; }
      #lead-drawer-actions .m-btn:first-child { flex-basis:100%; }
      #panel-pipeline .pl-dr-tags { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
      #pw-opts { display:flex; flex-direction:column; gap:8px; }
      #s-pipe-link .m-row.on { border-color:var(--tf-ocean-800); background:var(--tf-aqua-050); }
      .pk-callout { margin-top:12px; padding:11px 13px; border-radius:10px; background:var(--tf-aqua-050); color:var(--tf-cerulean); font-size: var(--fs-sm); line-height:1.4; }
      .pk-callout.warn { background:var(--status-warning-soft); color:var(--status-warning-text); }
      .pk-dup { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:10px; font-size: var(--fs-sm); }
      /* Vertical rhythm on desktop: 24 / 24 / 20 / 28 between toolbar, strip, chips and the lanes, and room above the toolbar. */
      @media (min-width:861px) {
        #panel-pipeline main { padding-top:28px; }
        #panel-pipeline .pl-top { margin-bottom:24px; }
        #panel-pipeline .pl-summary { margin:0 0 24px; }
        #panel-pipeline .pl-filters, #panel-pipeline .pl-chips { margin-bottom:28px; }
        #panel-pipeline .pl-filters .pl-chips { margin-bottom:0; }
        #panel-pipeline .m-table-bar { margin-bottom:24px; }
        #panel-pipeline .m-table-foot { margin-top:16px; }
      }

      @media (max-width:860px) {
        /* Phone (from the approved prototype): search and New on one row, the view switch under it, the counters and chips as
           single scrolling lines, the board as count tabs, List and Closed as card rows. Nothing scrolls sideways. */
        #panel-pipeline .pl-top { flex-wrap:wrap; gap:10px; margin-bottom:8px; }
        #panel-pipeline .pl-search { flex:1 1 0; min-width:0; max-width:none; order:1; }
        #panel-pipeline .pl-new { order:2; margin-left:0; padding:0 14px; }
        #panel-pipeline .pl-seg { order:3; flex:1 1 100%; display:flex; }
        #panel-pipeline .pl-seg > button { flex:1 1 0; padding:0 4px; }
        #panel-pipeline .pl-capt-long { display:none; }
        #panel-pipeline .pl-counts { gap:6px; }
        #panel-pipeline .m-countlink { padding:0 1px; font-size:.75rem; }
        #panel-pipeline .m-countlink b { font-size:1.0625rem; margin-right:3px; }
        #panel-pipeline .m-countlink .m-dot { margin-right:4px; }
        #panel-pipeline .pl-summary { gap:10px; overflow-x:auto; scrollbar-width:none; margin:0 0 8px; }
        #panel-pipeline .pl-counts .m-countlink { flex:none; }
        #panel-pipeline.pl-closed .pl-summary { display:none; }
        #panel-pipeline .pl-filters { margin-bottom:8px; }
        #panel-pipeline .pl-chips { flex-wrap:nowrap; overflow-x:auto; margin-bottom:8px; scrollbar-width:none; }
        #panel-pipeline .pl-chips .m-chip-btn { flex:none; }
        #panel-pipeline .pl-stagechip { display:inline-flex; }
        #panel-pipeline .pl-stage { display:none; }
        #panel-pipeline .pl-phone-only { display:block; }
        #panel-pipeline #pl-table, #panel-pipeline #pl-closed-view .m-table-bar { display:none; }
        #panel-pipeline .pl-outs { display:flex; gap:8px; overflow-x:auto; padding:4px 0 10px; scrollbar-width:none; }
        #panel-pipeline .pl-outs .m-chip-btn { flex:none; }
        #panel-pipeline .pl-cards, #panel-pipeline #pl-crows { margin-top:2px; }
        #panel-pipeline .m-row .m-row-d { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
        #panel-pipeline .m-row .m-bc-tags { margin-top:6px; }
        #panel-pipeline .m-table-foot { margin-top:12px; }
      }

      /* Lead drawer: the timeline and history rows (the fields, tags and buttons are shared components) */
      #lead-drawer .lead-timeline { display:flex; flex-direction:column; gap:.7rem; }
      #lead-drawer .tl { display:flex; gap:.6rem; align-items:flex-start; }
      #lead-drawer .tl .tl-ic { width:26px; height:26px; border-radius:7px; background:var(--aqua-soft); color:var(--cerulean); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
      #lead-drawer .tl .tl-ic.out { background:var(--ocean); color:var(--tf-white); }
      #lead-drawer .tl .tl-m { font-size: var(--fs-xs); color:var(--text-muted); font-weight:600; margin-bottom:.15rem; }
      #lead-drawer .tl .tl-b { font-size: var(--fs-sm); color:var(--text-strong); line-height:1.4; }
      #lead-drawer .tl-empty { font-size: var(--fs-sm); color:var(--text-muted); padding:.5rem 0; }

      /* New-lead modal labels */
      #new-lead-modal .pipe-lbl { display:block; font-size: var(--fs-xs); font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin:.7rem 0 .3rem; }

      /* ── Reputation on a phone (03-reputation.js: initReputationPhone, rpOpenMore) ──
         One slim strip instead of five cards, five sub-tabs as one chip and a picker, four lanes as four count
         tabs (what needs a decision first), one primary action per card with Skip ahead and Stop asking behind the
         more button, every control 44px, every field 16px. From 861px the page is exactly what it was. */
      @media (min-width:861px) {
        #panel-reputation .rp-sub-chip.m-chip-btn, #panel-reputation .rp-lanes, #panel-reputation .rp-more.m-iconbtn { display:none; }
      }
      @media (max-width:860px) {
        #panel-reputation .rp-subtabs { display:none; }
        #panel-reputation .rp-sub-chip { margin-bottom:12px; }
        #panel-reputation .rp-scoreboard { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-bottom:12px; }
        #panel-reputation .rp-sc:nth-child(n+4) { display:none; }
        #panel-reputation .rp-sc { padding:10px 8px; text-align:center; }
        #panel-reputation .rp-sc .s { display:none; }
        #panel-reputation .rp-sc .l { font-size:.6875rem; }
        #panel-reputation .rp-sc .v { font-size:1.35rem; }
        #panel-reputation .rp-sc .v small { display:none; }
        #panel-reputation .rp-lanes { position:static; padding:0; margin-bottom:12px; gap:6px; }
        #panel-reputation .rp-sec { display:none; margin-bottom:16px; }
        #panel-reputation .rp-sec.rp-on { display:block; }
        #panel-reputation .rp-sec-head { display:none; }
        #panel-reputation .rp-sec-sub { margin-bottom:10px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
        #panel-reputation .rp-card { border:0; background:transparent; overflow:visible; display:flex; flex-direction:column; gap:10px; }
        #panel-reputation .rp-rev, #panel-reputation .rp-qrow { background:var(--tf-white); border:1px solid var(--tf-ink-100); border-radius:14px; }
        #panel-reputation .rp-row input[type=checkbox], #panel-reputation .rp-bulkbar input[type=checkbox] { width:24px; height:24px; margin:0; }
        #panel-reputation .rp-selwrap { display:flex; align-items:flex-start; justify-content:center; min-width:44px; min-height:44px; margin:-10px 0 0 -12px; padding-top:10px; box-sizing:border-box; }
        #panel-reputation .rp-rowacts [data-act="stop"], #panel-reputation .rp-rowacts [data-act="skip"] { display:none; }
        #panel-reputation .rp-rowacts { flex-wrap:nowrap; }
        #panel-reputation .rp-rowacts [data-act="approve"] { flex:1; }
        #panel-reputation .rp-bulkbar { flex-wrap:wrap; }
        #panel-reputation .rp-bulk-actions { width:100%; margin-left:0; flex-wrap:wrap; }
        #panel-reputation .rp-bulk-actions .tk-btn { flex:1 1 140px; min-width:0; }
        #panel-reputation .rp-msg, #panel-reputation .rp-reply, #panel-reputation .tk-search { font-size:1rem; min-height:96px; }
        #panel-reputation .tk-search { min-height:48px; }
        #panel-reputation .tk-btn { min-height:44px; }
        #panel-reputation .rp-rev-acts .tk-btn { flex:1 1 140px; }
        #panel-reputation .rp-chip { min-height:44px; }
        #panel-reputation .rp-fit { min-height:44px; display:inline-flex; align-items:center; }
        #panel-reputation .rp-libgrid { grid-template-columns:1fr; }
      }

      /* Shell pass 2026-10-20: one-line stat strip, section toggle, "How asks go out" link. */
      #panel-reputation .rp-scoreboard { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 18px; padding:10px 14px; background:#fff; border:1px solid var(--border); border-radius:12px; margin-bottom:18px; font-size:var(--fs-sm); color:var(--text-muted); }
      #panel-reputation .rp-scoreboard b { color:var(--text-strong); font-family:var(--font-display); font-size:1.0625rem; }
      #panel-reputation .rp-how-link { display:inline-flex; align-items:center; margin:0 0 8px -6px; }
      #panel-reputation .rp-how-body { margin:0; line-height:1.55; color:var(--text-body); }
      @media (min-width:861px) { #panel-reputation .rp-seg { display:none; } }
      @media (max-width:860px) {
        #panel-reputation .rp-seg { display:flex; margin-bottom:12px; }
        #panel-reputation .rp-seg > button { flex:1 1 0; }
        #panel-reputation .rp-scoreboard { display:flex; grid-template-columns:none; gap:2px 12px; padding:8px 12px; margin-bottom:12px; font-size:.8125rem; }
        #panel-reputation .rp-sc { display:none; }
      }
