
/* New modules only. Original workspace styles and pricing engine unchanged. */
.bpx{font-size:14px;line-height:1.65;color:#143238;--bx-line:#d9e6e5;min-width:0}
.bpx *{box-sizing:border-box}
.bpx .bx-heading{margin-bottom:26px}
.bpx .bx-heading h1{font-size:clamp(28px,3vw,38px);letter-spacing:-.04em;line-height:1.18}
.bpx .bx-heading p:last-child{margin-top:12px;color:#526a6d;max-width:800px;font-size:15px}
.bpx .bx-intro{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px;border-radius:12px;background:#e7f6ef;border:1px solid #c2e8db;margin-bottom:24px}
.bpx .bx-intro p{margin-top:10px;max-width:660px;color:#486361}
.bpx .bx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.bpx .bx-tile{display:block;border:1px solid #d5e4df;border-radius:11px;background:#fff;padding:23px;text-decoration:none;color:inherit}
.bpx .bx-tile:hover{border-color:#007c72;box-shadow:0 4px 22px #112f3510}
.bpx .bx-number{display:flex;width:34px;height:34px;align-items:center;justify-content:center;background:#e3f4ee;color:#007c72;font-size:11px;font-weight:750;border-radius:6px;margin-bottom:19px}
.bpx .bx-tile h3{font-size:18px;letter-spacing:-.025em}
.bpx .bx-tile p{color:#526a6d;margin-top:10px;font-size:13px}
.bpx .bx-tile>span:last-child{color:#007c72;display:block;margin-top:22px;font-size:12px;font-weight:750}
.bpx .bx-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.bpx .card{min-width:0}
.bpx .bx-steps p{padding:13px 0;border-bottom:1px solid #cce7dc;margin-top:6px}
.bpx .bx-steps b{color:#007c72;margin-right:12px}
.bpx .bx-row{display:flex;gap:22px;align-items:center;justify-content:space-between;border-bottom:1px solid #d9e6e5;padding:15px 0}
.bpx .bx-row p{margin-top:5px}
.bpx .bx-row strong{font-weight:650}
.bpx .bx-row>div{min-width:0}
.bpx .bx-row .row{flex-wrap:wrap}
.bpx .sub{display:block}
.bpx .bx-badge{display:inline-flex;background:#edf3f1;border:1px solid #d8e5e1;border-radius:5px;padding:4px 8px;font-size:10px;font-weight:750;color:#425e60}
.bpx .bx-good{background:#e5f6ed;color:#146447}
.bpx .bx-warn{background:#fff2d8;color:#785500}
.bpx .bx-check{display:flex;align-items:center;gap:14px;border:1px solid #d9e6e5;border-radius:6px;padding:13px;background:#f9fbfa}
.bpx .bx-check input{width:20px;height:20px;accent-color:#007c72;min-height:0}
.bpx .bx-summary{padding:20px;border:1px solid #d9e6e5;border-radius:8px;background:#f0f7f4;white-space:pre-wrap;overflow-wrap:anywhere}
.bpx .bx-error{background:#fff0e8;color:#8b3524;border-left:3px solid #aa4d35;padding:12px;margin-top:18px}
.bpx [hidden]{display:none!important}
.bpx .bx-brand-preview{border:1px solid #d8e6e2;border-radius:10px;overflow:hidden;margin-top:20px}
.bpx .bx-brand-preview header{padding:23px;background:var(--brand);color:white;display:flex;flex-direction:column;gap:8px}
.bpx .bx-brand-preview header strong{font-size:24px}
.bpx .bx-brand-preview>div{padding:23px}
.bpx .bx-brand-preview h2{margin-top:20px}
.bpx .bx-brand-preview p{margin-top:12px}
.bpx .bx-brand-line{height:5px;background:var(--brand);margin:18px 0}
.bpx .bx-clientbrand{padding:13px 19px;border-left:4px solid #007c72;background:#f2f7f5;margin:15px 0 24px;display:flex;justify-content:space-between;gap:18px;align-items:center}
.bpx .bx-clientbrand strong{font-size:22px}
.bpx .bx-clientbrand span{font-size:11px;color:#506368}
.bpx .bx-score{font-size:54px;line-height:1.2;font-weight:750;letter-spacing:-.05em;margin:20px 0;color:#007c72}
.bpx .bx-score small{font-size:22px;margin-left:8px;color:#637977}
.bpx .bx-meter{height:9px;border-radius:8px;background:#cce7db;margin-top:20px;overflow:hidden}
.bpx .bx-meter i{display:block;background:#007c72;height:100%}
.bpx .bx-rating{display:grid;grid-template-columns:20px 1fr 30px;align-items:center;gap:12px;font-size:12px;margin-top:15px}
.bpx .bx-rating>div{height:9px;background:#e6efeb;border-radius:5px;overflow:hidden}
.bpx .bx-rating i{display:block;height:100%;background:#299f87}
.bpx label{font-size:12px;font-weight:650}
.bpx textarea{resize:vertical}
.bpx .bx-public h3{font-size:19px}
.bpx input[type=color]{width:100%;height:48px;padding:5px}
.bpx .row{flex-wrap:wrap}
@media(max-width:1200px){.bpx .bx-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.bpx .bx-grid,.bpx .bx-two{grid-template-columns:1fr}.bpx .bx-intro{display:block}.bpx .bx-intro .btn{margin-top:18px}.bpx .bx-row{align-items:flex-start;gap:15px;flex-wrap:wrap}.bpx .bx-clientbrand{display:block}.bpx .bx-clientbrand span{display:block;margin-top:6px}}
