@font-face{font-family:LavishBody;src:url('/assets/body.ttf') format('truetype');font-display:swap}@font-face{font-family:LavishDisplay;src:url('/assets/display.ttf') format('truetype');font-display:swap}
:root{--ink:#20182a;--muted:#706879;--paper:#faf8f3;--purple:#261b33;--accent:#b59b70;--border:#dcd6df;--pink:#ff68ca;color-scheme:light;font-family:LavishBody,Arial,sans-serif;color:var(--ink);background:#f0edf1;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-underline-offset:3px}a:hover{color:#875c85}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ab6b9d;outline-offset:4px}[hidden]{display:none!important}
.brand-header{height:175px;display:flex;align-items:center;justify-content:center;background:var(--purple);padding:18px}.brand-header img{object-fit:contain;width:144px;height:112px;display:block}.invitation{width:min(100% - 40px,640px);margin:0 auto;background:var(--paper);padding:40px 54px 28px;border-bottom:1px solid var(--border);box-shadow:0 18px 46px #261b330a}.invitation-heading{text-align:center;padding-bottom:29px;margin-bottom:28px;border-bottom:1px solid var(--border)}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:700;margin:0 0 8px;color:#86704e}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-family:LavishDisplay,Arial,sans-serif;font-weight:800;font-size:52px;line-height:1.02;margin:0 0 18px;text-transform:uppercase;letter-spacing:.01em}#event-intro{font-size:16px;line-height:1.7;margin:0;color:#514959}form>label,legend{display:block;font-size:15px;font-weight:700;margin-bottom:9px}form>label span,legend>span{color:#8f547b}input:not([type=radio]):not([type=checkbox]),textarea,select{width:100%;border:1px solid #cfc7d5;border-radius:3px;background:#fff;color:var(--ink);padding:12px 14px;min-height:48px}input:hover,textarea:hover{border-color:#a999b1}fieldset{border:0;padding:0;margin:26px 0}legend{padding:0;margin-bottom:12px}.radio-option{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:3px;padding:13px 14px;font-size:15px;line-height:1.45;margin:8px 0;cursor:pointer;background:#fff;transition:background .15s,border-color .15s}.radio-option:hover{background:#f2edf4;border-color:#b6a5c0}.radio-option:has(input:checked){border-color:#746080;background:#eee8f1}.radio-option input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:#6b497d}.privacy-note{font-size:12px;line-height:1.7;color:var(--muted);margin:16px 0 23px}.text-button{padding:0;border:0;color:#644872;background:transparent;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:#a04487}.primary-button,.secondary-button{border-radius:3px;padding:14px 20px;min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;font-size:15px;font-weight:700;border:1px solid transparent;transition:background .15s,color .15s,border-color .15s}.primary-button{background:var(--purple);color:#fff}.primary-button:hover{background:#4a315e}.primary-button:disabled{opacity:.55;cursor:wait}.primary-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6}#submit{width:100%}.secondary-button{background:transparent;color:var(--ink);border-color:#bdb2c6}.secondary-button:hover{background:#e8e0ec;border-color:#8b719d}.feedback{font-size:14px;line-height:1.6;margin:12px 0 0;color:#75527b}.feedback.error{color:#a02b37}footer{border-top:1px solid var(--border);padding-top:23px;margin-top:26px;font-size:13px;text-align:center;color:var(--muted)}footer a{color:var(--ink)}.page-signoff{text-align:center;color:#79707f;font-size:13px;font-style:italic;margin:24px 12px 32px}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.success-icon{width:56px;height:56px;fill:none;stroke:#6b497d;stroke-width:2;margin-bottom:12px}#success{text-align:center;padding:10px 0 20px}h2{font-size:25px;margin:0 0 14px}#success p{font-size:15px;line-height:1.7}#success-answer{font-weight:700}dialog{max-width:560px;width:calc(100% - 32px);border:0;background:var(--paper);border-radius:5px;padding:38px;line-height:1.7;color:var(--ink)}dialog::backdrop{background:#1a1127a6}.dialog-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:30px;color:var(--muted)}.dialog-close:hover{color:var(--ink)}
/* Beheer */
.admin-header{background:var(--purple);color:#fff;padding:20px max(24px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-header img{width:94px;height:70px;object-fit:contain}.admin-header>div{display:flex;align-items:center;gap:20px}.admin-header .secondary-button{color:white;border-color:#786487}.admin-header .secondary-button:hover{background:#503b5d}.admin-main{max-width:1208px;padding:42px 24px;margin:auto}.admin-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.admin-title h1{font-size:42px;margin:0 0 6px}.admin-title p{font-size:14px;color:var(--muted);margin:0}.login-panel{max-width:440px;margin:40px auto;background:var(--paper);padding:32px}.login-panel h1{font-size:34px}.login-panel .primary-button{margin-top:18px;width:100%}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 0 26px}.stat{background:var(--paper);border:1px solid var(--border);padding:20px 22px;border-top:3px solid #9b7da8}.stat strong{display:block;font-size:36px;line-height:1.3;color:#35223f;font-variant-numeric:tabular-nums;margin-top:7px}.stat span{font-size:13px;color:var(--muted)}.admin-panel{background:var(--paper);border:1px solid var(--border);padding:27px;margin-bottom:24px}.toolbar{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:20px}.filter{display:flex;gap:12px;flex:1}.filter label{font-size:12px;font-weight:700;display:block;flex:1}.filter input,.filter select{margin-top:6px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:14px}th,td{text-align:left;padding:15px 12px;border-bottom:1px solid var(--border)}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}td:first-child,th:first-child{padding-left:0}.status{display:inline-block;padding:5px 9px;background:#e8e0ed;font-size:12px;border-radius:3px}.status.yes{background:#e0ebdd;color:#365b34}.status.no{background:#eee2e2;color:#785354}.empty{padding:30px 0;color:var(--muted);font-size:14px}.admin-help{font-size:13px;line-height:1.7;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid label{display:block;font-size:13px;font-weight:700}.settings-grid input,.settings-grid textarea{margin-top:7px}.settings-grid .wide{grid-column:1/-1}textarea{resize:vertical;line-height:1.6}.checkbox-label{display:flex!important;align-items:center;gap:10px}.checkbox-label input{width:19px;height:19px;accent-color:#6b497d}.save-row{display:flex;gap:18px;align-items:center;margin-top:24px}.save-row .feedback{margin:0}.admin-tabs{display:flex;gap:8px;margin-bottom:24px}.tab-button{background:transparent;border:1px solid transparent;padding:12px 20px;color:var(--muted);font-weight:700;border-radius:3px}.tab-button:hover{background:#e5dce9}.tab-button[aria-selected=true]{border-color:#b6a5c0;background:var(--paper);color:var(--ink)}
@media(max-width:700px){.brand-header{height:145px}.brand-header img{width:126px;height:100px}.invitation{width:calc(100% - 24px);padding:29px 24px 24px}h1{font-size:46px}.invitation-heading{padding-bottom:23px;margin-bottom:23px}#event-intro{font-size:15px;line-height:1.7}.radio-option{padding:13px 12px;font-size:14px}.admin-header{padding:14px 18px}.admin-header>div{gap:12px}.admin-header>div>a{font-size:12px}.admin-header .secondary-button{padding:9px 12px;min-height:40px;font-size:12px}.admin-main{padding:28px 16px}.admin-title h1{font-size:34px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px}.stat strong{font-size:30px}.admin-panel{padding:20px 16px}.toolbar,.filter{flex-direction:column;align-items:stretch}.filter{gap:14px}.settings-grid{grid-template-columns:1fr}.settings-grid .wide{grid-column:auto}.admin-title{align-items:start;flex-direction:column}.admin-tabs{gap:0}.tab-button{padding:11px 14px}.save-row{align-items:start;flex-direction:column}.login-panel{margin-top:20px;padding:24px}.page-signoff{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
