/* Dense pool workspace, scoped so portfolio/status pages keep their layout. */
.market-terminal, .market-discover {
  --background:#00121f; --panel:#00253f; --line:#244a67; --surface:#00253f;
  --surface-deep:#000c17; --surface-raised:#002a49; --surface-hover:#003a68;
  --text:#eef5fb; --text-soft:#c7d8e6; --muted:#7f9bb0; --accent:#4a9be0;
  --accent-bright:#6cb4f0; --positive:#55c7a0; --negative:#e27b7b; --action:#4a9be0;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:12px;
}
.market-terminal .topbar, .market-discover .topbar { background:#000c17; border-bottom:1px solid var(--line); }
.market-terminal .brand, .market-discover .brand { font-size:16px; }
.market-terminal .content { width:100%; max-width:none; padding:8px; margin:0; }
.market-terminal .pool-workspace { display:grid; grid-template-columns:205px minmax(380px,1fr) minmax(340px,390px); gap:8px; align-items:start; }
.market-terminal .pool-panel { background:var(--panel); border:1px solid var(--line); border-radius:7px; box-shadow:none; margin:0; }
.market-terminal .market-sidebar { min-width:0; display:grid; gap:8px; }
.market-terminal .token-hero { padding:14px 10px 6px; gap:9px; }
.market-terminal .hero-icon { width:29px; height:29px; flex-shrink:0; font-size:10px; }
.market-terminal .hero-copy h1 { font-size:17px; letter-spacing:0; }
.market-terminal .hero-heading { gap:4px; }
.market-terminal .hero-copy p { font-size:10px; }
.market-terminal .contract-line { font-size:9px; flex-wrap:wrap; gap:5px; }
.market-terminal .contract-line a { max-width:130px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.market-terminal .selector-panel { display:block; padding:12px 10px; }
.market-terminal .pool-selection { display:flex; flex-direction:column; gap:8px; align-items:stretch; }
.market-terminal .pool-summary { margin-bottom:8px; }
.market-terminal h2 { font-size:12px; letter-spacing:0; font-weight:600; }
.market-terminal .pool-summary p { display:none; }
.market-terminal .selector-panel select { font-size:10px; padding:8px 5px; }
.market-terminal .original-pool-link { font-size:10px; padding:5px; }
.market-terminal .metric-panel { padding:13px 12px; }
.market-terminal .detail-metrics { display:block; margin-top:3px; }
.market-terminal .detail-metrics div { padding:13px 0; }
.market-terminal .detail-metrics dt { font-size:10px; }
.market-terminal .detail-metrics dd { font-size:16px; margin-top:5px; }
.market-terminal .detail-metrics small { display:inline; margin-left:7px; }
.market-terminal .contract-panel { padding:12px; font-size:10px; }
.market-terminal .contract-panel dl { display:block; }
.market-terminal .contract-panel dd { margin:5px 0 12px; }
.market-terminal .sidebar-distribution { padding:12px; }
.sidebar-distribution svg { width:100%; height:auto; display:block; }
.sidebar-distribution p { color:var(--muted); font-size:9px; line-height:1.5; }
.market-terminal .market-center { display:grid; gap:8px; min-width:0; }
.market-terminal .price-panel { position:static; min-width:0; }
.market-terminal .chart-toolbar { padding:0 12px; gap:8px; }
.market-terminal .chart-tabs { gap:18px; }
.market-terminal .chart-tabs button { padding:13px 0; font-size:12px; }
.market-terminal .chart-tabs button[aria-selected="true"]::after { background:var(--action); }
.market-terminal #timeframeControls { padding:8px 0; }
.market-terminal .chart-segmented button { font-size:10px; padding-left:6px; padding-right:6px; }
.market-terminal .chart-head { padding:8px 12px 0; }
.market-terminal .chart-head p { margin:0; }
.market-terminal .ohlc-readout { margin:5px 12px; min-height:28px; }
.market-terminal .price-chart { padding:0 5px; min-height:330px; }
.market-terminal .price-chart .candle.up { fill:var(--positive); stroke:var(--positive); }
.market-terminal .price-chart .candle.down { fill:var(--negative); stroke:var(--negative); }
.market-terminal .price-chart .candle-volume { opacity:.5; }
.market-terminal .price-chart .position-range-fill { fill:var(--action); opacity:.1; }
.market-terminal .price-chart .position-range-label { fill:var(--action); }
.market-terminal .price-chart .position-range-line { stroke:var(--action); stroke-dasharray:none; }
.market-terminal .pool-sidebar { min-width:0; display:block; }
.market-terminal .position-builder { padding:0 13px 14px; border-radius:7px; }
.market-terminal .builder-heading { margin:0 -13px; padding:13px; border-bottom:1px solid var(--line); }
.market-terminal .builder-heading h2 { border-bottom:2px solid var(--action); padding-bottom:9px; margin-bottom:-14px; }
.market-terminal .builder-heading > span { font-size:9px; }
.market-terminal .builder-note { font-size:10px; line-height:1.5; margin:8px 0; }
.market-terminal #builderPair { font-size:10px; margin-top:12px; }
.builder-amount-heading { display:flex; justify-content:space-between; align-items:center; margin:15px 0 8px; font-weight:600; }
.builder-amount-heading label { color:var(--muted); font-size:10px; display:flex; align-items:center; gap:6px; font-weight:400; }
.builder-amount-heading input { accent-color:var(--accent); }
.market-terminal .deposit-amounts { display:grid; grid-template-columns:1fr; gap:7px; margin:8px 0 16px; }
.market-terminal .deposit-amounts > label { grid-template-columns:65px minmax(0,1fr); padding:10px; border:1px solid var(--line); border-radius:7px; background:var(--surface); align-items:center; gap:4px; }
.market-terminal .deposit-amounts > label > span:first-child { grid-column:1; grid-row:1; color:var(--text); font-weight:600; letter-spacing:0; }
.market-terminal .deposit-amounts .builder-amount { grid-column:2; grid-row:1 / 3; padding:0; border:0; background:none; display:grid; grid-template-columns:1fr auto auto; }
.market-terminal .deposit-amounts input { padding:3px 0; text-align:right; grid-column:1 / 4; grid-row:1; border:0; border-radius:0; font-size:14px; }
.market-terminal .deposit-amounts .builder-amount button { grid-row:2; font-size:9px; padding:2px 3px; }
.market-terminal .deposit-amounts .builder-amount button:first-of-type { grid-column:2; }
.market-terminal .deposit-amounts small { grid-column:1; width:180px; font-size:9px; white-space:nowrap; pointer-events:none; }
.market-terminal .builder-label { font-size:12px; letter-spacing:0; color:var(--text-soft); }
.market-terminal .builder-shapes { background:var(--surface-deep); padding:3px; gap:2px; margin:8px 0; border-radius:6px; }
.market-terminal .builder-shapes button { border:1px solid transparent; padding:8px 2px; border-radius:4px; font-size:11px; }
.market-terminal .builder-shapes button[aria-pressed="true"] { background:var(--surface-raised); border-color:var(--accent); color:var(--text); }
.market-terminal .builder-range-heading { border-top:1px solid var(--line); padding-top:12px; margin:13px 0 5px; }
.range-legend { display:flex; gap:12px; align-items:center; font-size:9px; margin:8px 0; color:var(--muted); }
.range-legend span { display:flex; align-items:center; gap:4px; }
.range-legend b { font-weight:400; }
.range-legend i { width:7px; height:7px; border-radius:50%; }
.range-legend .base { background:#4a9be0; }.range-legend .quote { background:#83c7fa; }
.range-legend small { margin-left:auto; font-size:9px; }
.market-terminal .builder-distribution { margin:8px 0; min-height:110px; border:0; }
.market-terminal .builder-distribution svg { max-height:none; overflow:visible; touch-action:none; }
.range-overview { margin:0 0 12px; }
.range-overview svg { display:block; width:100%; overflow:visible; touch-action:none; }
.position-profile text { fill:var(--muted); stroke:none; font-size:9px; }
.position-profile rect, .position-profile path { stroke:none; }
.position-profile .base { fill:#4a9be0; }.position-profile .quote { fill:#83c7fa; }
.position-profile .range-baseline { stroke:#5c7f9c; stroke-width:2; }
.position-profile-overview .range-baseline { stroke:#244a67; }
.position-profile .current-marker { stroke:#eef5fb; stroke-width:1.4; stroke-dasharray:3 2; pointer-events:none; }
.position-profile .current-label-background { fill:#002a49; }
.position-profile .current-label { fill:#eef5fb; font-size:8px; pointer-events:none; }
.position-profile .current-grip { fill:#fff; }
.position-profile .current-grip-notch { stroke:#000c17; stroke-width:.7; }
.position-profile .range-pan, .position-profile .range-handle { cursor:ew-resize; touch-action:none; outline:none; }
.position-profile .range-pan-hit, .position-profile .range-handle-hit, .position-profile .bin-hit { fill:transparent; stroke:none; pointer-events:all; }
.position-profile .range-handle-knob { fill:#6cb4f0; stroke:#000c17; stroke-width:.8; }
.position-profile .range-handle:focus-visible .range-handle-knob, .position-profile .range-pan:focus-visible .current-grip { stroke:#fff; stroke-width:2; filter:drop-shadow(0 0 2px #fff); }
.position-profile .range-track { stroke:#6cb4f0; stroke-width:2.5; pointer-events:none; }
.position-profile .pool-bar { fill:#002a49; }
.position-profile .pool-bar.selected { fill:#244a67; }
.position-profile .pool-bar.active { fill:#4a9be0; }
.position-profile .range-bin:hover .pool-bar { fill:#6cb4f0; }
.position-profile .range-empty { font-size:10px; }
.position-profile .range-unknown { fill:#00253f; opacity:.7; }
.position-profile .range-unknown-stripe { stroke:#5c7f9c; stroke-width:1; opacity:.45; }
.market-terminal .builder-grid { gap:10px; margin:10px 0; }
.market-terminal .builder-grid > label { font-size:10px; letter-spacing:0; }
.market-terminal .builder-grid input { padding:10px 8px; border-radius:5px; font-size:12px; }
.market-terminal .builder-bin-count { display:block; padding:10px 8px; border:1px solid var(--line); border-radius:5px; color:var(--text); font-size:12px; }
.market-terminal .builder-review details { margin:12px 0; overflow-wrap:anywhere; }
.market-terminal .builder-offsets { margin-top:-6px; }
.market-terminal .builder-offsets input { padding:5px; font-size:10px; }
.market-terminal .builder-primary { border:0; border-radius:6px; color:white; background:var(--action); padding:12px; font-size:12px; text-transform:none; letter-spacing:0; }
.market-terminal .builder-status { font-size:10px; margin:10px 0; }
.market-terminal .builder-review { font-size:11px; }
.market-terminal .data-note { font-size:9px; line-height:1.6; padding:5px 10px; }
.market-terminal .text-button { font-size:10px; border-radius:5px; padding:6px 8px; }
.portfolio-heading { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); padding:10px 12px; gap:8px; }
.portfolio-heading h2 { padding:3px 0; }
.portfolio-heading > div { display:flex; gap:6px; }
.market-terminal #createPositionLink { background:var(--action); color:white; border-color:transparent; }
.pool-portfolio { min-height:240px; padding-bottom:12px; }
.pool-position-list { padding:12px; }
.portfolio-empty { text-align:center; padding:38px 12px; color:var(--muted); line-height:1.7; }
.portfolio-empty strong { display:block; color:var(--text-soft); font-size:13px; }
.portfolio-empty button { margin-top:12px; }
.pool-portfolio > a, .pool-portfolio > button { margin-left:12px; }
.portfolio-position { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:14px; border:1px solid var(--line); border-radius:6px; margin-bottom:8px; font-size:11px; }
.portfolio-position > header { grid-column:1 / -1; display:flex; justify-content:space-between; gap:10px; }
.portfolio-position small { color:var(--muted); display:block; margin-bottom:5px; }
.portfolio-position .in-range { color:var(--positive); }.portfolio-position .out-range { color:var(--muted); }
.portfolio-position.managed-strategy { border-color:var(--positive); background:color-mix(in srgb,var(--positive) 6%,transparent); }
@media(min-width:1600px) { .market-terminal .pool-workspace { grid-template-columns:220px minmax(0,1fr) minmax(390px,28vw); } }
@media(max-width:1150px) { .market-terminal .pool-workspace { grid-template-columns:170px minmax(0,1fr); } .market-terminal .pool-sidebar { grid-column:2; grid-row:2; } .market-terminal .market-sidebar { grid-row:1 / 3; } }
@media(max-width:720px) { .market-terminal .pool-workspace { display:flex; flex-direction:column; } .market-terminal .market-sidebar,.market-terminal .market-center,.market-terminal .pool-sidebar { width:100%; } .market-terminal .market-sidebar { display:grid; grid-template-columns:1fr 1fr; } .market-terminal .metric-panel { grid-column:1 / -1; } .market-terminal .detail-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); } .market-terminal .detail-metrics dd { font-size:14px; } .market-terminal .sidebar-distribution,.market-terminal .contract-panel { display:none; } .market-terminal .topbar { flex-wrap:wrap; gap:12px; } .market-terminal .price-chart { min-height:250px; } }
.market-discover .content { width:100%; max-width:none; margin:0; padding:24px 20px; }
.discover-hero { display:flex; justify-content:space-between; gap:30px; align-items:center; padding:10px 0 36px; }
.discover-hero h1 { font-size:28px; font-weight:600; letter-spacing:-.6px; white-space:normal; }
.discover-hero p { color:var(--muted); margin:9px 0; font-size:13px; }
.discover-summary { display:flex; gap:26px; }
.discover-summary > span { color:var(--muted); font-size:11px; text-align:right; padding-left:20px; border-left:1px solid var(--line); }
.discover-summary strong { display:block; color:var(--text); font-size:16px; margin-top:10px; font-weight:500; }
.market-discover .pool-panel { border-radius:7px; border-color:var(--line); background:var(--background); }
.market-discover .panel-head { min-height:60px; padding:12px 14px; background:var(--panel); border-color:var(--line); }
.discover-tabs { display:flex; gap:20px; align-items:center; }
.discover-tabs button { border:0; background:transparent; padding:10px 0; color:var(--muted); font-weight:600; font-size:13px; }
.discover-tabs button[aria-pressed="true"] { color:var(--action); }
.discover-tabs > span { color:var(--muted); font-size:10px; }
.market-discover .pool-filters { padding:10px 14px; background:var(--panel); border-color:var(--line); font-size:10px; }
.market-discover .segmented { background:var(--surface-deep); border:0; border-radius:5px; }
.market-discover .segmented button { padding:6px 12px; font-size:10px; }
.market-discover .segmented button[aria-pressed="true"] { background:var(--surface-raised); color:var(--text); }
.market-discover select { border-color:var(--line); background:var(--surface); color:var(--text-soft); font-size:11px; }
.market-discover table { min-width:1040px; width:100%; }
.market-discover .token-column { width:250px; }
.market-discover .chart-column { width:130px; }
.market-discover th { padding:10px 14px; font-size:10px; letter-spacing:0; color:var(--muted); background:var(--panel); border-color:var(--line); }
.market-discover td { padding:15px 14px; font-size:12px; border-color:var(--line); }
.market-discover tbody tr:hover { background:var(--surface-raised); }
.market-discover .token-icon { width:29px; height:29px; flex-shrink:0; font-size:10px; background:var(--surface-raised); border-color:var(--line); }
.market-discover .token-link { gap:10px; }
.market-discover .token-copy { gap:5px; }
.market-discover .token-copy strong { font-size:12px; }
.market-discover .pool-detail { display:inline; font-size:9px; color:var(--muted); line-height:1.4; }
.market-discover .pool-badge { display:inline-block; width:max-content; font-size:9px; color:#c7d8e6; background:#002a49; padding:3px 6px; border-radius:4px; }
.market-discover .pool-row-copy { display:grid; gap:4px; }
.market-discover .pool-row-copy strong { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.market-discover .pool-row-copy .pool-detail { display:block; margin:0; }
.market-discover .pool-row-tags { display:flex; align-items:center; gap:7px; }
.market-discover .token-link { min-height:62px; padding:6px 0; }
.market-discover td { height:76px; padding-top:9px; padding-bottom:9px; }
.market-discover th { height:42px; }
.market-discover .sparkline { width:110px; height:37px; }
.market-discover .panel-foot { background:var(--panel); border-color:var(--line); font-size:10px; }
.market-discover .data-note { margin-top:15px; color:var(--muted); font-size:10px; line-height:1.6; }
@media(max-width:850px) { .discover-hero { align-items:start; flex-direction:column; gap:14px; } .discover-summary > span { text-align:left; padding:0 15px 0 0; border:0; } .market-discover .content { padding:18px 10px; } .market-discover .panel-head { flex-wrap:wrap; } .market-discover .topbar { gap:12px; flex-wrap:wrap; } }
@media(max-width:720px) { .market-terminal .contract-panel { display:block; grid-column:1 / -1; } }
/* Price bounds and hover readouts share the range chart's compact layout. */
.builder-price-unit { margin-left:auto; color:var(--muted); font-size:10px; }
.market-terminal .builder-range-heading { justify-content:flex-start; gap:8px; }
.market-terminal .builder-price-fields > div { min-width:0; }
.builder-price-fields label { display:block; margin-bottom:7px; color:var(--muted); font-size:10px; }
.builder-price-control { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(60px,1fr) 22px; background:var(--surface); border:1px solid var(--line); border-radius:7px; overflow:hidden; min-height:43px; }
.market-terminal .builder-price-control input { border:0; background:transparent; padding:10px 7px; border-radius:0; font-size:11px; }
.builder-price-percent { display:flex; align-items:center; min-width:0; border-left:1px solid var(--line); }
.builder-price-percent > span { padding-right:5px; font-size:10px; }
.builder-price-percent input { appearance:textfield; -moz-appearance:textfield; }
.builder-price-percent input::-webkit-inner-spin-button, .builder-price-percent input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.builder-price-steps { display:grid; grid-template-rows:1fr 1fr; border-left:1px solid var(--line); }
.builder-price-steps button { padding:0; border:0; color:var(--muted); background:transparent; font-size:13px; cursor:pointer; }
.builder-price-steps button + button { border-top:1px solid var(--line); }
.builder-price-steps button:hover { color:var(--text); background:var(--surface-raised); }
.builder-bin-tooltip { position:fixed; z-index:40; width:280px; max-width:calc(100vw - 16px); pointer-events:none; border-radius:5px; padding:12px 14px; background:rgba(0,12,23,.97); box-shadow:0 4px 18px #0004; color:#fff; font-size:11px; line-height:1.7; }
.builder-bin-tooltip[hidden] { display:none; }
.builder-bin-tooltip > div { display:flex; justify-content:space-between; gap:15px; }
.builder-bin-tooltip strong { text-align:right; overflow-wrap:anywhere; }
.market-terminal .builder-distribution svg { touch-action:none; }
