/* Trenches view (dist/trenches.js): a dense screener table (sticky header, sticky token column), source chips, filter
   panel, presets and a totals footer; cards on phones. Zyper tokens of style.css only. */
#trenches-view{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0;--tr-row-bg:rgb(var(--z-surface));--tr-row-hover:color-mix(in srgb,rgb(var(--z-surface)) 93%,rgb(var(--z-text)))}
#trenches-view[hidden]{display:none}
main[data-view="trenches"] .page-title{display:none}
.tr-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}
.tr-title{margin:0;font-size:1.058824rem;font-weight:500;letter-spacing:-.02em}
.tr-seg{display:inline-flex;gap:2px;padding:2px;border-radius:999px;background:var(--z-surface2);border:1px solid var(--z-border)}
.tr-seg button{padding:4px 11px;font-size:.705882rem;border:0;border-radius:999px;background:transparent;box-shadow:none;color:rgb(var(--z-textDim));white-space:nowrap}
.tr-seg button:hover{color:rgb(var(--z-text));background:var(--z-surface3)}
.tr-seg button[aria-pressed="true"]{background:var(--z-surface3);color:rgb(var(--z-text));box-shadow:inset 0 -1px rgb(var(--z-accent))}
.tr-tf button{padding:3px 10px;font-family:var(--z-font-mono);font-size:.647059rem}
.tr-live{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:.647059rem;color:rgb(var(--z-muted));font-family:var(--z-font-mono);white-space:nowrap}
.tr-live i{width:6px;height:6px;background:rgb(var(--z-muted))}
.tr-live.tr-on i{background:rgb(var(--z-success));box-shadow:var(--z-live-glow)}
.tr-live.tr-warn,.tr-live.tr-warn .tr-status{color:rgb(var(--z-warn))}
.tr-live.tr-warn i{background:rgb(var(--z-warn))}

/* Source chips: launchpads (Solana) / quote tokens (Robinhood) with counts */
.tr-sources{display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;min-width:0;padding-bottom:1px}
.tr-sources::-webkit-scrollbar{display:none}
.tr-src-label{flex-shrink:0;margin-right:2px;font-size:.558824rem;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--z-muted))}
#trenches-view .tr-src{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-size:.647059rem;border-radius:999px;background:transparent;box-shadow:none;color:rgb(var(--z-textDim));white-space:nowrap}
#trenches-view .tr-src b{font-weight:500;font-family:var(--z-font-mono);font-size:.588235rem;color:rgb(var(--z-muted))}
#trenches-view .tr-src[aria-pressed="true"]{color:rgb(var(--z-text));border-color:rgb(var(--z-accent)/.5);background:rgb(var(--z-accent)/.08)}
#trenches-view .tr-src[aria-pressed="true"] b{color:rgb(var(--z-accent))}

/* Board: toolbar, table, totals */
.tr-col{min-width:0;display:flex;flex-direction:column;background:var(--z-panel-bg);border:1px solid var(--z-panel-border);box-shadow:var(--z-panel-shadow);border-radius:12px;overflow:hidden}
.tr-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:8px 12px;border-bottom:1px solid var(--z-border)}
.tr-bar-title{font-size:.764706rem;font-weight:500;white-space:nowrap}
.tr-count{font-size:.588235rem;font-family:var(--z-font-mono);padding:1px 6px;border-radius:999px;background:var(--z-surface3);color:rgb(var(--z-textDim))}
.tr-bar .tip{margin-left:-4px}
.tr-grow{flex:1}
.tr-paused{font-size:.558824rem;letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--z-warn))}
.tr-sortbox{display:none;align-items:center;gap:4px;color:rgb(var(--z-muted))}
.tr-sort{padding:4px 6px;font-size:.647059rem;background:var(--z-input-bg);border:1px solid var(--z-input-border);border-radius:6px;color:rgb(var(--z-text))}
#trenches-view .tr-dir{padding:3px 7px;font-size:.529412rem;line-height:1.6}
#trenches-view .tr-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:.705882rem}
.tr-filter-n{min-width:16px;padding:0 5px;border-radius:999px;background:rgb(var(--z-accent));color:rgb(var(--z-bg));font-size:.588235rem;font-family:var(--z-font-mono);text-align:center}
.tr-filter-n[hidden]{display:none}
.tr-presets{display:inline-flex;border:1px solid var(--z-btn-border);border-radius:7px;overflow:hidden}
#trenches-view .tr-preset{padding:4px 9px;font-size:.647059rem;font-family:var(--z-font-mono);border:0;border-radius:0;box-shadow:none}
#trenches-view .tr-preset+.tr-preset{border-left:1px solid var(--z-btn-border)}
#trenches-view .tr-preset[data-empty="true"]{color:rgb(var(--z-muted));background:transparent}

