.chain-planner{--cfp-radius:10px;--cfp-tier:#6b5a2e;margin:1.25rem 0 2rem}.chain-planner .cfp-controls{background:var(--surface);border:1px solid var(--border);border-radius:var(--cfp-radius);box-shadow:var(--shadow);flex-wrap:wrap;gap:.75rem 1rem;padding:.9rem 1rem;display:flex}.chain-planner label{color:var(--muted);gap:.25rem;font-size:.875rem;display:grid}.chain-planner .cfp-target{flex:16rem}.chain-planner .cfp-add{gap:.35rem;display:flex}.chain-planner .cfp-add input{flex:1;min-width:0}.chain-planner input,.chain-planner select,.chain-planner .cfp-add button{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-height:2.5rem;padding:.45rem .6rem}.chain-planner .cfp-add button{color:#fff;background:var(--accent);border-color:var(--accent);cursor:pointer}.chain-planner .cfp-add button:hover{background:var(--accent-strong)}.chain-planner .cfp-chips{flex-wrap:wrap;gap:.5rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.chain-planner .cfp-chips li{background:var(--accent-soft);border-radius:999px;align-items:center;gap:.35rem;margin:0;padding:.2rem .3rem .2rem .75rem;font-size:.9rem;display:inline-flex}.chain-planner .cfp-chips button{color:var(--accent-strong);cursor:pointer;background:0 0;border:0;padding:.15rem .4rem;font-size:1.1rem;line-height:1}.chain-planner .cfp-missing{color:var(--danger)}.chain-planner .cfp-summary{background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:var(--radius);margin:1.25rem 0 .5rem;padding:.75rem 1rem}.chain-planner img{box-shadow:none;object-fit:contain;border:0;border-radius:0;margin:0}.chain-planner .cfp-icon{vertical-align:-.3em;width:1.5em;height:1.3em;display:inline-block}.chain-planner .cfp-art{aspect-ratio:217/105;width:100%;display:block}.chain-planner .cfp-output h3{margin-top:1.5rem}.chain-planner .cfp-region{margin:1rem 0 .5rem}.chain-planner .cfp-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr));gap:1rem;display:grid}.chain-planner .cfp-card{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--cfp-radius);box-shadow:var(--shadow);padding:.9rem 1rem;container-type:inline-size}.chain-planner .cfp-card header{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.chain-planner .cfp-marker{width:3.5rem;height:2.75rem}.chain-planner .cfp-card h4{margin:0}.chain-planner .cfp-level{text-transform:uppercase;letter-spacing:.04em;color:var(--cfp-tier);font-size:.8rem;font-weight:600}.chain-planner .cfp-site{background:var(--surface-soft);border-radius:999px;margin:0 0 0 auto;padding:.25rem .7rem;font-size:.9rem;font-weight:600}.chain-planner .cfp-site span{color:var(--muted);font-weight:400}.chain-planner .cfp-card-body{gap:.25rem 2rem;display:grid}@container (width>=46rem){.chain-planner .cfp-card-body{grid-template-columns:auto minmax(0,1fr)}}.chain-planner dl{margin:0}.chain-planner dt{color:var(--muted);margin-top:.6rem;font-size:.85rem;font-weight:600}.chain-planner dd{margin:.25rem 0 0}.chain-planner .cfp-tiles{grid-template-columns:repeat(3,minmax(0,10rem));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}@container (width<=23rem){.chain-planner .cfp-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.chain-planner .cfp-tile{border:1px solid var(--border);border-radius:var(--radius);margin:0;font-size:.875rem;font-weight:600;line-height:1.3;overflow:hidden}.chain-planner .cfp-tile span{padding:.25rem .4rem .35rem;display:block}.chain-planner .cfp-tile-free{border:1px dashed var(--border);color:var(--muted);background:0 0;place-items:center;font-weight:400;display:grid}.chain-planner .cfp-mayor ol{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.chain-planner .cfp-mayor li{gap:.5rem;margin:0;line-height:1.3;display:flex}.chain-planner .cfp-mayor .cfp-icon{flex:none;font-size:1.25rem}.chain-planner .cfp-mayor .cfp-meta{display:block}.chain-planner .cfp-free,.chain-planner .cfp-exact,.chain-planner .cfp-meta,.chain-planner .cfp-empty{color:var(--muted);font-size:.85rem;font-weight:400}.chain-planner .cfp-free{white-space:nowrap}.chain-planner .cfp-chain h4{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.chain-planner .cfp-target-art{width:2.5rem;height:2.5rem}.chain-planner .cfp-chain p{margin:0}.chain-planner .cfp-good{white-space:nowrap;font-weight:600}.chain-planner .cfp-io{margin-top:.15rem}.chain-planner .cfp-chain ul{border-left:2px solid var(--accent-soft);margin:.5rem 0 0 .6rem;padding-left:.9rem;list-style:none}.chain-planner .cfp-chain li{margin:.5rem 0 0}.chain-planner .cfp-chain>ul{border:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr));gap:1rem;margin:.75rem 0 1.5rem;padding:0;display:grid}.chain-planner .cfp-chain>ul>li{background:var(--surface);border:1px solid var(--border);border-radius:var(--cfp-radius);margin:0;padding:.75rem 1rem}.chain-planner .cfp-product{font-size:1.05rem;font-weight:700}.chain-planner .cfp-source{margin-top:.25rem}.chain-planner div.cfp-source{grid-template-columns:7rem minmax(0,1fr);align-items:start;gap:.75rem;display:grid}@media (width<=40rem){.chain-planner div.cfp-source{grid-template-columns:minmax(0,1fr);gap:.25rem}.chain-planner div.cfp-source .cfp-art{max-width:9rem}}.chain-planner .cfp-count{color:var(--accent-strong);font-weight:600}
