/* Same canvas, gutters and typography as Opportunities; one shared hold list. */
#signalsWorkspace .hold-card {position:relative;}
#signalsWorkspace .hold-modes {display:flex;gap:8px;margin:0 0 10px;flex-wrap:wrap;}
#signalsWorkspace .hold-modes button {display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 16px;border:1px solid var(--op-line);border-radius:9px;background:var(--op-bg);color:var(--op-muted);font:inherit;font-size:13px;font-weight:600;}
#signalsWorkspace .hold-modes button small {font-size:10px;letter-spacing:.04em;}
#signalsWorkspace .hold-modes button[aria-pressed="true"] {background:var(--op-strong);color:var(--op-inverse);border-color:var(--op-strong);}
#signalsWorkspace .hold-modes button:last-child {margin-inline-start:auto;font-weight:400;}
#signalsWorkspace .hold-intro {font-size:var(--ui-label-size);color:var(--op-muted);line-height:1.6;margin:0 0 16px;}
#signalsWorkspace .hold-horizon {display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:12px;color:var(--op-muted);}
#signalsWorkspace .hold-horizon select {min-height:40px;min-width:110px;padding:8px 12px;background:var(--op-surface);color:var(--op-ink);border:1px solid var(--op-line);border-radius:8px;font:inherit;}
#signalsWorkspace .hold-reason {margin:0;font-size:var(--ui-body-size);line-height:1.6;}
#signalsWorkspace .hold-card .hold-reason {min-height:3.1em;}
#signalsWorkspace .hold-card .opportunity-status {min-height:3em;}
#signalsWorkspace .hold-card .hold-entry-metrics dd {min-height:3em;}
/* Live changes must not resize the reading surface or remove a toolbar row.
   No scrollTo compensation: it would interrupt Safari's momentum scrolling. */
