@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Pacifico&family=Playfair+Display:wght@400;600;700;800&display=swap');
:root{--room:#f7efe4;--zand:#e9d8bd;--cacao:#2d1b10;--karamel:#b86a1b;--wit:#fffdf9;--lijn:#e7d7bf;font-family:'Playfair Display',Georgia,serif;color:var(--cacao);background:var(--room);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column;line-height:1.55}a{color:inherit}button,input{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--karamel);outline-offset:3px}
/* Sluit aan op de bestaande site: echte logo, crèmekleurige header en ronde navigatie. */
.top{min-height:80px;padding:10px max(22px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(247,239,228,.96);border-bottom:1px solid var(--lijn)}
.brand{position:relative;display:block;min-height:58px;padding:1px 0 0 69px;color:#805027;font:15px/1.45 Pacifico,cursive;text-decoration:none;white-space:nowrap}
.brand:before{content:'';position:absolute;left:0;top:0;width:56px;height:56px;border-radius:50%;background:url('/uploads/logo-gezicht.webp') center/cover no-repeat}
.brand strong{display:block;margin-top:-4px;color:var(--cacao);font:800 18px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.045em}
.top>a:last-child{border:1px solid var(--lijn);border-radius:999px;padding:10px 18px;background:var(--wit);font:600 13px/1.4 Inter,system-ui,sans-serif;text-decoration:none;white-space:nowrap}.top>a:last-child:hover{background:#f4e7d6}
.wrap{width:min(100%,1120px);margin:0 auto;flex:1;padding:70px 22px 95px}.panel{margin:0 0 22px;padding:clamp(25px,4vw,44px);border:1px solid var(--lijn);border-radius:22px;background:var(--wit);box-shadow:0 9px 26px rgba(45,27,16,.055)}.narrow{max-width:640px;margin-left:auto;margin-right:auto}.hero{max-width:780px;margin-left:auto;margin-right:auto}
/* De aanmeldpagina krijgt dezelfde echte kraamfoto als de oude homepage. */
.hero:has(input[name="action"][value="create"]){max-width:none;min-height:450px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,45%);column-gap:clamp(25px,5vw,70px);align-content:center}.hero:has(input[name="action"][value="create"])>*{grid-column:1}.hero:has(input[name="action"][value="create"]):after{content:'';grid-column:2;grid-row:1/7;min-height:340px;border-radius:16px;background:#e4d4bc url('/uploads/markt/kraam-compleet.jpg') center/cover no-repeat;box-shadow:0 8px 22px rgba(45,27,16,.12)}
h1,h2,p{margin-top:0}h1{margin-bottom:20px;font-size:clamp(36px,4.3vw,54px);font-weight:800;letter-spacing:-.045em;line-height:1.13}h2{margin-bottom:18px;font-size:clamp(24px,3vw,30px);letter-spacing:-.03em;line-height:1.2}p{font-size:17px}.eyebrow{margin-bottom:14px;color:var(--karamel);font:700 12px/1.5 Inter,system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--karamel);border-radius:999px;background:var(--karamel);color:var(--room);font:600 14px/1.45 Inter,system-ui,sans-serif;text-align:center;text-decoration:none;box-shadow:0 5px 13px rgba(184,106,27,.17)}.button:hover{background:#965215;border-color:#965215}.button.secondary{background:var(--wit);border-color:var(--lijn);color:var(--cacao);box-shadow:none}.button.secondary:hover{background:#f4e7d6}.text-button{border:0;background:none;color:var(--cacao);font:600 14px Inter,system-ui,sans-serif;text-decoration:underline}
.deal{display:flex;flex-direction:column;gap:4px;margin:26px 0;padding:14px 18px;border-left:4px solid var(--karamel);background:#f8f0e5}.deal strong{font-size:24px;line-height:1.3}.deal span,.fine{color:#6a5545}.deal span{font-size:15px}.fine{margin-top:16px;font:400 13px/1.65 Inter,system-ui,sans-serif}
.stack{display:grid;gap:18px}.stack label{display:grid;gap:7px;font:600 14px/1.5 Inter,system-ui,sans-serif}input:not([type=checkbox]){width:100%;padding:13px 14px;border:1px solid #baa58e;border-radius:11px;background:#fff;color:var(--cacao);font:15px/1.5 Inter,system-ui,sans-serif}.stack input:focus,.search input:focus{outline:3px solid #dfaa71;outline-offset:1px}
.balance{display:flex;align-items:baseline;gap:13px;margin:23px 0 8px}.balance strong{color:var(--karamel);font:800 clamp(62px,10vw,92px)/1 'Playfair Display',Georgia,serif;letter-spacing:-.075em}.balance span{font:600 16px Inter,system-ui,sans-serif}.progress{height:12px;margin:16px 0 19px;overflow:hidden;border-radius:999px;background:#ead9c2}.progress span{display:block;height:100%;border-radius:inherit;background:var(--karamel)}
.card{margin:27px 0;padding:24px;border:1px solid #d8b789;border-radius:17px;background:#f9f0e3;text-align:center}.card p{margin-bottom:13px}.code{display:block;overflow-wrap:anywhere;font:700 clamp(25px,5vw,35px)/1.3 Inter,system-ui,sans-serif;letter-spacing:.13em}.qr{display:flex;justify-content:center;min-height:176px;margin:22px auto 12px}.qr:empty{display:none}.qr img,.qr canvas{max-width:100%;height:auto}
.notice{margin-bottom:22px;padding:14px 18px;border:1px solid #b7d3aa;border-radius:11px;background:#eff5eb;font:500 14px/1.6 Inter,system-ui,sans-serif}.notice.error{border-color:#ddaca0;background:#fff0eb}.history{margin:0;padding:0;list-style:none}.history li{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-top:1px solid var(--lijn);font:14px/1.55 Inter,system-ui,sans-serif}.history small{display:block;margin-top:3px;color:#705d4c;font-size:12px}.history strong{white-space:nowrap}
.seller-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.seller-head h1{margin-bottom:24px}.search{display:flex;gap:10px}.search input{flex:1;min-width:0}.seller-balance{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:12px 0 28px}.seller-balance h2{margin:0}.seller-balance span{font:500 14px Inter,system-ui,sans-serif}.checkbox{display:flex!important;align-items:flex-start;gap:12px!important}.checkbox input{margin:4px 0 0}details summary{cursor:pointer;font:700 18px 'Playfair Display',Georgia,serif}.foot{padding:34px 20px;background:var(--cacao);color:var(--room);text-align:center;font:13px/1.7 Inter,system-ui,sans-serif}.foot a{text-underline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.purchase-summary{margin:0;padding:14px 18px;border:1px solid #d8b789;border-radius:11px;background:#f9f0e3;font:600 15px/1.55 Inter,system-ui,sans-serif}
.install-panel{max-width:780px;margin-left:auto;margin-right:auto}.install-actions{display:flex;flex-wrap:wrap;gap:10px}.install-help{margin:17px 0 0;padding:15px 18px;border:1px solid #d8b789;border-radius:11px;background:#f9f0e3;font:500 14px/1.65 Inter,system-ui,sans-serif}.install-help[hidden]{display:none}
@media(max-width:760px){.wrap{padding:34px 17px 60px}.hero:has(input[name="action"][value="create"]){display:flex;flex-direction:column;min-height:0}.hero:has(input[name="action"][value="create"]):after{display:block;width:100%;min-height:230px;margin-top:26px}}
@media(max-width:600px){.top{min-height:70px;padding:8px 16px}.brand{min-height:48px;padding-left:55px;font-size:12px}.brand:before{width:46px;height:46px}.brand strong{font-size:14px}.top>a:last-child{padding:8px 10px;font-size:11px}.panel{padding:23px;border-radius:17px}.search{display:grid}.search .button{width:100%}.seller-head h1{font-size:34px}.history li{font-size:13px}}
.profile-panel{max-width:780px;margin-left:auto;margin-right:auto}.profile-panel .checkbox{margin:8px 0}.profile-details{margin:0 0 25px;padding:16px 18px;background:#f9f0e3;border:1px solid #d8b789;border-radius:12px}.profile-details form{margin-top:20px}.overview-stats{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 22px}.overview-stats span{padding:12px 16px;border:1px solid #e7d8c7;border-radius:11px;font:14px Inter,system-ui,sans-serif}.overview-stats strong{font-size:20px}.overview-search{margin-bottom:16px}.table-wrap{overflow-x:auto}.cards-table{width:100%;border-collapse:collapse;text-align:left;font:14px/1.5 Inter,system-ui,sans-serif}.cards-table th,.cards-table td{padding:12px 10px;border-bottom:1px solid var(--lijn);vertical-align:top}.cards-table td small{display:block;color:#705d4c}.cards-table td a{color:var(--cacao);text-decoration:underline;text-underline-offset:3px}.consent-badge{display:inline-block;margin-top:5px;padding:3px 7px;background:#eff5eb;border-radius:6px;color:#32552b;font-size:11px}.overview-pages{display:flex;justify-content:space-between;gap:20px;margin-top:20px}.overview-pages a{text-underline-offset:3px}
.overview-search select{min-height:48px;padding:9px 12px;border:1px solid #baa58e;border-radius:11px;background:#fff;color:var(--cacao);font:14px Inter,system-ui,sans-serif}
.delete-card{border-color:#dfc4bf}.delete-card form{margin-top:19px}.button.danger-button{background:#9b3327;border-color:#9b3327;color:#fff;box-shadow:none}.button.danger-button:hover{background:#7c241c;border-color:#7c241c}
.scan-launch{margin-top:14px}.scan-panel{margin-top:18px;padding:16px;border:1px solid #d8b789;border-radius:14px;background:#f9f0e3}.scan-panel[hidden]{display:none}.scan-panel p{font:500 14px/1.5 Inter,system-ui,sans-serif}.scan-panel video{display:block;width:100%;max-width:500px;max-height:390px;margin:0 0 14px;border-radius:12px;background:#2d1b10;object-fit:cover}
