/* K-Predict. Uses the shell tokens. Win-probability bars use neutral tones: a favorite is not "good" or "bad". */
.kp-card{border:1px solid var(--border,#24242b);border-radius:var(--radius,12px);background:var(--surface,#101013);padding:20px 22px;margin:0 0 22px}
.kp-card h2{margin:6px 0 4px;font-size:24px;letter-spacing:-.4px}.kp-card h3{font-size:14px;margin:18px 0 8px}
.kp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.kp-line{margin:0;color:var(--secondary,#a4a4ae);font-size:14px}.kp-line strong{color:var(--text,#f5f5f7)}
.kp-state{display:grid;gap:3px;padding:8px 12px;border-radius:10px;border:1px solid var(--border,#24242b);font-size:12px;font-weight:700;max-width:280px}.kp-state small{font-weight:400;color:var(--secondary,#a4a4ae);line-height:1.45}
.kp-state.ok{border-color:#3e7d5f}.kp-state.partial{border-color:#a87c35}
.kp-seg{display:inline-flex;flex-wrap:wrap;gap:3px;border:1px solid var(--border,#24242b);border-radius:10px;padding:3px;margin:16px 0 14px}
.kp-seg button{border:0;background:transparent;color:var(--secondary,#a4a4ae);font:inherit;font-size:13px;padding:8px 14px;border-radius:7px;cursor:pointer;min-height:36px}
.kp-seg button.on{background:var(--purple,#7047c7);color:#fff}.kp-seg button:focus-visible,.kp-hit:focus-visible{outline:2px solid #f3bf5d;outline-offset:2px}
.kp-bar{display:flex;gap:2px;height:14px;border-radius:7px;overflow:hidden;background:var(--line,#1b1b21)}.kp-a{background:#9a86b8}.kp-b{background:#6f8fa8}
.kp-a,.kp-b{min-width:2px}.kp-bar-labels{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-top:6px;color:var(--secondary,#a4a4ae)}.kp-bar-labels b{color:var(--text,#f5f5f7);font-variant-numeric:tabular-nums}
.kp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px 18px;margin:16px 0 4px}.kp-facts dt,.kp-exact dt{color:var(--muted,#6e6e78);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.kp-facts dd{margin:3px 0 0;font-size:15px;font-weight:600}
.kp-why,.kp-tech{border-top:1px solid var(--line,#1b1b21);margin-top:12px;padding-top:10px}.kp-why summary,.kp-tech summary,.kp-sec summary{cursor:pointer;font-weight:600;font-size:14px}
.kp-why p{line-height:1.65;font-size:14px;margin:8px 0 0;max-width:820px}
.kp-exact{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 18px;margin:10px 0}.kp-exact dd{margin:2px 0 0;font-variant-numeric:tabular-nums}.kp-exact small{color:var(--muted,#6e6e78)}
.kp-small,.kp-foot{font-size:12px;color:var(--secondary,#a4a4ae);line-height:1.55}.kp-foot{margin:14px 0 0}.kp-msg{font-size:15px;line-height:1.6;max-width:760px}
.kp-limits{margin:8px 0;padding-left:18px;font-size:13px;line-height:1.6}.kp-limits li{margin:3px 0}
.kp-history{list-style:none;margin:0;padding:0;font-size:13px}.kp-history li{display:grid;grid-template-columns:120px 1fr auto;gap:10px;padding:7px 0;border-bottom:1px solid var(--line,#1b1b21)}.kp-call{color:var(--text,#f5f5f7);font-weight:600}.kp-date{color:var(--secondary,#a4a4ae)}
.kp-none{border-style:dashed}.kp-empty p{margin:6px 0 0;color:var(--secondary,#a4a4ae)}
.kp-page{max-width:1080px}.kp-lede{max-width:780px;line-height:1.6}
.kp-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:8px 0 26px}.kp-kpis div{border:1px solid var(--border,#24242b);border-radius:12px;padding:14px;display:grid;gap:2px;background:var(--surface,#101013)}
.kp-kpis strong{font-size:24px;font-variant-numeric:tabular-nums}.kp-kpis span{font-size:13px}.kp-kpis small{font-size:11px;color:var(--muted,#6e6e78)}
.kp-sec{margin:0 0 30px}.kp-sec h2{font-size:18px;margin:0 0 6px}.kp-sec>p{color:var(--secondary,#a4a4ae);font-size:14px;margin:0 0 6px}
.kp-table-wrap{overflow-x:auto}.kp-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.kp-table th{text-align:left;color:var(--muted,#6e6e78);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:8px 10px;border-bottom:1px solid var(--border,#24242b)}
.kp-table td{padding:8px 10px;border-bottom:1px solid var(--line,#1b1b21)}.kp-table tr.kp-us td{font-weight:700;background:var(--purple-soft,rgba(112,71,199,.14))}
.kp-steps{padding-left:20px;line-height:1.65;font-size:14px}.kp-steps li{margin:6px 0}
.kp-chart{margin:0}.kp-chart figcaption{font-weight:600;font-size:15px;margin-bottom:8px}.kp-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--secondary,#a4a4ae);margin-bottom:6px}
.kp-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;vertical-align:middle;margin-right:6px}.kp-legend i.kp-s1{background:#3987e5}.kp-legend i.kp-s2{background:#d95926}.kp-legend i.kp-diag{background:var(--muted,#6e6e78)}
.kp-plot{position:relative;max-width:620px}.kp-plot svg{width:100%;height:auto;display:block}.kp-plot text{fill:var(--secondary,#a4a4ae);font-size:11px}.kp-plot text.axis{fill:var(--muted,#6e6e78)}
.kp-plot .grid{stroke:var(--line,#1b1b21);stroke-width:1}.kp-diag-line{stroke:var(--muted,#6e6e78);stroke-width:1.5;stroke-dasharray:4 4}
.kp-plot polyline{fill:none;stroke-width:2;stroke-linejoin:round}.kp-s1 polyline{stroke:#3987e5}.kp-s2 polyline{stroke:#d95926}
.kp-s1 circle:not(.kp-hit){fill:#3987e5;stroke:var(--surface,#101013);stroke-width:2}.kp-s2 circle:not(.kp-hit){fill:#d95926;stroke:var(--surface,#101013);stroke-width:2}.kp-hit{fill:transparent;cursor:pointer}
.kp-tip{position:absolute;z-index:3;max-width:260px;background:var(--surface-3,#19191f);border:1px solid var(--border,#24242b);border-radius:8px;padding:7px 9px;font-size:12px;line-height:1.45;pointer-events:none}
@media (max-width:640px){.kp-card{padding:16px}.kp-history li{grid-template-columns:1fr;gap:2px}.kp-card h2{font-size:21px}}