#signalsWorkspace .scan-order-tools {display:grid;grid-template-columns:minmax(0,1fr) repeat(2,minmax(0,180px));gap:8px;}
#signalsWorkspace .scan-order-tools :is(#applyListUpdates,#rerankSignals) {width:100%;min-height:60px;margin:0;line-height:1.5;white-space:normal;overflow-wrap:anywhere;}
#signalsWorkspace .scan-order-tools #applyListUpdates[hidden] {display:block!important;visibility:hidden;pointer-events:none;}
#signalsWorkspace .scan-order-tools #applyListUpdates:disabled {opacity:.6;cursor:default;}
#signalsWorkspace .hold-probability-slot {min-height:48px;}
#signalsWorkspace .hold-probability-slot p {margin:0;}
#signalsWorkspace .hold-evidence-state {font-size:var(--ui-label-size);line-height:1.5;color:var(--op-muted);padding:7px 9px;background:var(--op-surface);border-radius:6px;}
#signalsWorkspace .hold-ranges.hold-selected-range dl {grid-template-columns:minmax(0,1fr);}
#signalsWorkspace .hold-selected-range dl>div {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;}
#signalsWorkspace .hold-selected-range small {grid-column:1/-1;}
#signalsWorkspace .hold-external-events {display:grid;gap:10px;margin:0;padding-left:18px;font-size:var(--ui-label-size);line-height:1.6;overflow-wrap:anywhere;}
#signalsWorkspace .hold-external-events a {color:inherit;}
#signalsWorkspace .hold-external-events small {display:block;margin-top:3px;font:inherit;color:var(--op-muted);}
#signalsWorkspace .hold-qualified-probability {display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:var(--ui-label-size);line-height:1.6;}
#signalsWorkspace .hold-qualified-probability>span {min-width:0;overflow-wrap:anywhere;}
#signalsWorkspace .hold-qualified-probability>strong {flex:none;font-size:15px;font-variant-numeric:tabular-nums;}
.market-layout[data-mode="opportunities"][data-hold-mode]:not([data-hold-mode="trade"]) {grid-template-columns:minmax(0,1fr);grid-template-areas:"signals";height:auto;min-height:0;}
.market-layout[data-mode="opportunities"][data-hold-mode]:not([data-hold-mode="trade"])>.market-main {height:auto;overflow:visible;padding-right:0;scrollbar-gutter:auto;}
.market-layout[data-mode="opportunities"][data-hold-mode]:not([data-hold-mode="trade"]) .screener-header {position:static;}
.market-layout[data-mode="opportunities"][data-hold-mode]:not([data-hold-mode="trade"]) :is(#workspaceDivider,#tokenChartPanel) {display:none!important;}
#signalsWorkspace .hold-rank {display:grid;gap:4px;text-align:end;font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;}
#signalsWorkspace .hold-rank small {font-size:11px;color:var(--op-muted);font-weight:400;}
#signalsWorkspace .hold-thesis {display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;}
#signalsWorkspace .hold-thesis>span {min-width:0;flex:1;font-size:12px;line-height:1.5;color:var(--op-muted);}
#signalsWorkspace .hold-thesis>strong {flex:none;white-space:nowrap;font-size:23px;line-height:1;font-variant-numeric:tabular-nums;}
#signalsWorkspace .hold-thesis>strong small {font-size:11px;color:var(--op-muted);margin-inline-start:3px;font-weight:400;}
#signalsWorkspace .hold-thesis>strong.hold-state-label {font-size:var(--ui-body-size);font-weight:600;line-height:1.5;padding:4px 8px;border:1px solid var(--op-line);border-radius:6px;}
#signalsWorkspace .hold-entry-metrics {padding:12px 0;border-block:1px solid var(--op-line);}
#signalsWorkspace .hold-levels {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;margin:0;padding:14px;border-radius:8px;background:var(--op-surface);}
#signalsWorkspace .hold-levels>div,#signalsWorkspace .hold-metrics>div {min-width:0;}
#signalsWorkspace .hold-levels>div {display:grid;grid-template-rows:auto auto;gap:4px;align-content:start;}
#signalsWorkspace .hold-help {display:inline-block;margin-inline-start:2px;vertical-align:middle;font-family:inherit;}
#signalsWorkspace .hold-help summary {position:relative;display:inline-grid;place-items:center;width:24px;height:24px;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:50%;background:transparent;font:600 11px/1 Georgia,serif;color:var(--op-muted);cursor:pointer;list-style:none;}
#signalsWorkspace .hold-help summary::before {content:"";position:absolute;inset:4px;border:1px solid var(--op-line);border-radius:50%;pointer-events:none;}
#signalsWorkspace .hold-help summary::marker {content:"";}
#signalsWorkspace .hold-help summary::-webkit-details-marker {display:none;}
#signalsWorkspace .hold-help[open] summary,#signalsWorkspace .hold-help summary:hover {color:var(--op-ink);}
#signalsWorkspace .hold-help p {position:fixed;inset:auto;left:12px;top:56px;z-index:40;visibility:hidden;box-sizing:border-box;width:min(300px,calc(100vw - 24px));max-height:min(240px,calc(100dvh - 24px));overflow:auto;overscroll-behavior:contain;margin:0;padding:10px 12px;border:1px solid var(--op-line);border-radius:8px;background:var(--op-bg);box-shadow:0 6px 20px #00000014;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:0;text-align:start;color:var(--op-ink);overflow-wrap:anywhere;}
#signalsWorkspace .hold-help summary:focus-visible {outline:2px solid var(--op-muted);outline-offset:3px;}
#signalsWorkspace .hold-blockers {display:grid;gap:6px;margin:0;padding:10px 10px 10px 25px;border-inline-start:2px solid var(--op-muted);font-size:var(--ui-label-size);line-height:1.6;}
#signalsWorkspace :is(.hold-liquidity,.hold-research-panel) {min-width:0;padding:12px;border:1px solid var(--op-line);border-radius:8px;background:var(--op-surface);}
#signalsWorkspace :is(.hold-liquidity,.hold-research-panel) h4 {font-size:var(--ui-body-size);font-weight:600;line-height:1.5;margin:0 0 10px;overflow-wrap:anywhere;}
#signalsWorkspace .hold-card .opportunity-details :is(.hold-liquidity,.hold-research-panel)>p {margin:10px 0 0;}
#signalsWorkspace .hold-levels dt,#signalsWorkspace .hold-metrics dt {font-size:var(--ui-label-size);line-height:1.5;color:var(--op-muted);margin:0 0 5px;}
#signalsWorkspace .hold-levels dd,#signalsWorkspace .hold-metrics dd {font-size:var(--ui-body-size);line-height:1.5;font-weight:600;color:var(--op-ink);margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
#signalsWorkspace .hold-metrics dd small {display:block;font-size:var(--ui-label-size);font-weight:400;line-height:1.5;color:var(--op-muted);margin-top:4px;}
#signalsWorkspace .hold-ranges h3 {font-size:var(--ui-label-size);font-weight:400;color:var(--op-muted);margin:0 0 9px;}
#signalsWorkspace .hold-ranges dl {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;}
#signalsWorkspace .hold-ranges dl>div {padding:10px 8px;border:1px solid var(--op-line);border-radius:7px;min-width:0;}
#signalsWorkspace .hold-ranges dt {font-size:var(--ui-label-size);color:var(--op-muted);}
#signalsWorkspace .hold-ranges dd {font-size:14px;font-weight:600;margin:5px 0;line-height:1.3;overflow-wrap:anywhere;}
#signalsWorkspace .hold-ranges small {display:block;font-size:var(--ui-label-size);line-height:1.5;color:var(--op-muted);overflow-wrap:anywhere;}
#signalsWorkspace .hold-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;}
#signalsWorkspace .hold-card>.opportunity-details .hold-metrics {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:0;border:0;background:transparent;}
#signalsWorkspace .hold-metrics>div {display:grid;align-content:start;grid-template-rows:auto auto;gap:4px;min-width:0;}
#signalsWorkspace .hold-metrics dt {margin:0;}
#signalsWorkspace .hold-card .hold-entry-metrics dt {min-height:3em;}
@supports(grid-template-rows:subgrid){
  #signalsWorkspace :is(.hold-levels,.hold-metrics)>div {grid-row:span 2;grid-template-rows:subgrid;}
}
#signalsWorkspace .hold-card>.opportunity-details[open] {display:block;text-align:start;}
#signalsWorkspace .hold-card>.opportunity-details>summary {margin:0;}
/* Explicit wrapper: browsers' ::details-content can otherwise collapse all
   children into one grid item and silently discard the intended row gaps. */
#signalsWorkspace .hold-evidence-content {display:grid;gap:16px;min-width:0;padding-top:12px;}
#signalsWorkspace .hold-card>.opportunity-details p {margin:0;font-size:var(--ui-label-size);line-height:1.65;overflow-wrap:anywhere;}
#signalsWorkspace .hold-card .hold-chart {width:100%;min-height:42px;padding:9px;margin-top:auto;background:var(--op-strong);color:var(--op-inverse);border:1px solid var(--op-strong);border-radius:7px;font:inherit;font-size:12px;font-weight:600;}
#signalsWorkspace .hold-range-table {width:100%;border-collapse:collapse;font-size:var(--ui-label-size);line-height:1.5;table-layout:fixed;}
#signalsWorkspace .hold-range-table td,#signalsWorkspace .hold-range-table th {padding:7px 4px;text-align:start;border-bottom:1px solid var(--op-line);overflow-wrap:anywhere;font-weight:400;}
#signalsWorkspace .hold-range-table th:first-child {width:18%;}
#signalsWorkspace .hold-range-table th:last-child {width:18%;}
@media(max-width:720px){
  #signalsWorkspace .hold-help p {font-size:13px;}
  #signalsWorkspace .scan-order-tools {grid-template-columns:repeat(2,minmax(0,1fr));}
  #signalsWorkspace .scan-order-tools>#listSessionNotice {grid-column:1/-1;min-height:3em;}
  /* The bounded list already limits card count. Estimated offscreen heights
     on legacy Intraday cards can change page length as iOS renders them. */
  #signalsWorkspace .signal-grid>.opportunity-card {content-visibility:visible;contain-intrinsic-size:none;}
  #signalsWorkspace .hold-modes {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
  #signalsWorkspace .hold-modes button {padding:9px 7px;font-size:12px;gap:6px;}
  #signalsWorkspace .hold-modes button:last-child {grid-column:1/-1;justify-self:end;min-height:32px;font-size:11px;padding:6px 10px;}
  #signalsWorkspace .hold-levels {gap:12px;padding:12px;}
  #signalsWorkspace .hold-levels dd {font-size:var(--ui-body-size);}
  #signalsWorkspace .hold-ranges dd {font-size:13px;}
}
