.sp h1{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.sp-h{display:flex;gap:.5rem;align-items:center;margin-top:1.6rem}.sp .fi{flex:none;vertical-align:-4px}
.sp-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0}.sp-chip{display:inline-flex;gap:.35rem;align-items:center;background:#f1f5ec;border:1px solid #d8e4c8;border-radius:999px;padding:.35rem .8rem;font-size:.9rem}
.sp-act .btn{margin:.2rem .2rem .2rem 0}.src{display:block;font-size:.78rem;color:#5a6672}.src a{color:inherit}.nf{color:#a14b2a;font-style:italic}
.sp-t{width:100%;border-collapse:collapse;font-size:.9rem}.sp-t th,.sp-t td{border-bottom:1px solid var(--line,#ddd);padding:.45rem;text-align:left;vertical-align:top}.sp-t td:last-child{min-width:9rem}
.sp-in{display:block;margin:.4rem 0}.sp-in input[type=number]{width:7rem}.sp input[type=number],.sp select{padding:.4rem;border:1px solid var(--line,#ccc);border-radius:8px;font:inherit;max-width:100%}
.sp-warn{background:#fff6e0;border-left:6px solid #c99a2e;padding:.6rem .8rem;border-radius:6px}
.sp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8rem}.sp-grid fieldset{border:1px solid var(--line,#ddd);border-radius:10px;padding:.6rem .8rem}.sp-grid legend{font-weight:700;padding:0 .3rem}.sp-grid label{display:flex;flex-direction:column;font-size:.88rem;margin:.35rem 0}.sp-grid input,.sp-grid select{width:100%;box-sizing:border-box}
.sp-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem;margin:1rem 0}.sp-out div{background:#f4f6f8;border-radius:10px;padding:.7rem}.sp-out b{display:block;font-size:1.35rem}.sp-out small{color:#4a5560}
.sp-chk li{margin:.35rem 0}#f-chart svg{width:100%;height:auto}.neg{color:#a14b2a}
@media (max-width:600px){.sp-t{font-size:.82rem}.sp-t td:last-child{min-width:0}.sp h1{font-size:1.5rem}}
@media print{.noprint,header,footer,nav{display:none!important}.sp details{display:block}.card{break-inside:avoid;box-shadow:none}.sp-grid input{border:none}}
