/* Partnerportaal: overzicht, formulier en gegevens (gebruikt de kleuren van de agenda) */
.vav-portal { color: var(--vav-ink); }
.vav-portal__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; margin: 0 0 20px; }
.vav-portal__welcome { margin: 0; font-size: 1.15em; font-weight: 700; }
.vav-portal__scope { display: block; font-size: .85em; font-weight: 500; color: var(--vav-muted); margin-top: 2px; }
.vav-portal__headactions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; }
.vav-portal__link { color: var(--vav-ink); text-decoration: underline; font-weight: 600; }
.vav-portal__link:hover { color: var(--vav-primary); }
.vav-portal__intro { color: var(--vav-muted); margin: 0 0 28px; }
.vav-portal__section { margin: 0 0 36px; }
.vav-portal__section h2 { font-size: 1.35em; margin: 0 0 14px; }
.vav-portal__past summary { cursor: pointer; list-style: none; }
.vav-portal__past summary::-webkit-details-marker { display: none; }
.vav-portal__past summary h2 { display: inline-block; }
.vav-portal__past summary h2::after { content: " \25BE"; color: var(--vav-primary); }
.vav-portal__past[open] summary h2::after { content: " \25B4"; }
.vav-portal__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.vav-portal__item { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 14px 18px; background: #fff; border-radius: var(--vav-radius); box-shadow: var(--vav-shadow); border-left: 5px solid var(--vav-line); }
.vav-portal__item--live { border-left-color: var(--vav-accent); }
.vav-portal__item--pending, .vav-portal__item--proposal { border-left-color: var(--vav-secondary); }
.vav-portal__item--draft { border-left-color: var(--vav-muted); }
.vav-portal__date { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 10px; background: var(--vav-secondary); color: var(--vav-ink); line-height: 1; }
.vav-portal__day { font-size: 1.5em; font-weight: 800; }
.vav-portal__month { font-size: .7em; font-weight: 700; letter-spacing: .05em; margin-top: 3px; }
.vav-portal__title { margin: 0 0 4px; font-size: 1.1em; line-height: 1.3; }
.vav-portal__title a { color: var(--vav-ink); text-decoration: none; }
.vav-portal__title a:hover { color: var(--vav-primary); text-decoration: underline; }
.vav-portal__meta { margin: 0 0 6px; font-size: .92em; color: var(--vav-muted); }
.vav-portal__status { display: inline-block; padding: 2px 10px; border-radius: 999px; font-size: .78em; font-weight: 700; background: #eef0f2; }
.vav-portal__status--live { background: var(--vav-accent); color: #fff; }
.vav-portal__status--pending, .vav-portal__status--proposal { background: var(--vav-secondary); }
.vav-portal__actions { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.vav-button--small { padding: .45em 1em; font-size: .9em; }
.vav-portal__delete { font-size: .85em; color: var(--vav-muted); text-decoration: underline; }
.vav-portal__delete:hover { color: var(--vav-primary); }
.vav-portal__back { margin: 0 0 16px; }
.vav-portal__back a { color: var(--vav-ink); font-weight: 600; text-decoration: none; }
.vav-portal__back a:hover { text-decoration: underline; }
.vav-portal__submit { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.vav-portal__card { max-width: 520px; margin: 0 auto; padding: 32px; text-align: center; background: #fff; border-radius: var(--vav-radius); box-shadow: var(--vav-shadow); border-top: 4px solid var(--vav-primary); }
.vav-portal__card h2 { margin: 0 0 10px; }
.vav-portal__small { font-size: .9em; color: var(--vav-muted); }
.vav-form__help { display: block; margin-top: 4px; font-size: .85em; color: var(--vav-muted); }
.vav-form__fixed { margin: 0; padding: 12px 14px; border-radius: 8px; background: #eef0f2; font-weight: 600; }
.vav-form__manual-location { display: contents; }
.vav-form__manual-location.is-hidden { display: none; }
.vav-form__grid--when { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.vav-form__field--check { align-self: end; }
.vav-form__thumb { margin: 0 0 8px; }
.vav-form__thumb img { display: block; max-width: 220px; height: auto; border-radius: 8px; }
.vav-form__remove { display: inline-block; margin-top: 6px; font-weight: 500 !important; font-size: .9em; }
.vav-notice--info { background: #eef4fb; border-left: 4px solid var(--vav-secondary); color: var(--vav-ink); }
.vav-notice--success { background: var(--vav-accent); color: #fff; }
@media (max-width: 640px) {
	.vav-portal__item { grid-template-columns: 56px minmax(0, 1fr); }
	.vav-portal__actions { grid-column: 1 / -1; flex-direction: row; justify-content: flex-start; }
	.vav-portal__date { width: 56px; height: 56px; }
}
.vav-portal__dot { display: inline-block; width: 9px; height: 9px; margin-left: 4px; border-radius: 50%; background: var(--vav-secondary); vertical-align: middle; }
.vav-login { text-align: left; margin-top: 20px; }
.vav-login .vav-form__field { margin-bottom: 14px; }
.vav-login__row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; margin: 4px 0 14px; font-size: .92em; }
.vav-login__remember { font-weight: 500; }
.vav-login__lost { color: var(--vav-ink); text-decoration: underline; }
.vav-login__button { width: 100%; text-align: center; }
.vav-portal--login .vav-notice--error { text-align: left; }
