/* Voedselbos Plant Adoptie — stijlen */
:root {
    --vbl-groen:        #3B6D11;
    --vbl-groen-mid:    #639922;
    --vbl-groen-licht:  #EAF3DE;
    --vbl-groen-rand:   #C0DD97;
    --vbl-groen-donker: #27500A;
    --vbl-oranje:       #854F0B;
    --vbl-oranje-licht: #FAEEDA;
    --vbl-rood:         #A32D2D;
    --vbl-rood-licht:   #FCEBEB;
    --vbl-tekst:        #2a2a2a;
    --vbl-radius:       8px;
}

.vpa-wrap {
    max-width: 620px;
    margin: 0 auto;
    font-family: inherit;
    color: var(--vbl-tekst);
}

/* Uitlegblok */
.vpa-uitleg-blok {
    background: var(--vbl-groen-licht);
    border: 1px solid var(--vbl-groen-rand);
    border-radius: var(--vbl-radius);
    padding: 1.25rem;
    margin-bottom: 1.25rem;
}
.vpa-uitleg-blok h3 {
    margin: 0 0 1rem;
    font-size: 15px;
    font-weight: 600;
    color: var(--vbl-groen-donker);
}
.vpa-uitleg-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 0.75rem;
}
@media (max-width: 480px) {
    .vpa-uitleg-grid { grid-template-columns: 1fr; }
}
.vpa-uitleg-item {
    display: flex;
    gap: 8px;
    align-items: flex-start;
}
.vpa-uitleg-icoon {
    font-size: 20px;
    flex-shrink: 0;
    line-height: 1.3;
}
.vpa-uitleg-item strong {
    display: block;
    font-size: 13px;
    color: var(--vbl-groen-donker);
    margin-bottom: 2px;
}
.vpa-uitleg-item p {
    font-size: 12px;
    color: #555;
    margin: 0;
    line-height: 1.5;
}

/* Info-knop bij oogstrecht */
.vpa-info-btn {
    background: none;
    border: none;
    padding: 0;
    margin-left: 3px;
    cursor: pointer;
    font-size: 14px;
    color: #888;
    vertical-align: middle;
    line-height: 1;
}
.vpa-info-btn:hover { color: var(--vbl-groen); }

/* Disclaimer */
.vpa-disclaimer {
    background: #fff;
    border: 1px solid var(--vbl-groen-rand);
    border-radius: 6px;
    padding: 10px 12px;
    font-size: 12px;
    color: #555;
    line-height: 1.6;
    margin: 0.75rem 0;
}

/* ANBI notitie */
.vpa-anbi-notitie {
    border-top: 1px solid var(--vbl-groen-rand);
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    font-size: 12px;
    color: #666;
    line-height: 1.5;
}

/* Formulier secties */
.vpa-formulier {
    max-width: 620px;
}
.vpa-sectie {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: var(--vbl-radius);
    padding: 1.25rem;
    margin-bottom: 1rem;
}
.vpa-sectie h4 {
    margin: 0 0 1rem;
    font-size: 14px;
    font-weight: 600;
    color: #444;
}
.vpa-subtekst {
    font-size: 12px;
    color: #888;
    margin: -0.5rem 0 1rem;
}

/* Velden */
.vpa-veld {
    margin-bottom: 0.875rem;
}
.vpa-veld:last-child { margin-bottom: 0; }
.vpa-veld label {
    display: block;
    font-size: 13px;
    color: #555;
    margin-bottom: 4px;
    font-weight: normal;
}
.vpa-veld input[type="text"],
.vpa-veld input[type="email"],
.vpa-veld input[type="tel"],
.vpa-veld select,
.vpa-veld textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 14px;
    font-family: inherit;
    color: var(--vbl-tekst);
    background: #fff;
    transition: border-color 0.15s;
}
.vpa-veld input:focus,
.vpa-veld select:focus,
.vpa-veld textarea:focus {
    border-color: var(--vbl-groen-mid);
    outline: none;
    box-shadow: 0 0 0 2px rgba(99,153,34,0.15);
}
.vpa-veld textarea { resize: vertical; }

.vpa-rij-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
@media (max-width: 480px) {
    .vpa-rij-2 { grid-template-columns: 1fr; }
}

.vpa-verplicht { color: var(--vbl-rood); margin-left: 2px; }
.vpa-optioneel { color: #aaa; font-size: 11px; font-weight: normal; }

/* Plant info */
.vpa-plant-info {
    background: var(--vbl-groen-licht);
    border: 1px solid var(--vbl-groen-rand);
    border-radius: 5px;
    padding: 8px 12px;
    font-size: 12px;
    color: #444;
    line-height: 1.6;
    margin: 8px 0 12px;
}

/* Bijdrage blok */
.vpa-bijdrage-blok {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: var(--vbl-groen-licht);
    border: 1px solid var(--vbl-groen-rand);
    border-radius: var(--vbl-radius);
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
}
.vpa-euro-icoon {
    font-size: 22px;
    font-weight: 700;
    color: var(--vbl-groen);
    flex-shrink: 0;
    margin-top: 2px;
}
.vpa-bijdrage-blok strong {
    display: block;
    font-size: 14px;
    color: var(--vbl-groen-donker);
    margin-bottom: 2px;
}
.vpa-bijdrage-blok p {
    font-size: 12px;
    color: #666;
    margin: 0;
    line-height: 1.5;
}

/* Akkoord */
.vpa-akkoord {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    margin-bottom: 1.25rem;
}
.vpa-akkoord input[type="checkbox"] {
    margin-top: 3px;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    accent-color: var(--vbl-groen);
}
.vpa-akkoord label {
    font-size: 13px;
    color: #555;
    line-height: 1.5;
    cursor: pointer;
}

/* Knop */
.vpa-knop {
    display: block;
    width: 100%;
    padding: 11px 20px;
    background: var(--vbl-groen);
    color: #fff;
    border: none;
    border-radius: var(--vbl-radius);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
    transition: background 0.15s;
    font-family: inherit;
}
.vpa-knop:hover { background: var(--vbl-groen-donker); }

/* Meldingen */
.vpa-melding {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    border-radius: var(--vbl-radius);
    padding: 1rem 1.25rem;
    margin-bottom: 1.25rem;
    font-size: 14px;
    line-height: 1.5;
}
.vpa-succes {
    background: var(--vbl-groen-licht);
    border: 1px solid var(--vbl-groen-rand);
    color: var(--vbl-groen-donker);
}
.vpa-fout {
    background: var(--vbl-rood-licht);
    border: 1px solid #f0b0b0;
    color: var(--vbl-rood);
}
.vpa-icoon {
    font-size: 18px;
    font-weight: 700;
    flex-shrink: 0;
}