.tr-scroll{overflow:auto;min-width:0;max-height:min(78vh,1100px);overscroll-behavior-x:contain}
.tr-table{display:flex;flex-direction:column;min-width:1090px}
.tr-tr{display:grid;grid-template-columns:minmax(250px,2.3fr) 76px 92px 92px 80px 96px 100px minmax(136px,1fr) 84px;column-gap:10px;align-items:center;min-height:62px;padding:0 12px;border-bottom:1px solid var(--z-border);background:var(--tr-row-bg)}
.tr-tr:not(.tr-th):hover,.tr-tr:not(.tr-th):hover .tr-c-token{background:var(--tr-row-hover)}
.tr-cell{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:8px 0}
.tr-c-token{position:sticky;left:0;z-index:1;flex-direction:row;align-items:center;gap:10px;margin-left:-12px;padding-left:12px;padding-right:6px;background:var(--tr-row-bg);align-self:stretch}
.tr-th{position:sticky;top:0;z-index:3;min-height:0;background:rgb(var(--z-surface));border-bottom-color:var(--z-borderHi)}
.tr-th .tr-cell{flex-direction:row;align-items:center;justify-content:flex-start;gap:0;padding:7px 0;font-size:.558824rem;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--z-muted));white-space:nowrap}
.tr-th .tr-c-token{z-index:4;background:rgb(var(--z-surface))}
#trenches-view .tr-sortbtn{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;box-shadow:none;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;white-space:nowrap}
#trenches-view .tr-sortbtn:hover{color:rgb(var(--z-text))}
.tr-arrow{width:auto;height:auto;border-radius:0;background:none;font-style:normal;font-size:.47rem;opacity:.3}
.tr-arrow.on{opacity:1;color:rgb(var(--z-accent))}
.tr-th .tip{margin-left:4px;width:12px;height:12px;font-size:8px}
.tr-c-act{flex-direction:column;align-items:flex-end;gap:4px}
.tr-empty{margin:0;padding:28px 12px;text-align:center;font-size:.705882rem;color:rgb(var(--z-muted))}

