.bsf-open{display:inline-block;margin:12px 0;padding:10px 18px;background:#111;color:#fff;border:0;border-radius:6px;font-weight:600;cursor:pointer}
.bsf-open:hover{background:#c8a24a;color:#111}
.bsf-lock{overflow:hidden}
.bsf-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px}
.bsf-modal{background:#fff;color:#111;max-width:480px;width:100%;max-height:90vh;overflow:auto;border-radius:12px;padding:24px;position:relative;font-size:15px}
.bsf-modal h3{margin:0 0 4px}
.bsf-sub{margin:0 0 14px;color:#666;font-size:13px}
.bsf-x{position:absolute;top:10px;right:14px;background:none;border:0;font-size:26px;cursor:pointer;color:#111}
.bsf-modal label{display:block;margin:8px 0;font-weight:600;font-size:13px}
.bsf-modal input,.bsf-modal select{display:block;width:100%;margin-top:4px;padding:8px;border:1px solid #ccc;border-radius:6px;font-size:15px;box-sizing:border-box}
.bsf-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.bsf-hide{display:none!important}
.bsf-units{display:inline-flex;border:1px solid #111;border-radius:6px;overflow:hidden;margin:6px 0 10px}
.bsf-units button{background:#fff;color:#111;border:0;padding:6px 12px;cursor:pointer;font-size:13px}
.bsf-units button.on{background:#111;color:#fff}
.bsf-modal details{margin:10px 0}
.bsf-modal summary{cursor:pointer;font-size:13px;text-decoration:underline}
.bsf-go,.bsf-apply{width:100%;margin-top:12px;padding:12px;background:#111;color:#fff;border:0;border-radius:6px;font-weight:700;cursor:pointer}
.bsf-apply{background:#c8a24a;color:#111}
.bsf-pick{margin-top:16px;text-align:center;padding:14px;border:2px solid #c8a24a;border-radius:10px}
.bsf-pick span{display:block;font-size:13px;color:#666}
.bsf-pick strong{font-size:34px}
.bsf-conf,.bsf-note{font-size:13px;color:#444;margin:8px 0}
.bsf-err{color:#b32d2e}
.bsf-table{width:100%;border-collapse:collapse;font-size:14px}
.bsf-table th,.bsf-table td{border:1px solid #ddd;padding:6px 8px;text-align:center}
.bsf-table th{background:#111;color:#fff}
.bsf-how ul{padding-left:18px;font-size:13px}
.bsf-fit{margin:14px 0;padding:12px;background:#f6f6f6;border-radius:8px}
.bsf-fit-h{margin:0 0 8px;font-weight:700;font-size:13px}
.bsf-fit-row{display:grid;grid-template-columns:56px 1fr 104px;align-items:center;gap:8px;font-size:13px;margin:6px 0}
.bsf-fit-row em{font-style:normal;color:#444}
.bsf-bar{position:relative;height:6px;background:linear-gradient(90deg,#e8b4a4,#c8a24a 50%,#a8c4d8);border-radius:3px}
.bsf-bar i{position:absolute;top:-4px;width:14px;height:14px;margin-left:-7px;background:#111;border:2px solid #fff;border-radius:50%}
.bsf-fit-scale{display:flex;justify-content:space-between;font-size:11px;color:#888;margin-left:64px;margin-right:112px}
.bsf-between{font-size:13px;background:#fff8e6;border-left:3px solid #c8a24a;padding:8px 10px;margin:10px 0}
.bsf-apply-alt{background:#fff;color:#111;border:1px solid #111}
.bsf-forget{background:none;border:0;padding:0;text-decoration:underline;cursor:pointer;font-size:13px;color:#111}
.bsf-try{margin:14px 0;padding:12px;border:1px solid #eee;border-radius:10px;text-align:center}
.bsf-try .bsf-fit-h{margin:0 0 4px}
.bsf-try-tabs{margin:6px auto}
.bsf-avatar{width:100%;max-width:230px;height:auto;display:block;margin:4px auto}
.bsf-small{font-size:11px;color:#888}
