.tbf{display:grid;gap:14px;margin:0 0 20px}
.tbf .tbf-field{margin:0;display:flex;flex-direction:column;gap:6px}
.tbf label{font-weight:500;color:inherit}
.tbf .tbf-req{color:#c0392b}
.tbf input[type=text],.tbf input[type=email],.tbf input[type=tel],.tbf input[type=url],.tbf input[type=date],.tbf select,.tbf textarea{width:100%;max-width:100%;box-sizing:border-box}
.tbf textarea{min-height:120px;resize:vertical}
.tbf .tbf-hint{color:#777;font-size:12px}
.tbf .tbf-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tbf .tbf-actions{margin:4px 0 0}
.tbf .tbf-submit[disabled]{opacity:.6;cursor:wait}
.tbf .tbf-invalid{border-color:#e5533d!important;box-shadow:0 0 0 1px #e5533d}
.tbf .tbf-status:empty{display:none}
.tbf .tbf-status{padding:10px 14px;border-radius:6px;background:#fdecea;color:#8a1f11}
.tbf-done{padding:16px 18px;border-radius:8px;background:#e8f5ee;color:#14532d;font-weight:500;margin:0 0 20px}
/* อ่าน/แตะง่ายบนมือถือ: ตัวอักษร 16px กัน iPhone ซูมเอง · ช่องสูงพอให้นิ้วแตะ */
.tbf input[type=text],.tbf input[type=email],.tbf input[type=tel],.tbf input[type=url],.tbf input[type=date],.tbf select,.tbf textarea{font-size:16px;min-height:46px}
.tbf ::placeholder{opacity:.55}
.tbf .tbf-choice{border:0;margin:0;padding:0;min-width:0}
.tbf .tbf-choice legend{font-weight:500;padding:0;margin:0 0 8px;color:inherit;font-size:inherit;line-height:inherit;font-family:inherit;text-transform:none;letter-spacing:0;border:0;width:auto}
.tbf .tbf-chips{display:flex;flex-wrap:wrap;gap:8px}
.tbf .tbf-chip-in{position:absolute;opacity:0;width:1px;height:1px}
.tbf .tbf-chip{display:inline-flex;align-items:center;min-height:40px;padding:6px 16px;border:1px solid currentColor;border-radius:999px;cursor:pointer;opacity:.75;font-weight:400;user-select:none}
.tbf .tbf-chip:hover{opacity:1}
.tbf .tbf-chip-in:checked+.tbf-chip{opacity:1;background:#B35400;border-color:#B35400;color:#fff}
.tbf .tbf-chip-in:focus-visible+.tbf-chip{outline:2px solid #FF8300;outline-offset:2px}
.tbf .tbf-submit{min-height:48px;padding-left:28px;padding-right:28px}
.tbf textarea{min-height:120px}
.tbf .tbf-chip{font-size:15px;line-height:1.3}
.tbf .tbf-msg:empty{display:none}
.tbf .tbf-msg{font-size:14px;line-height:1.4}
.tbf .tbf-msg-err{color:#e5533d}
.tbf .tbf-msg-hint{color:inherit;opacity:.9}
.tbf .tbf-fix{background:none;border:0;padding:0;margin:0;color:#FF8300;text-decoration:underline;cursor:pointer;font:inherit}
.tbf .tbf-fix{text-transform:none!important;letter-spacing:0!important;font-weight:500!important;min-height:0!important;height:auto!important;line-height:inherit!important;box-shadow:none!important;font-size:inherit!important}
.tbf{grid-template-columns:minmax(0,1fr)}.tbf>*{min-width:0;max-width:100%}.tbf input[type=date]{min-width:0}
.tbf-register .tbf-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
