:root{--blue:#1f4e79;--blue-d:#163a5a;--green:#2e7d4f;--green-l:#e6f3ec;--alt:#f1f4f8;--text:#1d2633;--muted:#5b6675;--line:#dfe4ea}
*{box-sizing:border-box}
html,body{margin:0;background:#fff}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--text);line-height:1.5;font-size:16px}
.bp-embed{max-width:520px;margin:0 auto;padding:16px 18px;border:1px solid var(--line);border-radius:14px}
h1{font-size:1.25rem;margin:0;color:var(--blue-d);line-height:1.25}
.bp-sub{margin:.2em 0 .4em;color:var(--muted);font-size:.85rem}
label,legend{display:block;font-weight:600;font-size:.92rem;margin:.9em 0 .3em}
fieldset{border:0;padding:0;margin:0}
.bp-money{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:10px;overflow:hidden}
.bp-money:focus-within{border-color:var(--blue);outline:2px solid rgba(31,78,121,.15)}
.bp-money span{padding:0 .7em;color:var(--muted);font-weight:600}
.bp-money input{border:0;padding:.65em .5em .65em 0;font-size:1rem;width:100%;outline:none;background:transparent}
.bp-seg{display:inline-flex;border:1.5px solid var(--line);border-radius:10px;overflow:hidden}
.bp-seg input{position:absolute;opacity:0}
.bp-seg label{margin:0;padding:.45em 1.3em;cursor:pointer;font-weight:500}
.bp-seg input:checked+label{background:var(--blue);color:#fff}
.bp-seg input:focus-visible+label{outline:2px solid var(--blue)}
.bp-btn{display:block;width:100%;margin-top:1em;background:var(--green);color:#fff;border:0;border-radius:10px;padding:.75em;font-size:1rem;font-weight:600;cursor:pointer}
.bp-btn:hover{background:#246640}
.bp-err{color:#b91c1c;font-size:.88rem;margin:.8em 0 0}
.bp-result{margin-top:1em}
.bp-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bp-kpi{background:var(--alt);border-radius:12px;padding:12px}
.bp-kpi.main{background:var(--green-l)}
.bp-kpi span{display:block;font-size:.8rem;color:var(--muted)}
.bp-kpi strong{display:block;font-size:1.6rem;color:var(--blue-d);line-height:1.2}
.bp-kpi.main strong{color:var(--green)}
.bp-note{font-size:.85rem;margin:.7em 0 0;color:#334155}
.bp-foot{margin:.9em 0 0;font-size:.88rem}
.bp-foot a{color:var(--blue)}
.bp-small{font-size:.75rem;color:var(--muted);margin-top:.4em}
.bp-credit{font-weight:600}
.bp-money input{min-height:44px}.bp-btn{min-height:44px}
