.jjpb-app{max-width:900px;margin:24px auto;color:#20242b;font:inherit}.jjpb-header{padding:26px;border-radius:18px;background:#172b3a;color:#fff}.jjpb-header h2{margin:.2em 0;font-size:clamp(1.6rem,4vw,2.3rem);color:inherit}.jjpb-eyebrow{letter-spacing:.12em;font-size:.75rem;font-weight:700;opacity:.8}.jjpb-version{font-size:.82rem;opacity:.8}.jjpb-panel,.jjpb-result-card{border:1px solid #dce2e8;border-radius:16px;padding:22px;margin:18px 0;background:#fff}.jjpb-app label{display:block;font-weight:700;margin:18px 0 8px}.jjpb-app input[type=search]{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #bbc5ce;border-radius:8px;font:inherit}.jjpb-searchrow{display:flex;gap:8px}.jjpb-searchrow input{flex:1}.jjpb-app button{font:inherit;cursor:pointer;border:1px solid #b8c4ce;border-radius:8px;padding:9px 12px;background:#f7f9fb;color:#1d2933}.jjpb-app button:hover{filter:brightness(.97)}.jjpb-primary{display:block;width:100%;margin-top:20px!important;background:#155e75!important;color:#fff!important;border-color:#155e75!important;font-weight:700!important;min-height:48px}.jjpb-suggestions{border:1px solid #dce2e8;border-radius:8px;margin-top:6px;overflow:hidden}.jjpb-suggestion{display:flex!important;justify-content:space-between;gap:12px;width:100%;text-align:left;border:0!important;border-radius:0!important;background:#fff!important}.jjpb-suggestion+ .jjpb-suggestion{border-top:1px solid #edf0f3!important}.jjpb-suggestion small,.jjpb-owned-item small{color:#687583}.jjpb-owned-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #edf0f3}.jjpb-owned-item>div{display:flex;align-items:center;gap:8px}.jjpb-owned-item button{padding:4px 9px}.jjpb-muted,.jjpb-footnote{color:#687583;font-size:.9rem}.jjpb-selected-target{margin-top:8px;color:#155e75;font-weight:700}.jjpb-notice{border:1px solid #d7e0e7;border-radius:12px;padding:16px;margin:16px 0;background:#f7fafc}.jjpb-result-card h3{margin-top:0}.jjpb-stats{display:flex;gap:12px;flex-wrap:wrap}.jjpb-stats>div{background:#f0f5f7;border-radius:10px;padding:12px 18px;min-width:130px}.jjpb-stats strong,.jjpb-stats span{display:block}.jjpb-stats strong{font-size:1.7rem}.jjpb-stats span{font-size:.85rem;color:#5d6b78}.jjpb-warning{font-size:.9rem;background:#fff8e8;padding:12px;border-radius:8px}.jjpb-tree,.jjpb-tree ul{list-style:none;padding-left:18px;border-left:2px solid #dce5eb}.jjpb-tree li{position:relative;padding:8px 0 8px 12px}.jjpb-tree li:before{content:"";position:absolute;left:-18px;top:20px;width:14px;border-top:2px solid #dce5eb}.jjpb-tree li>span{display:inline-block;margin-left:8px;color:#687583;font-size:.8rem}.jjpb-tree li.owned>span{color:#16744a}.jjpb-chip{display:inline-block;background:#eef3f6;border-radius:999px;padding:6px 10px;margin:3px;font-size:.9rem}.jjpb-footnote{line-height:1.6;margin:14px 2px}@media(max-width:600px){.jjpb-header,.jjpb-panel,.jjpb-result-card{padding:16px}.jjpb-owned-item{align-items:flex-start;flex-direction:column}.jjpb-searchrow{flex-direction:column}.jjpb-stats>div{flex:1}}

/* Pal icons */
.jjpb-pal-icon,.jjpb-icon-placeholder{display:inline-flex;flex:0 0 36px;width:36px;height:36px;box-sizing:border-box;align-items:center;justify-content:center;object-fit:contain;border-radius:9px;background:#f0f4f7;border:1px solid #e1e7ec;vertical-align:middle}
.jjpb-icon-placeholder{font-size:20px}
.jjpb-suggestion-main,.jjpb-owned-label,.jjpb-pal-label,.jjpb-tree-label{display:inline-flex;align-items:center;gap:9px;min-width:0}
.jjpb-suggestion-main{flex:1}
.jjpb-suggestion{align-items:center!important}
.jjpb-suggestion .jjpb-pal-label{font-weight:600}
.jjpb-pal-label small{display:block;color:#687583;font-weight:400;font-size:.82em}
.jjpb-owned-item>span{display:flex;align-items:center;min-width:0}
.jjpb-owned-item .jjpb-pal-icon,.jjpb-owned-item .jjpb-icon-placeholder{width:34px;height:34px;flex-basis:34px}
.jjpb-selected-target{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.jjpb-selected-target>span:last-child{color:#155e75}
.jjpb-tree-label{font-weight:700}
.jjpb-tree .jjpb-pal-icon,.jjpb-tree .jjpb-icon-placeholder,.jjpb-chip .jjpb-pal-icon,.jjpb-chip .jjpb-icon-placeholder{width:30px;height:30px;flex-basis:30px}
.jjpb-tree .jjpb-pal-label small{display:none}
.jjpb-result-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.jjpb-chip{display:inline-flex;align-items:center;gap:6px}
@media(max-width:600px){.jjpb-suggestion{gap:8px}.jjpb-suggestion .jjpb-pal-icon,.jjpb-suggestion .jjpb-icon-placeholder{width:32px;height:32px;flex-basis:32px}.jjpb-owned-item>div{flex-wrap:wrap}}

/* Step-by-step breeding route list */
.jjpb-steps{list-style:none;margin:14px 0 24px;padding:0;counter-reset:jjpb-step}
.jjpb-step{border:1px solid #dce5eb;border-radius:12px;padding:14px;margin:12px 0;background:#fff}
.jjpb-step-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#263744}
.jjpb-step-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#155e75;color:#fff;font-weight:700;font-size:.9rem}
.jjpb-step-equation{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.jjpb-step-item{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1 1 145px;padding:10px;border-radius:9px;background:#f7f9fb;border:1px solid #edf0f3}
.jjpb-step-pal{display:flex;align-items:center;min-width:0;gap:7px;font-weight:600}
.jjpb-step-pal .jjpb-pal-label{min-width:0;overflow-wrap:anywhere}
.jjpb-step-pal .jjpb-pal-label small{display:none}
.jjpb-step-item .jjpb-pal-icon,.jjpb-step-item .jjpb-icon-placeholder{width:32px;height:32px;flex-basis:32px}
.jjpb-step-status{font-size:.76rem;color:#687583}
.jjpb-step-status.is-owned{color:#16744a}
.jjpb-step-status.is-produced{color:#155e75}
.jjpb-step-status.is-needed{color:#9a5a00}
.jjpb-step-item.is-result{background:#eef7fa;border-color:#b9dbe5}
.jjpb-step-status.is-result-label{font-weight:700;color:#155e75}
.jjpb-step-operator,.jjpb-step-arrow{font-size:1.25rem;font-weight:700;color:#687583;flex:0 0 auto}
@media(max-width:600px){.jjpb-step{padding:12px}.jjpb-step-equation{gap:7px}.jjpb-step-item{flex-basis:calc(50% - 30px);padding:8px}.jjpb-step-arrow{margin-left:auto}.jjpb-step-item.is-result{flex-basis:100%}.jjpb-step-operator{font-size:1.1rem}.jjpb-step-pal .jjpb-pal-label{font-size:.9rem}}

/* Capture requirements */
.jjpb-step-status.is-capture{background:#fff0e5;color:#9a3412;border:1px solid #fed7aa}
.jjpb-capture-tag{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:999px;background:#fff0e5;color:#9a3412;font-size:.72rem;font-weight:700;vertical-align:middle}

/* Direct target breeding combinations fallback */
.jjpb-direct-recipes{padding-left:24px;margin:12px 0 20px}
.jjpb-direct-recipes>li{padding:12px;margin:10px 0;border:1px solid #dce5eb;border-radius:12px;background:#fff}
.jjpb-direct-equation{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:9px}
.jjpb-direct-equation>span{display:inline-flex;align-items:center;gap:5px;min-width:0}
.jjpb-direct-equation .jjpb-pal-icon,.jjpb-direct-equation .jjpb-icon-placeholder{width:30px;height:30px;flex-basis:30px}
.jjpb-direct-result{font-weight:700}
.jjpb-recipe-condition{display:block;margin-top:8px;color:#687583}
@media(max-width:600px){.jjpb-direct-equation{gap:6px}.jjpb-direct-equation .jjpb-pal-label small{display:none}}
