/* Basic container + background (cream) */
.bsf-container{
    max-width: 1100px;
    margin: 30px auto;
    background: #F6F3EE;
    padding: 28px;
    border-radius: 10px;
    font-family: "Helvetica Neue", Arial, sans-serif;
    color: #222;
}

/* Title like your screenshot */
.bsf-title{
    text-align: center;
    font-size: 40px;
    margin-bottom: 18px;
    font-weight: 700;
}

/* Top row (Name / Email / Contact) */
.bsf-top-row{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 28px;
}
.bsf-top-field label{ font-weight:700; margin-bottom:6px; display:block; color:#222;}
.bsf-top-field input{
    width:100%;
    padding:12px 14px;
    border-radius:10px;
    border:1px solid #ddd;
    box-shadow: none;
    font-size:14px;
}

/* Each row contains 3 item-cards */
.bsf-item-row{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-bottom: 18px;
}

/* Individual card */
.bsf-item-card{
    background: #fff;
    border-radius: 10px;
    padding: 14px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 170px;
}

/* small code badge */
.bsf-item-code{
    font-weight:700;
    color:#e67e22; /* orange */
    background: #fff6ee;
    display: inline-block;
    padding: 6px 8px;
    border-radius: 6px;
    font-size:13px;
}

/* name in orange like your design */
.bsf-item-name{
    color: #e65100;
    font-weight: 800;
    font-size: 16px;
}

/* amount text */
.bsf-item-amount{
    font-size: 14px;
    color: #333;
}

/* selection checkbox */
.bsf-item-tick label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-weight:600;
}

/* contribution input */
.bsf-item-contrib input{
    width:100%;
    padding:10px 12px;
    border-radius:8px;
    border:1px solid #ddd;
    font-size:14px;
}

/* total and submit */
.bsf-total-row{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
    margin-top: 12px;
}
.bsf-total-row input{
    font-weight:700;
    padding:8px 12px;
    border-radius:8px;
    border:1px solid #ccc;
    width:180px;
}

.bsf-submit-row{
    text-align:center;
    margin-top:18px;
}
.bsf-submit{
    background:#ffb400;
    color:#fff;
    border:none;
    padding:12px 26px;
    border-radius:10px;
    font-size:16px;
    cursor:pointer;
}
.bsf-submit:hover{ background:#e89c00; }

/* Responsive: stack to single column on small screens */
@media (max-width: 900px){
    .bsf-item-row { grid-template-columns: 1fr; }
    .bsf-top-row { grid-template-columns: 1fr; }
    .bsf-container{ padding:18px; }
    .bsf-title{ font-size:32px; }
}
