/* =============================================
   SWC Volunteer Registration Form — Plugin CSS
   সব ক্লাস swc- prefix দিয়ে scoped
   ============================================= */

/* Google Font (Bangla) */
@import url('https://fonts.googleapis.com/css2?family=Hind+Siliguri:wght@400;500;600;700&display=swap');

/* ---- Variables ---- */
.swc-vol-wrap {
    --swc-primary:      #16a34a;
    --swc-primary-dark: #15803d;
    --swc-text-dark:    #1f2937;
    --swc-text-med:     #374151;
    --swc-border:       #e5e7eb;
    --swc-radius-sm:    6px;
    --swc-radius-full:  9999px;
    --swc-shadow-lg:    0 10px 25px rgba(0,0,0,0.10);
    --swc-font:         'Hind Siliguri', 'Noto Sans Bengali', sans-serif;
    --swc-transition:   all 0.3s ease;

    font-family: var(--swc-font);
    max-width: 780px;
    margin: 0 auto;
    padding: 0 16px;
}

/* ---- Alert Messages ---- */
.swc-alert {
    padding: 14px 20px;
    border-radius: var(--swc-radius-sm);
    margin-bottom: 20px;
    font-size: 15px;
    font-weight: 500;
    font-family: var(--swc-font);
}
.swc-alert-success {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    color: #166534;
}
.swc-alert-error {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

/* ---- Form Card ---- */
.swc-vol-wrap form {
    background: #ffffff;
    border-radius: 20px;
    padding: 40px;
    box-shadow: var(--swc-shadow-lg);
    border: 1px solid var(--swc-border);
}

/* ---- Grid ---- */
.swc-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 24px;
}

@media (max-width: 600px) {
    .swc-form-grid {
        grid-template-columns: 1fr;
    }
    .swc-vol-wrap form {
        padding: 24px 18px;
    }
}

/* ---- Form Groups ---- */
.swc-form-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.swc-full-width {
    grid-column: 1 / -1;
}

/* ---- Labels ---- */
.swc-form-label {
    font-size: 14px;
    font-weight: 600;
    color: var(--swc-text-med);
    font-family: var(--swc-font);
}
.swc-required {
    color: #ef4444;
    margin-left: 2px;
}

/* ---- Inputs ---- */
.swc-form-input,
.swc-form-textarea,
.swc-form-select {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid var(--swc-border);
    border-radius: var(--swc-radius-sm);
    font-size: 15px;
    font-family: var(--swc-font);
    color: var(--swc-text-dark);
    background: #ffffff;
    transition: var(--swc-transition);
    outline: none;
    box-sizing: border-box;
}
.swc-form-input:focus,
.swc-form-textarea:focus,
.swc-form-select:focus {
    border-color: var(--swc-primary);
    box-shadow: 0 0 0 3px rgba(22,163,74,0.12);
}
.swc-form-textarea {
    height: 120px;
    resize: vertical;
}

/* ---- File Input ---- */
.swc-form-input[type="file"] {
    padding: 9px 16px;
    cursor: pointer;
}

/* ---- Submit Button ---- */
.swc-submit-btn {
    width: 100%;
    padding: 14px;
    font-size: 16px;
    font-weight: 700;
    font-family: var(--swc-font);
    background: var(--swc-primary);
    color: #ffffff;
    border: none;
    border-radius: var(--swc-radius-full);
    cursor: pointer;
    transition: var(--swc-transition);
    letter-spacing: 0.3px;
}
.swc-submit-btn:hover:not(:disabled) {
    background: var(--swc-primary-dark);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(22,163,74,0.35);
}
.swc-submit-btn:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    transform: none;
}
