.proefpaspoort{--pn:#a63d54;--pn-soft:#fff0f2;color:#302d35;background:#fff;border:1px solid #eae3e8;border-radius:18px;overflow:hidden;margin:22px 0;font-family:inherit;font-size:14px;line-height:1.5;box-shadow:0 8px 28px #38213908}
.proefpaspoort *{box-sizing:border-box}.proefpaspoort button,.proefpaspoort input,.proefpaspoort textarea{font:inherit}.proefpaspoort button{cursor:pointer}.proefpaspoort button:focus-visible,.proefpaspoort input:focus-visible,.proefpaspoort textarea:focus-visible{outline:3px solid #5e86d9;outline-offset:3px}.proefpaspoort button:disabled{cursor:wait;opacity:.6}
.pn-hero{padding:22px;background:linear-gradient(120deg,var(--pn-soft),#fff9ec)}.pn-eyebrow{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.6px;color:var(--pn)}.pn-hero h3{font-size:25px;letter-spacing:-.7px;margin:5px 0}.pn-hero p{margin:0;font-size:13px;color:#65616a}.pn-wines{display:flex;gap:8px;overflow-x:auto;padding:16px 18px 6px;scrollbar-width:thin}.pn-wines button{flex:0 0 auto;text-align:left;border:1px solid #e6dfe5;background:#fff;border-radius:12px;padding:10px 14px;color:#49414a;min-height:52px}.pn-wines button[aria-pressed=true]{background:var(--pn-soft);border-color:var(--pn);box-shadow:inset 0 -3px var(--pn)}.pn-wines small{display:block;font-size:10px;color:#746b77}.pn-main{padding:18px}.pn-winehead{display:flex;justify-content:space-between;gap:10px;align-items:center}.pn-winehead h4{font-size:20px;margin:0}.pn-muted{color:#77717d;font-size:12px}.pn-level{background:var(--pn-soft);color:var(--pn);border-radius:20px;padding:5px 10px;font-size:11px;font-weight:700;white-space:nowrap}.pn-progress{height:7px;background:#f1edf2;border-radius:20px;overflow:hidden;margin:12px 0 5px}.pn-progress span{height:100%;display:block;background:linear-gradient(90deg,var(--pn),#e7ae55);transition:width .25s}.pn-milestones{display:flex;gap:6px;flex-wrap:wrap;font-size:10px;color:#847b88}.pn-milestones .done{color:#3c785c;font-weight:700}.pn-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:20px 0 16px}.pn-steps button{background:#f6f3f6;border:0;border-radius:9px;min-height:46px;color:#625868;font-size:12px;padding:7px 3px}.pn-steps button[aria-pressed=true]{background:var(--pn);color:white;font-weight:700}.pn-step h4{font-size:17px;margin:0 0 3px}.pn-intro{font-size:12px;color:#756c78;margin:0 0 15px}.pn-balance{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:20px;align-items:center}.pn-radar svg{width:100%;height:auto;display:block}.pn-range{margin-bottom:15px}.pn-range label{display:flex;justify-content:space-between;font-size:13px;font-weight:650}.pn-range output{font-weight:400;font-size:11px;color:#847988}.pn-range input{width:100%;height:28px;accent-color:var(--axis);cursor:pointer;margin:4px 0 0}.pn-endpoints{display:flex;justify-content:space-between;font-size:10px;color:#817788}.pn-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 18px}.pn-chip{border:1px solid #e4dce7;background:white;border-radius:24px;padding:9px 13px;color:#514457;font-size:12px;min-height:40px}.pn-chip[aria-pressed=true]{background:var(--pn-soft);color:var(--pn);border-color:var(--pn);box-shadow:inset 0 0 0 1px var(--pn)}.pn-group{font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:#94879a}.pn-foods{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pn-food{border:1px solid #e7dfe9;border-radius:12px;background:#fff;text-align:left;padding:13px;color:#4c4152;min-height:100px}.pn-food strong{font-size:13px;display:block}.pn-food small{font-size:11px;display:block;line-height:1.5;margin-top:6px;color:#807186}.pn-food[aria-pressed=true]{border:2px solid var(--pn);padding:12px;background:var(--pn-soft)}.pn-food .pn-match{display:inline-block;font-size:9px;text-transform:uppercase;color:#3a8162;margin-top:6px;font-weight:800}.pn-stars{display:flex;gap:8px;margin:14px 0}.pn-stars button{border:1px solid #eaddc9;background:#fffaf0;border-radius:10px;color:#a59b8b;width:44px;height:48px;font-size:25px}.pn-stars button.on{color:#c29025;background:#fff0be;border-color:#d0a348}.pn-summary{background:var(--pn-soft);padding:14px;border-radius:12px;margin:16px 0;font-size:13px}.pn-summary strong{display:block;margin-bottom:6px}.pn-step textarea{display:block;width:100%;resize:vertical;border:1px solid #dfd5e3;border-radius:10px;padding:12px;min-height:72px;margin:8px 0}.pn-step label{font-size:12px}.pn-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #ede7ef;padding:14px 18px;background:#fcfafc}.pn-status{font-size:11px;color:#736c79;line-height:1.4}.pn-action{background:var(--pn);color:#fff;border:0;border-radius:9px;min-height:42px;padding:10px 16px;font-weight:700;font-size:12px;white-space:nowrap}.pn-nav{display:flex;justify-content:space-between;margin-top:20px;gap:12px}.pn-back{background:none;border:0;color:#7b6e82;font-size:12px;padding:10px}.pn-win{padding:14px;background:linear-gradient(110deg,#fff2c7,#e9f5e4);border-radius:12px;color:#596232;margin:14px 0;font-weight:650}.pn-error{color:#ab354a;padding:14px}.pn-loading{padding:20px;color:#87768e}.proefpaspoort details summary{cursor:pointer;font-size:12px;color:var(--pn);margin-bottom:10px}.pn-radar p{text-align:center;font-size:10px;color:#847988;margin:0}
@media(max-width:540px){.pn-balance{grid-template-columns:1fr}.pn-radar{order:-1;width:170px;margin:0 auto}.pn-main{padding:16px}.pn-hero{padding:18px}.pn-foods{grid-template-columns:1fr}.pn-winehead{align-items:flex-start}.pn-level{font-size:10px}.pn-hero h3{font-size:23px}.pn-steps button{font-size:11px}.pn-footer{padding:12px 16px}}
@media(prefers-reduced-motion:reduce){.pn-progress span{transition:none}}

/* Ruime gerechtkaarten met een eigen, zachte kleur per gerecht. */
.pn-foods{gap:14px}.pn-food{padding:0;overflow:hidden;border-radius:16px;display:flex;flex-direction:column;box-shadow:0 3px 12px #402a4608;transition:box-shadow .18s,border-color .18s;min-width:0}.pn-food[aria-pressed=true]{padding:0;border:1px solid var(--pn);box-shadow:0 0 0 2px var(--pn)}
.pn-food-visual{--dish-bg:#f5ebdf;position:relative;display:flex;align-items:center;justify-content:center;min-height:136px;width:100%;background:radial-gradient(ellipse at 28% 20%,#fff8,transparent 65%),var(--dish-bg);overflow:hidden}
.pn-food-visual::before{content:"";position:absolute;width:100px;height:100px;background:linear-gradient(140deg,#fff,#fffaf4);border:5px solid #ffffffb3;border-radius:50%;box-shadow:0 8px 18px #63554918,inset 0 0 0 1px #bcae9326;transform:rotate(-8deg)}
.pn-food-icon{position:relative;display:block;font-size:60px;line-height:1.2;filter:drop-shadow(0 4px 3px #71583b20);transform:rotate(-7deg);transition:transform .18s}
.pn-food-visual[data-dish=salade],.pn-food-visual[data-dish=groenten]{--dish-bg:#e3efdc}.pn-food-visual[data-dish=vis],.pn-food-visual[data-dish=sushi]{--dish-bg:#dfedf0}.pn-food-visual[data-dish=geitenkaas],.pn-food-visual[data-dish=borrel]{--dish-bg:#faf0d1}.pn-food-visual[data-dish=bbq],.pn-food-visual[data-dish=aziatisch]{--dish-bg:#f5e0d4}.pn-food-visual[data-dish=risotto]{--dish-bg:#eee0d7}.pn-food-visual[data-dish=kip]{--dish-bg:#e8ecd8}
.pn-food-copy{display:block;padding:15px;flex:1}.pn-food strong{font-size:15px;line-height:1.35}.pn-food small{font-size:12px;line-height:1.55}.pn-food .pn-match{margin-top:10px;font-size:9px}.pn-food-check{position:absolute;top:10px;right:10px;border-radius:50%;background:var(--pn);color:#fff;width:25px;height:25px;align-items:center;justify-content:center;font-size:15px;display:none}.pn-food[aria-pressed=true] .pn-food-check{display:flex}
@media(hover:hover){.pn-food:hover{box-shadow:0 7px 20px #402a4615;border-color:var(--pn)}.pn-food:hover .pn-food-icon{transform:rotate(-3deg) scale(1.08)}}
@media(max-width:540px){.pn-food{flex-direction:row;align-items:stretch}.pn-food-visual{width:112px;min-height:142px;flex:none}.pn-food-visual::before{width:84px;height:84px}.pn-food-icon{font-size:52px}.pn-food-copy{padding:13px;min-width:0}.pn-food strong{font-size:14px}.pn-food small{font-size:11px}.pn-food-check{top:8px;right:8px}}
@media(prefers-reduced-motion:reduce){.pn-food,.pn-food-icon{transition:none}}
.pn-eigen-label{display:block;margin-top:16px}.pn-step textarea.pn-review{min-height:220px;font-size:15px;line-height:1.55}
