/* Tool framework — shared styles for all [bp-tool] embeds. */
.bp-tool-inline-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;background:linear-gradient(135deg,#0B2545,#1E5EFF);color:#fff;border:0;border-radius:12px;font:600 14px/1 -apple-system,Segoe UI,Roboto,Inter,sans-serif;cursor:pointer;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 8px 22px rgba(30,94,255,.25);max-width:340px}
.bp-tool-inline-cta:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,94,255,.32);color:#fff}
.bp-tool-inline-cta:focus{outline:3px solid #C8A24B;outline-offset:2px}

/* INLINE TOOL CARD — the tool sits in the page directly, no button gate */
.bp-tool-inline{font:14px/1.5 -apple-system,Segoe UI,Roboto,Inter,sans-serif;color:#1A1A1A;margin:24px 0}
.bp-i-card{background:#fff;border:1px solid #E1E6EF;border-radius:18px;overflow:hidden;box-shadow:0 12px 40px rgba(11,37,69,.08);max-width:680px;margin:0 auto}
.bp-i-head{display:flex;align-items:center;gap:12px;padding:18px 22px;background:linear-gradient(135deg,#0B2545,#13315C);color:#fff}
.bp-i-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#C8A24B,#E2BE71);color:#0B2545;display:flex;align-items:center;justify-content:center;font:700 16px/1 inherit;flex:0 0 42px;animation:bpBreath 4s ease-in-out infinite;box-shadow:0 4px 12px rgba(200,162,75,.3)}
.bp-i-head-meta{flex:1;min-width:0}
.bp-i-tag{font:600 10.5px/1 inherit;letter-spacing:.8px;text-transform:uppercase;color:#C8A24B;margin-bottom:4px}
.bp-i-title{font:700 17px/1.2 Georgia,serif;color:#fff;margin:0 0 4px}
.bp-i-tagline{font-size:12.5px;color:rgba(255,255,255,.7);line-height:1.4}
.bp-i-stage{padding:22px}
.bp-i-stage h2{font:700 17px/1.3 Georgia,serif;color:#0B2545;margin:0 0 12px}
.bp-i-stage p.bp-i-prompt{font:italic 15px/1.55 inherit;color:#0B2545;background:#F8FAFF;padding:14px 16px;border-radius:12px;border-left:3px solid #1E5EFF;margin:0 0 16px}
.bp-i-input{width:100%;padding:14px 16px;border:1.5px solid #E1E6EF;border-radius:12px;font:inherit;font-size:15px;color:#0B2545;outline:none;box-sizing:border-box;margin-bottom:10px;transition:border-color .15s ease,box-shadow .15s ease}
.bp-i-input:focus{border-color:#1E5EFF;box-shadow:0 0 0 4px rgba(30,94,255,.12)}
.bp-i-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.bp-i-options.one{grid-template-columns:1fr}
.bp-i-option{padding:14px 16px;background:#fff;border:1.5px solid #E1E6EF;border-radius:12px;cursor:pointer;text-align:left;font:600 13.5px/1.3 inherit;color:#0B2545;transition:all .2s ease}
.bp-i-option:hover{border-color:#1E5EFF;background:#F8FAFF;transform:translateY(-1px);box-shadow:0 6px 16px rgba(30,94,255,.08)}
.bp-i-option.selected{border-color:#1E5EFF;background:#EFF4FF;box-shadow:0 0 0 3px rgba(30,94,255,.15)}
.bp-i-yesno{display:flex;gap:10px}
.bp-i-yesno button{flex:1;padding:14px;background:#fff;border:1.5px solid #E1E6EF;border-radius:12px;cursor:pointer;font:600 14px/1 inherit;color:#0B2545;transition:all .15s ease}
.bp-i-yesno button:hover{border-color:#1E5EFF;background:#F8FAFF}
.bp-i-actions{display:flex;gap:10px;margin-top:14px}
.bp-i-btn{padding:14px 22px;background:linear-gradient(135deg,#0B2545,#1E5EFF);color:#fff;border:0;border-radius:12px;font:600 14px/1 inherit;cursor:pointer;flex:1;transition:transform .15s ease,box-shadow .15s ease}
.bp-i-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,94,255,.32)}
.bp-i-btn.ghost{background:transparent;color:#5C6B7A;border:1.5px solid #E1E6EF;flex:0 0 auto}
.bp-i-btn.ghost:hover{color:#1E5EFF;border-color:#1E5EFF}
.bp-i-progress{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:11.5px;color:#5C6B7A}
.bp-i-progress-bar{flex:1;height:3px;background:#EEF1F6;border-radius:3px;overflow:hidden}
.bp-i-progress-bar div{height:100%;background:linear-gradient(90deg,#1E5EFF,#5C8FFF);transition:width .35s ease}

/* Inline loading + verdict + result */
.bp-i-loading{padding:30px 20px;text-align:center}
.bp-i-loading-spinner{width:42px;height:42px;border:3px solid #EEF1F6;border-top-color:#1E5EFF;border-radius:50%;margin:0 auto 14px;animation:bpSpin 1s linear infinite}
.bp-i-loading-msg{font-size:13px;color:#5C6B7A;font-style:italic}

.bp-i-verdict{margin:0 0 18px;padding:18px 20px;background:linear-gradient(135deg,#FFFBEC 0%,#FFF6E0 100%);border:1px solid #F0DEA5;border-radius:12px;position:relative}
.bp-i-verdict-label{font:700 10.5px/1 inherit;color:#8C6C20;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.bp-i-verdict-text{font:15px/1.6 Georgia,serif;color:#0B2545}
.bp-i-verdict-text:before{content:"\201C";font-size:32px;color:#C8A24B;line-height:0;vertical-align:-8px;margin-right:4px}
.bp-i-verdict-text:after{content:"\201D";font-size:32px;color:#C8A24B;line-height:0;vertical-align:-12px;margin-left:4px}

.bp-i-result-headline{font:700 22px/1.3 Georgia,serif;color:#0B2545;margin:0 0 14px}
.bp-i-score-row{display:flex;gap:10px;margin:0 0 18px;flex-wrap:wrap}
.bp-i-score-card{flex:1;min-width:140px;padding:14px;border-radius:12px;background:#F4F6FA}
.bp-i-score-card.green{background:linear-gradient(135deg,#E8F8EE,#D4F0DE)}
.bp-i-score-card.amber{background:linear-gradient(135deg,#FFFBEC,#FFF1C7)}
.bp-i-score-card.red{background:linear-gradient(135deg,#FEEFEF,#FBD9D9)}
.bp-i-score-label{font:600 10.5px/1 inherit;color:#5C6B7A;text-transform:uppercase;letter-spacing:.6px}
.bp-i-score-value{font:700 30px/1 -apple-system,Inter,sans-serif;color:#0B2545;letter-spacing:-1px;margin:8px 0 2px}
.bp-i-score-card.green .bp-i-score-value{color:#1F8F5F}
.bp-i-score-card.amber .bp-i-score-value{color:#8C6C20}
.bp-i-score-card.red .bp-i-score-value{color:#B5341D}
.bp-i-section{margin:18px 0}
.bp-i-section h3{font:700 12.5px/1 inherit;color:#0B2545;text-transform:uppercase;letter-spacing:.6px;margin:0 0 12px}
.bp-i-finding{padding:14px 16px;background:#FFFBEC;border-left:3px solid #C8A24B;border-radius:10px;margin-bottom:10px;font-size:13.5px}
.bp-i-finding.critical{background:#FEEFEF;border-left-color:#B5341D}
.bp-i-finding.high{background:#FFF6E6;border-left-color:#E89400}
.bp-i-finding-title{font-weight:600;color:#0B2545;margin-bottom:4px}
.bp-i-finding-fix{color:#1F8F5F;font-size:12.5px;margin-top:6px;font-weight:600}
.bp-i-finding-fix:before{content:"\2192 "}
.bp-i-finding-meta{font-size:11px;color:#5C6B7A;margin-top:4px;text-transform:uppercase;letter-spacing:.4px}
.bp-i-finding-evidence{margin:8px 0 6px;padding:8px 12px;background:rgba(11,37,69,.04);border-left:2px solid #5C6B7A;border-radius:4px;font:italic 12.5px/1.5 Georgia,serif;color:#0B2545}
.bp-i-finding-evidence:before{content:'"';font-size:18px;color:#C8A24B;margin-right:2px;line-height:0;vertical-align:-4px}
.bp-i-finding-evidence + .bp-i-finding-evidence{margin-top:-2px}
.bp-i-finding-why{margin:6px 0;color:#1A1A1A;font-size:12.5px;line-height:1.5}
.bp-i-finding-tags{display:flex;gap:6px;margin-top:8px}
.bp-i-tag{font-size:10px;font-weight:600;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px}
.bp-i-tag.impact-critical{background:#FEEFEF;color:#B5341D}
.bp-i-tag.impact-high{background:#FFF6E6;color:#B07000}
.bp-i-tag.impact-medium{background:#FFFBEC;color:#8C6C20}
.bp-i-tag.impact-low{background:#F4F6FA;color:#5C6B7A}
.bp-i-tag.effort-low{background:#E8F8EE;color:#1F8F5F}
.bp-i-tag.effort-medium{background:#EFF4FF;color:#1E5EFF}
.bp-i-tag.effort-high{background:#F4F6FA;color:#5C6B7A}

/* Action plan */
.bp-i-plan{margin:22px 0;padding:18px;background:#0B2545;color:#fff;border-radius:14px}
.bp-i-plan h3{font:700 12px/1 inherit;color:#C8A24B;text-transform:uppercase;letter-spacing:.8px;margin:0 0 14px}
.bp-i-plan-bucket{margin-bottom:14px}
.bp-i-plan-bucket:last-child{margin-bottom:0}
.bp-i-plan-bucket h4{font:600 11.5px/1 inherit;color:#C8A24B;text-transform:uppercase;letter-spacing:.6px;margin:0 0 8px;display:flex;align-items:center;gap:8px}
.bp-i-plan-bucket h4:before{content:"";width:18px;height:1px;background:#C8A24B}
.bp-i-plan-item{padding:8px 12px;background:rgba(255,255,255,.05);border-radius:8px;margin-bottom:6px;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.bp-i-plan-item span{flex:1}
.bp-i-plan-item small{font-size:10px;opacity:.7;letter-spacing:.4px;text-transform:uppercase}
.bp-i-pages-meta{font-size:11px;color:#5C6B7A;margin:-8px 0 16px;font-style:italic}
.bp-i-money-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed #E1E6EF;font-size:13.5px}
.bp-i-money-row strong{color:#0B2545;font:700 13.5px/1 -apple-system,Inter,sans-serif}
.bp-i-uplift{margin:18px 0;padding:18px;background:linear-gradient(135deg,#1F8F5F,#2BAA74);color:#fff;border-radius:14px;text-align:center}
.bp-i-uplift-label{font:600 11.5px/1 inherit;text-transform:uppercase;letter-spacing:.8px;opacity:.9}
.bp-i-uplift-amount{font:700 32px/1 -apple-system,Inter,sans-serif;letter-spacing:-1px;margin:8px 0}
.bp-i-uplift-note{font-size:12px;opacity:.85}
.bp-i-handoff{margin-top:20px;display:flex;flex-direction:column;gap:8px}
.bp-i-handoff a.primary{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 22px;background:linear-gradient(135deg,#0B2545,#1E5EFF);color:#fff;border-radius:12px;text-decoration:none;font:600 14px/1 inherit;transition:transform .15s ease,box-shadow .15s ease}
.bp-i-handoff a.primary:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(30,94,255,.35)}
.bp-i-handoff a.secondary{display:block;text-align:center;padding:12px;color:#5C6B7A;text-decoration:none;font-size:13px}
.bp-i-handoff a.secondary:hover{color:#1E5EFF}
.bp-i-checkbox{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:#5C6B7A;margin:10px 0 14px;line-height:1.45;cursor:pointer}
.bp-i-checkbox input{margin-top:2px;accent-color:#1E5EFF}
.bp-i-error{padding:12px 14px;background:#FEEFEF;border:1px solid #F4C7C7;border-radius:10px;color:#8B1F1F;font-size:13px;margin:8px 0}

@media (max-width:520px){
  .bp-i-card{border-radius:14px}
  .bp-i-stage{padding:18px}
  .bp-i-options{grid-template-columns:1fr}
  .bp-i-score-row{flex-direction:column}
  .bp-i-uplift-amount{font-size:26px}
}

/* Tool modal — re-uses .bp-modal shell but tools get their own bubble flavour */
.bp-t-shell{font:14px/1.5 -apple-system,Segoe UI,Roboto,Inter,sans-serif;color:#1A1A1A}
.bp-t-step{padding:8px 4px;animation:bpBubbleIn .4s ease-out}
.bp-t-step h2{font:700 18px/1.3 Georgia,serif;color:#0B2545;margin:0 0 8px}
.bp-t-step p.bp-t-prompt{font:italic 14px/1.55 inherit;color:#0B2545;background:#F8FAFF;padding:12px 14px;border-radius:10px;border-left:3px solid #1E5EFF;margin:0 0 14px}
.bp-t-input{width:100%;padding:12px 14px;border:1.5px solid #E1E6EF;border-radius:12px;font:inherit;font-size:15px;color:#0B2545;outline:none;box-sizing:border-box;margin-bottom:10px}
.bp-t-input:focus{border-color:#1E5EFF;box-shadow:0 0 0 3px rgba(30,94,255,.12)}
.bp-t-input.has-prefix{padding-left:32px}
.bp-t-input-wrap{position:relative}
.bp-t-input-prefix{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-weight:700;color:#5C6B7A;pointer-events:none}
.bp-t-help{font-size:11.5px;color:#5C6B7A;margin:-4px 0 10px;font-style:italic}
.bp-t-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bp-t-options.one{grid-template-columns:1fr}
.bp-t-option{padding:14px;background:#fff;border:1.5px solid #E1E6EF;border-radius:12px;cursor:pointer;text-align:left;font:600 13.5px/1.3 inherit;color:#0B2545;transition:all .2s ease;position:relative}
.bp-t-option:hover{border-color:#1E5EFF;background:#F8FAFF;transform:translateY(-1px)}
.bp-t-option.selected{border-color:#1E5EFF;background:#EFF4FF;box-shadow:0 0 0 3px rgba(30,94,255,.15)}
.bp-t-yesno{display:flex;gap:10px}
.bp-t-yesno button{flex:1;padding:14px;background:#fff;border:1.5px solid #E1E6EF;border-radius:12px;cursor:pointer;font:600 14px/1 inherit;color:#0B2545;transition:all .15s ease}
.bp-t-yesno button:hover{border-color:#1E5EFF;background:#F8FAFF}
.bp-t-yesno button.selected.yes{border-color:#1F8F5F;background:#E8F8EE;color:#1F8F5F}
.bp-t-yesno button.selected.no{border-color:#B5341D;background:#FEEFEF;color:#B5341D}

.bp-t-progress{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:11.5px;color:#5C6B7A}
.bp-t-progress-bar{height:3px;background:#EEF1F6;border-radius:3px;flex:1;margin:0 12px;overflow:hidden}
.bp-t-progress-bar div{height:100%;background:linear-gradient(90deg,#1E5EFF,#5C8FFF);transition:width .35s ease}

.bp-t-actions{display:flex;gap:8px;margin-top:14px}
.bp-t-btn{padding:13px 18px;background:linear-gradient(135deg,#0B2545,#1E5EFF);color:#fff;border:0;border-radius:12px;font:600 14px/1 inherit;cursor:pointer;flex:1;transition:transform .15s ease}
.bp-t-btn:hover{transform:translateY(-1px)}
.bp-t-btn.ghost{background:transparent;color:#5C6B7A;border:1.5px solid #E1E6EF;flex:0 0 auto}
.bp-t-btn.ghost:hover{color:#1E5EFF;border-color:#1E5EFF}

/* Loading */
.bp-t-loading{padding:30px 20px;text-align:center}
.bp-t-loading-spinner{width:42px;height:42px;border:3px solid #EEF1F6;border-top-color:#1E5EFF;border-radius:50%;margin:0 auto 14px;animation:bpSpin 1s linear infinite}
.bp-t-loading-msg{font-size:13px;color:#5C6B7A}

/* Result frames - shared */
.bp-t-result{padding:4px}
.bp-t-result-headline{font:700 20px/1.3 Georgia,serif;color:#0B2545;margin:0 0 10px}
.bp-t-result-opening{font:italic 14px/1.55 inherit;color:#0B2545;background:#F8FAFF;padding:14px 16px;border-radius:10px;border-left:3px solid #1E5EFF;margin:0 0 18px}
.bp-t-score-row{display:flex;gap:10px;margin:0 0 18px}
.bp-t-score-card{flex:1;padding:14px;border-radius:12px;background:#F4F6FA}
.bp-t-score-card.green{background:#E8F8EE}
.bp-t-score-card.amber{background:#FFFBEC}
.bp-t-score-card.red{background:#FEEFEF}
.bp-t-score-label{font:600 10.5px/1 inherit;color:#5C6B7A;text-transform:uppercase;letter-spacing:.6px}
.bp-t-score-value{font:700 28px/1 -apple-system,Inter,sans-serif;color:#0B2545;letter-spacing:-.5px;margin:6px 0 2px}
.bp-t-score-card.green .bp-t-score-value{color:#1F8F5F}
.bp-t-score-card.amber .bp-t-score-value{color:#8C6C20}
.bp-t-score-card.red .bp-t-score-value{color:#B5341D}
.bp-t-score-sub{font-size:11px;color:#5C6B7A}
.bp-t-section{margin:18px 0}
.bp-t-section h3{font:700 12.5px/1 inherit;color:#0B2545;text-transform:uppercase;letter-spacing:.6px;margin:0 0 10px}
.bp-t-finding{padding:12px 14px;background:#FFFBEC;border-left:3px solid #C8A24B;border-radius:10px;margin-bottom:8px;font-size:13px}
.bp-t-finding.critical{background:#FEEFEF;border-left-color:#B5341D}
.bp-t-finding.high{background:#FFF6E6;border-left-color:#E89400}
.bp-t-finding-title{font-weight:600;color:#0B2545;margin-bottom:4px}
.bp-t-finding-fix{color:#1F8F5F;font-size:12px;margin-top:6px;font-weight:600}
.bp-t-finding-fix:before{content:"→ "}
.bp-t-finding-meta{font-size:11px;color:#5C6B7A;margin-top:4px}

.bp-t-money-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed #E1E6EF;font-size:13px}
.bp-t-money-row strong{color:#0B2545;font:700 13.5px/1 -apple-system,Inter,sans-serif}

.bp-t-uplift{margin:18px 0;padding:18px;background:linear-gradient(135deg,#1F8F5F,#2BAA74);color:#fff;border-radius:14px;text-align:center}
.bp-t-uplift-label{font:600 11.5px/1 inherit;text-transform:uppercase;letter-spacing:.8px;opacity:.9}
.bp-t-uplift-amount{font:700 32px/1 -apple-system,Inter,sans-serif;letter-spacing:-1px;margin:8px 0}
.bp-t-uplift-note{font-size:11.5px;opacity:.85}

.bp-t-handoff{margin-top:18px;display:flex;flex-direction:column;gap:8px}
.bp-t-handoff a.primary{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;background:linear-gradient(135deg,#0B2545,#1E5EFF);color:#fff;border-radius:12px;text-decoration:none;font:600 14px/1 inherit}
.bp-t-handoff a.primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,94,255,.32)}
.bp-t-handoff a.secondary{display:block;text-align:center;padding:10px;color:#5C6B7A;text-decoration:none;font-size:12.5px}
.bp-t-handoff a.secondary:hover{color:#1E5EFF}

.bp-t-competitor{padding:12px 14px;background:#F8FAFF;border-radius:10px;margin-bottom:8px;font-size:13px}
.bp-t-competitor-url{font-weight:600;color:#1E5EFF;font-size:12px}
.bp-t-competitor-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.bp-t-chip{font-size:10.5px;padding:2px 8px;background:#fff;border-radius:999px;color:#5C6B7A;border:1px solid #E1E6EF}
.bp-t-chip.has{background:#E8F8EE;color:#1F8F5F;border-color:#BFE5CD}

.bp-t-gap{padding:12px 14px;background:#FEEFEF;border-radius:10px;margin-bottom:8px;border-left:3px solid #B5341D}
.bp-t-gap-title{font-weight:600;color:#0B2545;font-size:13.5px}
.bp-t-gap-meta{font-size:11.5px;color:#5C6B7A;margin-top:4px}

.bp-t-error{padding:12px 14px;background:#FEEFEF;border:1px solid #F4C7C7;border-radius:10px;color:#8B1F1F;font-size:13px;margin:8px 0}

@media (max-width:480px){
  .bp-t-options{grid-template-columns:1fr}
  .bp-t-score-row{flex-direction:column}
}
