/* Compact positions and an expandable numeric score book; inherits tenant surfaces. */
.sp-position{display:flex;flex-wrap:wrap;gap:2px;font-size:11px;line-height:1.3;font-weight:650;font-variant-numeric:tabular-nums;min-width:0}
.sp-position:empty{display:none}.sp-pnl,.sp-after{white-space:nowrap}.positive{color:#168347}.negative{color:#d43d51}.neutral{color:inherit}
.sp-book{grid-column:1/-1;min-width:0;border:0;font-size:11px;background:none}
.sp-book:not([open]){position:absolute;inset:0;pointer-events:none}
.sp-book summary{position:absolute;left:4px;top:6px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;cursor:pointer;list-style:none;color:inherit;border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:5px;pointer-events:auto;background:transparent}
.sp-book summary::-webkit-details-marker{display:none}.sp-book summary:focus-visible{outline:2px solid currentColor;outline-offset:2px}.sp-book[open] summary{background:color-mix(in srgb,currentColor 12%,transparent)}
.sp-book-panel{border-top:1px solid color-mix(in srgb,currentColor 12%,transparent);background:color-mix(in srgb,currentColor 3%,transparent)}
.sp-book-heading{display:flex;gap:8px;align-items:center;padding:7px 10px}.sp-book-risk{margin-left:auto;font-size:10px;font-variant-numeric:tabular-nums}
.session-market{position:relative}.session-name{padding-inline-start:30px}.kx-fancyrow__who{padding-inline-start:34px}
.sp-book-scroll{max-height:220px;overflow:auto;overscroll-behavior:contain}.sp-book table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;font-size:11px}.sp-book th,.sp-book td{padding:5px 12px;text-align:right;border-bottom:1px solid color-mix(in srgb,currentColor 8%,transparent)}.sp-book th:first-child{text-align:left}.sp-book thead{position:sticky;top:0;background:var(--surface,var(--k-surface,#f1f3f6));color:var(--ink,var(--k-text,#263247))}.sp-book-note{padding:6px 10px;margin:0;font-size:11px;opacity:.7}
.kx-fancyrow:has(.sp-book[open]){align-items:start}.kx-xrow__runner:has(.sp-position){flex-wrap:wrap}.kx-xrow__runner .sp-position{flex-basis:100%;padding-left:28px}.kx-mc__team:has(.sp-position){flex-wrap:wrap}.kx-mc__team .sp-position{flex-basis:100%;padding-left:24px}.selection-name:has(.sp-position),.race-runner-name:has(.sp-position){flex-wrap:wrap}.selection-name .sp-position,.race-runner-name .sp-position{flex-basis:100%}
.sp-market-message{display:block;font-size:10px;line-height:1.35;overflow-wrap:anywhere;opacity:.7}.sp-market-message:empty{display:none}.sp-move{font-size:8px;margin-left:3px;vertical-align:middle}.kx-mc__summary{display:flex;align-items:center;gap:5px;min-width:0;padding:4px 10px;font-size:10px;line-height:1.4;font-variant-numeric:tabular-nums;border-bottom:1px solid color-mix(in srgb,currentColor 8%,transparent)}.kx-mc__summary-score{min-width:0;flex:1;white-space:normal}.kx-mc__matched{white-space:nowrap;opacity:.7}
@media(prefers-color-scheme:dark){[data-theme=dark] .positive{color:#70d99b}[data-theme=dark] .negative{color:#ff8696}}

.kx-odds,.odds{position:relative}.kx-odds>.sp-move,.odds>.sp-move{position:absolute;top:4px;right:4px;font-style:normal}.kx-fancyrow>.sp-market-message{grid-column:1/-1;padding:2px 8px}