/* Token cell */
.tr-av{position:relative;flex:0 0 32px;width:32px;height:32px}
.tr-logo{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--z-surface3);box-shadow:inset 0 0 0 1px var(--z-border);font-size:.705882rem;font-weight:600;color:rgb(var(--z-text))}
.tr-chain{position:absolute;right:-3px;bottom:-3px;width:13px;height:13px;border-radius:50%;border:2px solid var(--tr-row-bg);box-sizing:border-box}
.tr-chain-sol{background:linear-gradient(135deg,#9945ff 10%,#19fb9b 90%)}
.tr-chain-rh{background:#c3f53c}
.tr-names{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.tr-top{display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap}
.tr-sym{flex-shrink:1;min-width:0;font-size:.823529rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;max-width:13ch}
.tr-quote{flex-shrink:0;font-size:.647059rem;color:rgb(var(--z-muted))}
.tr-ca{flex-shrink:0;margin-left:4px;font-size:.588235rem;font-family:var(--z-font-mono);color:rgb(var(--z-muted))}
#trenches-view .tr-copy{width:18px;height:18px;margin:0;flex-shrink:0}
.tr-badges{display:flex;flex-wrap:wrap;gap:3px;min-width:0}
#trenches-view .tr-badge{display:inline-flex;align-items:center;gap:3px;width:auto;min-width:0;height:auto;min-height:0;margin:0;padding:0 5px;font-size:.529412rem;font-weight:500;font-family:var(--z-font-mono);line-height:1.6;letter-spacing:0;border-radius:4px;border:1px solid var(--z-border);background:var(--z-surface2);box-shadow:none;color:rgb(var(--z-textDim));white-space:nowrap;cursor:help}
#trenches-view .tr-badge svg{flex-shrink:0;opacity:.8}
#trenches-view .tr-badge.tr-good{color:rgb(var(--z-success));border-color:rgb(var(--z-success)/.22)}
#trenches-view .tr-badge.tr-warn{color:rgb(var(--z-warn));border-color:rgb(var(--z-warn)/.35);background:rgb(var(--z-warn)/.07)}
#trenches-view .tr-badge.tr-bad{color:rgb(var(--z-danger));border-color:rgb(var(--z-danger)/.38);background:rgb(var(--z-danger)/.08)}
#trenches-view .tr-badge.tr-new{color:rgb(var(--z-success))}
#trenches-view .tr-badge.tr-pad{color:rgb(var(--z-accent));border-color:rgb(var(--z-accent)/.3)}
#trenches-view .tr-badge.tr-pending{color:rgb(var(--z-muted));border-style:dashed;animation:tr-pulse 1.4s ease-in-out infinite}
#trenches-view .tr-badge.tr-mute{color:rgb(var(--z-muted));background:transparent}
@keyframes tr-pulse{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){#trenches-view .tr-badge.tr-pending{animation:none}}

/* Number cells: value over a smaller change / detail line */
.tr-v{font-family:var(--z-font-mono);font-variant-numeric:tabular-nums;font-size:.705882rem;color:rgb(var(--z-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tr-s{font-family:var(--z-font-mono);font-variant-numeric:tabular-nums;font-size:.588235rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:rgb(var(--z-textDim))}
.tr-v.up,.tr-s.up{color:rgb(var(--z-success))}
.tr-v.dn,.tr-s.dn{color:rgb(var(--z-danger))}
.tr-v.mute,.tr-s.mute{color:rgb(var(--z-muted))}
.tr-spike{font-size:.764706rem;font-weight:600}
.tr-bars{display:block}
.tr-bars rect{fill:rgb(var(--z-text)/.22)}
.tr-bars rect.tr-bar-now{fill:rgb(var(--z-accent))}
.tr-bs{display:flex;justify-content:space-between;gap:8px}
.tr-bs b{font-weight:500}
.tr-bs .up{color:rgb(var(--z-success))}
.tr-bs .dn{color:rgb(var(--z-danger))}
.tr-meter{display:block;height:3px;border-radius:2px;background:rgb(var(--z-danger)/.85);overflow:hidden}
.tr-fill{display:block;height:3px;background:rgb(var(--z-success))}
.tr-org.tr-warn{color:rgb(var(--z-warn))}
.tr-org.tr-bad{color:rgb(var(--z-danger))}
#trenches-view .tr-open{padding:4px 14px;font-size:.647059rem;font-weight:600;border-radius:6px;background:rgb(var(--z-accent));color:rgb(var(--z-bg));border:1px solid rgb(var(--z-accent));box-shadow:none}
#trenches-view .tr-open:hover{background:rgb(var(--z-accent)/.85)}
#trenches-view .tr-open:disabled{opacity:.6}
#trenches-view .tr-open-sm{padding:3px 10px}
#trenches-view .tr-pools{padding:1px 7px;font-size:.558824rem;font-family:var(--z-font-mono);border-radius:5px;background:transparent;box-shadow:none;color:rgb(var(--z-textDim));white-space:nowrap}
#trenches-view .tr-pools[aria-expanded="true"]{color:rgb(var(--z-accent));border-color:rgb(var(--z-accent)/.5)}

/* Totals footer */
.tr-foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px;padding:8px 12px;border-top:1px solid var(--z-borderHi);background:rgb(var(--z-surface));font-size:.588235rem;color:rgb(var(--z-muted))}
.tr-tot{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap}
.tr-tot b{font-weight:500;font-family:var(--z-font-mono);font-variant-numeric:tabular-nums;font-size:.647059rem;color:rgb(var(--z-text))}
.tr-tot+.tr-tot::before{content:'';align-self:center;width:1px;height:10px;margin-right:12px;background:var(--z-border)}
.tr-foot-note{margin-left:auto;white-space:nowrap}
.tr-note{margin:0;font-size:.588235rem;color:rgb(var(--z-muted));line-height:1.5}
.tr-muted{font-size:.647059rem;color:rgb(var(--z-muted))}

/* "n pools" popover */
.tr-pools-pop{position:absolute;z-index:31;width:min(440px,calc(100% - 8px));max-height:320px;overflow:auto;background:rgb(var(--z-surface));border:1px solid var(--z-borderHi);border-radius:10px;box-shadow:var(--z-panel-shadow),0 22px 48px -18px rgb(0 0 0/.7)}
.tr-pools-pop[hidden]{display:none}
.tr-pp-top{display:flex;align-items:baseline;gap:8px;padding:9px 12px;border-bottom:1px solid var(--z-border)}
.tr-pp-top b{font-size:.705882rem;font-weight:500}
.tr-pp-row{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 12px;border-bottom:1px solid var(--z-border)}
.tr-pp-row:last-child{border-bottom:0}
.tr-pp-this{background:var(--z-surface2)}
.tr-pp-name{font-size:.647059rem;white-space:nowrap}
.tr-pp-nums{font-size:.588235rem;font-family:var(--z-font-mono);color:rgb(var(--z-muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Filter panel */
.tr-panel{position:absolute;top:96px;right:0;z-index:30;display:flex;flex-direction:column;width:min(640px,100%);max-height:min(78vh,760px);background:rgb(var(--z-surface));border:1px solid var(--z-borderHi);border-radius:12px;box-shadow:var(--z-panel-shadow),0 22px 48px -18px rgb(0 0 0/.7)}
.tr-panel[hidden]{display:none}
.tr-p-top{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--z-border)}
.tr-p-top b{font-size:.882353rem;font-weight:500}
#trenches-view .tr-x{margin-left:auto;padding:4px 10px;font-size:.647059rem}
.tr-p-body{overflow:auto;padding:12px 14px;display:flex;flex-direction:column;gap:14px}
.tr-p-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tr-p-text{display:flex;flex-direction:column;gap:5px;font-size:.647059rem;color:rgb(var(--z-textDim))}
.tr-p-text input,.tr-p-num input{width:100%;min-width:0;padding:7px 9px;font-size:.705882rem;background:var(--z-input-bg);border:1px solid var(--z-input-border);border-radius:6px;color:rgb(var(--z-text))}
.tr-p-h{display:flex;align-items:center;gap:6px;margin-bottom:7px}
.tr-p-h b{font-size:.705882rem;font-weight:500}
#trenches-view .tr-link{margin-left:auto;padding:2px 8px;font-size:.588235rem;background:transparent;box-shadow:none}
.tr-chips{display:flex;flex-wrap:wrap;gap:6px}
#trenches-view .tr-chip-btn{padding:4px 11px;font-size:.647059rem;border-radius:999px;background:transparent;box-shadow:none;color:rgb(var(--z-muted))}
#trenches-view .tr-chip-btn[aria-pressed="true"]{color:rgb(var(--z-accent));border-color:rgb(var(--z-accent)/.5);background:rgb(var(--z-accent)/.08)}
.tr-p-checks{display:flex;flex-wrap:wrap;gap:8px 18px}
.tr-check{display:inline-flex;align-items:center;gap:7px;font-size:.705882rem;color:rgb(var(--z-textDim))}
.tr-p-metrics{display:flex;flex-direction:column;gap:6px}
.tr-p-row{display:grid;grid-template-columns:minmax(0,1fr) 140px 140px;gap:8px;align-items:center}
.tr-p-label{font-size:.705882rem;color:rgb(var(--z-textDim))}
.tr-p-num{position:relative;display:block}
.tr-p-num input{padding-right:34px;font-family:var(--z-font-mono)}
.tr-unit{position:absolute;right:9px;top:50%;transform:translateY(-50%);font-size:.588235rem;color:rgb(var(--z-muted));pointer-events:none}
.tr-p-foot{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--z-border)}
#trenches-view .tr-ghost{padding:6px 12px;font-size:.647059rem}
#trenches-view .tr-apply{padding:6px 18px;font-size:.705882rem;font-weight:600;background:rgb(var(--z-accent));color:rgb(var(--z-bg));border:1px solid rgb(var(--z-accent));box-shadow:none}

/* Desktop workspace (main scrolls, workspace.css): the board fills the height, the table scrolls inside it. */
@media(min-width:1151px) and (min-height:700px){
 main[data-view="trenches"]{display:flex;flex-direction:column;padding-top:18px}
 main[data-view="trenches"] #trenches-view{flex:1;min-height:0}
 main[data-view="trenches"] footer{padding:8px 0}
 #trenches-view .tr-col{flex:1;min-height:320px}
 #trenches-view .tr-scroll{flex:1;min-height:0;max-height:none}
}
@media(max-width:850px){
 .tr-live{margin-left:0;flex-basis:100%}
 .tr-foot-note{display:none}
}
/* Phones: rows become cards (token line + badges, three key numbers, Open). */
@media(max-width:600px){
 .tr-head{gap:8px 10px}
 .tr-bar{padding:8px 10px}
 .tr-bar>.tip{display:none}
 .tr-sortbox{display:inline-flex}
 .tr-scroll{max-height:none;overflow:visible}
 .tr-table{min-width:0}
 .tr-th{display:none}
 .tr-tr{grid-template-columns:repeat(3,minmax(0,1fr)) auto;grid-template-areas:"tok tok tok tok" "a b c act";column-gap:8px;row-gap:2px;padding:8px 10px 9px;min-height:0}
 .tr-c-token{grid-area:tok;position:static;margin:0;padding:0 0 4px;align-self:auto}
 .tr-c-spike{grid-area:a}.tr-c-vol{grid-area:b}.tr-c-liq{grid-area:c}.tr-c-act{grid-area:act;flex-direction:column;justify-content:center}
 .tr-c-price,.tr-c-vt,.tr-c-mc,.tr-c-flow{display:none}
 .tr-c-spike,.tr-c-vol,.tr-c-liq{padding:2px 0;gap:1px}
 .tr-c-spike::before,.tr-c-vol::before,.tr-c-liq::before{content:attr(data-label);font-size:.5rem;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--z-muted))}
 .tr-c-spike .tr-bars{display:none}
 .tr-c-spike::after{content:none}
 .tr-sym{max-width:16ch}
 .tr-foot{gap:4px 12px}
 .tr-tot+.tr-tot::before{display:none}
 .tr-panel{max-height:calc(100dvh - 210px)} /* clear of the header and the bottom nav */
 .tr-p-grid2{grid-template-columns:1fr}
 .tr-p-row{grid-template-columns:minmax(0,1fr) 92px 92px}
}
