.kp-cyc-axis,.kp-cyc-row,.kp-cyc-phases{grid-template-columns:repeat(10,minmax(0,1fr));gap:0 3px;display:grid}.kp-cyc-axis span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line-strong);white-space:nowrap;text-overflow:ellipsis;grid-row:1;margin-bottom:6px;padding-bottom:4px;font-size:.6875rem;font-weight:600;overflow:hidden}.kp-cyc-axis small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;grid-row:2;padding:0 2px 6px;font-size:.6875rem;line-height:1.2;overflow:hidden}.kp-cyc-axis small[data-on]{color:var(--ink);font-weight:600}.kp-cyc-row{gap:3px;height:8px}.kp-cyc-row i{background:color-mix(in srgb, var(--line-strong) 60%, transparent);border-radius:2px}.kp-cyc-row i[data-on]{background:var(--brand)}.kp-cyc-row[data-tone=p] i[data-on]{background:var(--terracotta)}.kp-cyc-row i[data-active]{outline:2px solid var(--ink);outline-offset:1px}.kp-cyc-phases{margin:0;padding:0;list-style:none}.kp-cyc-phases li>a,.kp-cyc-phases li>span{color:var(--muted);flex-direction:column;gap:7px;min-width:0;font-size:.75rem;line-height:1.25;display:flex}.kp-cyc-phases li>a:hover{color:var(--brand)}.kp-cyc-phases i{background:color-mix(in srgb, var(--line-strong) 55%, transparent);border-radius:3px;height:14px;display:block}.kp-cyc-phases li[data-on] i{background:var(--brand)}.kp-cyc-phases[data-tone=p] li[data-on] i{background:var(--terracotta)}.kp-cyc-phases li[data-on] span{color:var(--ink);font-weight:600}.kp-cyc-phases span{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;padding-right:2px}.kp-cyc{container-type:inline-size}@container (max-width:640px){.kp-cyc-phases span{display:none}.kp-cyc-axis span{letter-spacing:.03em;font-size:.5625rem}}.kp-mix-bar{border-radius:6px;gap:2px;height:12px;display:flex;overflow:hidden}.kp-mix-bar i,.kp-mix-lg i{background:var(--muted);display:block}.kp-mix [data-d=increase]{background:var(--accent)}.kp-mix [data-d=optimum]{background:var(--brand)}.kp-mix [data-d=tradeoff],.kp-mix [data-d=mixed]{background:color-mix(in srgb, var(--brand) 45%, var(--muted))}.kp-mix [data-d=decrease]{background:var(--terracotta)}.kp-mix-lg{color:var(--ink-soft);flex-wrap:wrap;gap:6px 14px;margin:10px 0 6px;padding:0;font-size:.8125rem;list-style:none;display:flex}.kp-mix-lg li{align-items:center;gap:6px;display:inline-flex}.kp-mix-lg i{border-radius:3px;width:10px;height:10px}.kp-mix-lg b{color:var(--ink)}.kp-fcs{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;display:grid}.kp-fc{border:1px solid var(--line);background:var(--kp-card);border-radius:14px;flex-direction:column;gap:7px;min-width:0;padding:13px 15px 12px;display:flex}.kp-fc-h{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.kp-fc-d{color:var(--ink-soft);align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:inline-flex}.kp-fc-d b{background:var(--surface-2);width:22px;height:22px;color:var(--ink);border-radius:7px;place-items:center;font-size:.875rem;display:grid}.kp-fc-d[data-d=increase] b{background:var(--accent-soft);color:var(--accent)}.kp-fc-d[data-d=decrease] b{background:var(--terracotta-soft);color:var(--terracotta)}.kp-fc-d[data-d=optimum] b{background:var(--brand-soft);color:var(--brand)}.kp-fc-e{font:600 1.0625rem/1.3 var(--font-serif);color:var(--ink);overflow-wrap:anywhere;margin:0}.kp-fc-r{color:var(--ink-soft);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;font-size:.8125rem;line-height:1.5;display:-webkit-box;overflow:hidden}.kp-fc-s{color:var(--muted);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:auto 0 0;font-size:.75rem;display:flex}.kp-fc-s a{color:var(--brand)}.kp-fc-s a:hover{text-decoration:underline}.kp-credit{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.6875rem;line-height:1.4}.kp-credit a{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.kp-credit a:hover{color:var(--brand)}[data-state]>img{transition:opacity .2s}[data-state=loading]>img{opacity:0}[data-figure][data-state=ok]{background:#f1f1ee!important}[data-state=failed]{place-items:center;padding:8px;display:grid}.kp-photo-gap{background:var(--surface);color:var(--ink);border-color:var(--line-strong);white-space:normal;text-align:center}.kp-fc-tr{border:1px solid var(--line-strong);color:var(--muted);white-space:nowrap;border-radius:4px;padding:0 4px;font-size:.625rem;font-weight:600}
