@font-face{font-family:"Rye";src:url(../fonts/Rye-Regular.ttf) format("truetype");font-display:swap}
h1,h2,h3,.logo{font-family:"Rye",Georgia,serif;font-weight:400;letter-spacing:.02em;text-transform:uppercase}
h1,.hero h1 span,h2,.logo b{background:linear-gradient(180deg,#fbe9a6 0%,#e8c25a 40%,#b8862a 70%,#7a5414 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px #2a1c05;filter:drop-shadow(0 2px 0 #000) drop-shadow(0 4px 8px rgba(0,0,0,.7))}
h1{font-size:clamp(2rem,7vw,4rem);line-height:1.1}.hero h1 span{display:inline-block}
h2{border-bottom-color:#3a2f15;-webkit-text-stroke:.6px #2a1c05}
.logo{color:#f1d27a}
/* header-naam: effen licht goud, geen donkere rand (leesbaar op klein formaat) */
header .logo,header .logo b{background:none;-webkit-text-stroke:0;color:#f3d77e;filter:none;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.8)}
header .logo{color:#f6efe0}
h3{color:#f3d77e;text-transform:uppercase;letter-spacing:.03em;text-shadow:0 1px 0 #000}
/* body::before watermark: zie polish v2 onderaan */
.fill{background:#203040;color:#9fd0ff;border:1px dashed #6aa8e0;padding:0 .35em;border-radius:3px;font-size:.9em}
.album{margin-top:1.5rem}.gallery img{width:100%;height:auto;display:block;border-radius:6px}
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;z-index:99}.lb[hidden]{display:none}
.lb img{max-width:94vw;max-height:88vh;object-fit:contain}.lb button{position:absolute;background:none;border:0;color:#fff;font-size:2.5rem;cursor:pointer;padding:.5rem 1rem}
.lbx{top:.5rem;right:.5rem}.lbp{left:0;top:45%}.lbn{right:0;top:45%}
.tbl{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid #333;white-space:nowrap}th{color:var(--or)}
.card.locked{display:block;border:1px dashed var(--or);opacity:.9;margin:1rem 0}.card.locked h3{margin-top:0}
.tbl input{width:100%;min-width:7rem;background:#1a1a1a;color:#eee;border:1px solid #444;padding:.3rem}
.subnav{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.2rem}.subnav a{padding:.35rem .8rem;border:1px solid #444;border-radius:20px;text-decoration:none;color:inherit;font-size:.9rem}.subnav a.on{border-color:var(--or);color:var(--or)}
.verslag{font-style:italic;opacity:.92}.disclaimer{border-left:4px solid var(--or);margin:1rem 0}
.upload label{display:block;margin:.6rem 0}.upload select{width:100%;padding:.6rem;font-size:1rem;background:#1a1a1a;color:#eee;border:1px solid #555;border-radius:6px;margin-top:.3rem}
.upload .kies{display:inline-block;text-align:center}.gallery.mini{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.gallery.mini img{aspect-ratio:1;object-fit:cover}
.selfoto{position:relative;display:block}.selfoto input{position:absolute;top:6px;left:6px;width:22px;height:22px;z-index:2}.chk{display:block;margin:.3rem 0}
img.th{width:64px;height:48px;object-fit:cover;border-radius:4px}button.rood{color:#ff8080}.rollen .card h3{margin:0}
#uploads button{margin:.1rem;padding:.3rem .5rem;background:#222;color:#eee;border:1px solid #555;border-radius:4px;cursor:pointer}
header .logo,header .logo b{color:#f3d77e;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.8)}
.biker-plek{height:clamp(90px,14vw,160px);max-width:420px;margin:.2rem 0 1rem}
.chk input,.selfoto input{width:auto!important;display:inline-block;margin-right:.4rem}
.biker-plek{height:auto;max-width:520px;margin:.1rem 0 1rem}.hero h1+.biker-plek{margin-top:-.2rem}
.biker-plek img{width:100%;height:auto;display:block;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.6)}
.paginakop{margin:0 auto 1rem;border-radius:10px;overflow:hidden;aspect-ratio:3/2;width:min(960px,100%,calc(min(62svh,560px)*3/2));max-width:100%;background:#120c05}.paginakop img{width:100%;height:100%;object-fit:cover;object-position:center 68%;display:block}
.biker-plek img{border-radius:0;box-shadow:none;border:0;
 -webkit-mask-image:radial-gradient(ellipse 72% 70% at 50% 50%,#000 45%,transparent 100%);mask-image:radial-gradient(ellipse 72% 70% at 50% 50%,#000 45%,transparent 100%)}
.biker-plek{margin:-.6rem 0 .4rem}
header .logo b{font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;color:#f3d77e;background:none;-webkit-text-stroke:0;filter:none;text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.8)}
.biker-plek img{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 18%,#000 82%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 16%,#000 78%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 18%,#000 82%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 16%,#000 78%,transparent 100%);mask-composite:intersect}
/* === Polish 9 nov 2026 === */
/* Watermerk: zie polish v2 */
/* Leesbaarheid: rustige lettergrootte en contrast; Rye (westernletter zoals het logo) blijft voor koppen */
body{font-size:17px;line-height:1.65;color:#efe9df;-webkit-font-smoothing:antialiased}
p,li,td{text-shadow:0 1px 2px rgba(0,0,0,.6)}main p,main li{max-width:72ch}
h2{font-size:clamp(1.35rem,3.4vw,1.8rem);letter-spacing:.04em;margin-top:2.2em}h3{font-size:1.05rem;letter-spacing:.05em}
main{padding:1.2rem 1.1rem 0}
.hero{margin:-1.2rem -1.1rem 1.5rem;background:radial-gradient(circle at 50% 35%,rgba(220,180,78,.14),transparent 62%);border-bottom:1px solid #3a2f15}
/* Navigatie */
.skip{position:absolute;left:-999px;top:0;background:var(--or);color:#000;padding:.5rem 1rem;z-index:100;font-weight:700}.skip:focus{left:.5rem;top:.5rem}
nav a{position:relative;font-size:1rem;letter-spacing:.05em}
@media(min-width:1100px){nav a.on::after,nav a:hover::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--or);border-radius:2px}}
.burger{padding:.15rem .6rem;cursor:pointer}
:focus-visible{outline:2px solid #f3d77e;outline-offset:3px;border-radius:3px}
/* Kaarten en knoppen */
.card,.event,.note{background:rgba(18,18,20,.9);backdrop-filter:blur(2px)}
a.card{transition:transform .15s,border-color .15s,box-shadow .15s}a.card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.55),0 0 0 1px rgba(220,180,78,.35)}
.btn{transition:filter .15s,transform .15s}.btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn.ghost:hover{border-color:var(--or);color:var(--or)}
.rollen{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
footer{background:rgba(0,0,0,.6);border-top:2px solid #3a2f15;font-size:.85rem;line-height:1.8}
@media(max-width:600px){body{font-size:16.5px}.event{grid-template-columns:1fr;gap:.2rem}.btn{padding:.75rem 1.1rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Financiën */
.fin-tegels{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:1rem 0}.fin-tegels .card{margin:0}
.fin-getal{font-size:1.7rem;font-weight:700;margin:.2rem 0 0;color:#fff}.fin-getal.neg,.fin-uit{color:#ff9a8a}.fin-in{color:#9fe0a6}
.fin-form{display:grid;gap:.2rem .9rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.fin-form select,.fin-filter select{width:100%;padding:.6rem;background:#111;color:#fff;border:1px solid var(--line);border-radius:4px;margin-top:.2rem}
.fin-filter{max-width:200px}.fin-del{background:none;border:1px solid #553;border-radius:4px;cursor:pointer;padding:.1rem .45rem}
.card>h2:first-child{margin-top:.2em}main p.note{max-width:none}
.login.card{max-width:440px;margin:2.5rem auto}.login h1{margin-top:.1em}.tip{color:var(--mut);font-size:.9rem}
.login-form{max-width:480px}.uitlog{margin-left:auto;padding:.35rem .8rem;border:1px solid #6a5420;border-radius:20px;background:none;color:#f3d77e;cursor:pointer;font:inherit;font-size:.9rem}
.subnav-b{margin-top:-.6rem}.subnav-b a{font-size:.85rem;border-style:dashed}
.tijdelijk{border-color:#9fe0a6}.ww{font-size:1.3rem;letter-spacing:.08em;background:#000;padding:.2rem .5rem;border-radius:4px;user-select:all}
.tbl button{margin:.1rem;padding:.25rem .5rem;background:#222;color:#eee;border:1px solid #555;border-radius:4px;cursor:pointer;font-size:.85rem}
tr.log-let td:nth-child(3){color:#ff9a8a}tr.log-ok td:nth-child(3){color:#9fe0a6}
.inbox{display:grid;gap:.5rem}.inbox-item{display:grid;grid-template-columns:1fr auto;gap:.1rem 1rem;text-align:left;width:100%;cursor:pointer;color:var(--txt);font:inherit;margin:0}.inbox-item strong{grid-column:1/-1}.im-van{color:#f3d77e;overflow:hidden;text-overflow:ellipsis}
.mailtekst{white-space:pre-wrap;word-break:break-word;font:inherit;background:#0b0b0c;padding:1rem;border-radius:6px;max-height:70vh;overflow:auto}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* === Polish v2 9 nov 2026: header logo links, watermerk beeldvullend, menu Rye-goud, hero zonder patch === */
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:url(../img/logo-512.webp) center center/min(100vmax,1100px) no-repeat;opacity:.12;filter:saturate(.75)}
/* Header: ovaal logo links (geen rand, geen ronde crop) + merknaam, menu rechts */
header{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem}
header .logo{order:1;margin-right:0;flex:1 1 auto;min-width:0}
header .logo img{height:48px;width:auto;max-height:48px;border:0;border-radius:0;box-shadow:none;object-fit:contain;background:transparent;display:block}
header .talen{order:2;margin-left:auto;flex:0 0 auto}
header .burger{order:3;margin-left:auto;flex:0 0 auto}
header:has(.talen) .burger{margin-left:0}
header #hoofdmenu{order:4;flex:1 0 100%}
@media(min-width:1100px){
  header{flex-wrap:nowrap}
  header .logo{margin-right:0;flex:0 0 auto}
  header .burger{display:none}
  header #hoofdmenu{order:2;margin-left:auto;flex:0 1 auto;width:auto}
  header .talen{order:3;margin-left:.55rem}
  #hoofdmenu a{white-space:nowrap}
}
/* Menu: zelfde western/Rye + goud als koppen */
nav a{
  font-family:"Rye",Georgia,serif!important;
  font-weight:400!important;
  font-stretch:normal!important;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:clamp(.9rem,1.35vw,1.05rem);
  color:#f3d77e!important;
  text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.75);
}
nav a.on,nav a:hover{color:#ffe9a8!important}
@media(min-width:1100px){
  nav a.on::after,nav a:hover::after{background:#f3d77e;height:2px;bottom:-5px}
}
/* Hero zonder patch: gecentreerd, foto iets breder */
.hero{flex-direction:column!important;text-align:center!important;justify-content:center;align-items:center;gap:1rem;min-height:52vh;padding:2.5rem 1.2rem}
.hero>div{width:100%;max-width:720px;margin:0 auto}
.hero p{margin-inline:auto!important;max-width:60ch}
.hero .biker-plek{max-width:640px;margin:.4rem auto 1rem}
.hero .badge{display:none!important}

/* === Polish v3 9 nov 2026: condensed/Impact → Rye + goud (sitebreed) === */
.kicker,.btn,.vb,.preview,.subnav a,.uitlog,.event .d{
  font-family:"Rye",Georgia,serif!important;
  font-weight:400!important;
  font-stretch:normal!important;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.kicker{
  color:#f3d77e!important;
  font-size:clamp(.78rem,2.6vw,.95rem);
  letter-spacing:.03em;
  text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.7);
  margin:0 0 .35rem;
  line-height:1.4;
  max-width:36ch;
  margin-inline:auto;
}
.btn{
  font-size:clamp(.82rem,2.5vw,.98rem);
  letter-spacing:.03em;
  padding:.68rem 1.1rem;
  color:#1a1205;
  line-height:1.2;
}
.btn.ghost{
  color:#f3d77e!important;
  border:2px solid #f3d77e!important;
  background:transparent;
}
.btn.ghost:hover{
  color:#ffe9a8!important;
  border-color:#ffe9a8!important;
}
.subnav a,.uitlog{
  font-size:clamp(.7rem,2.1vw,.84rem);
  letter-spacing:.03em;
  color:#f3d77e;
  text-shadow:0 1px 0 #000;
}
.subnav a.on,.subnav a:hover{color:#ffe9a8;border-color:#f3d77e}
.subnav-b a{font-size:clamp(.65rem,1.9vw,.78rem)}
.vb,.preview{
  font-size:.68rem;
  letter-spacing:.04em;
  color:#f0d68a;
}
.event .d{
  font-size:clamp(.72rem,2vw,.88rem);
  letter-spacing:.03em;
  color:#f3d77e;
  font-weight:400!important;
  line-height:1.35;
}
@media(max-width:400px){
  .kicker{letter-spacing:.02em;font-size:.8rem;max-width:100%}
  .btn{padding:.65rem .95rem;letter-spacing:.02em;font-size:.84rem}
  .subnav a,.uitlog{letter-spacing:.02em;font-size:.72rem;padding:.3rem .55rem}
  .hero .btn{display:inline-block;max-width:100%}
}

/* === Polish v4 9 nov 2026: altijd donkere achtergrond + vast watermerk bij scroll === */
html{
  background-color:#070707;
  min-height:100%;
}
body{
  background-color:#070707!important;
  background-image:radial-gradient(ellipse at 50% 0%,rgba(220,180,78,.10),transparent 55%),linear-gradient(180deg,#121212 0%,#070707 100%)!important;
  background-attachment:fixed!important;
  min-height:100%;
  isolation:isolate; /* stacking context zodat ::before z-index:-1 niet achter de witte canvas belandt */
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:url(../img/logo-512.webp) center center/min(100vmax,1100px) no-repeat;
  opacity:.12;
  filter:saturate(.75);
}
header,main,footer,.preview{position:relative;z-index:1}
header{z-index:5}
.lb{position:fixed;z-index:99}
footer{
  background:#0a0a0a!important;
  color:#a19d97;
  border-top:2px solid #3a2f15;
}

/* === Polish v6 9 nov 2026: homepage vult het scherm (grote foto + RIDE FREE zoals v4) === */
body.home{
  display:flex;
  flex-direction:column;
  min-height:100vh;
  min-height:100svh;
  height:100svh;
  max-height:100svh;
  overflow:hidden;
}
body.home main{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  min-height:0;
  padding:.25rem 1.1rem;
}
body.home .hero{
  margin:0 -1.1rem;
  flex:1 1 auto;
  min-height:0;
  display:flex!important;
  flex-direction:column!important;
  align-items:center;
  justify-content:stretch;
  gap:0;
  padding:clamp(.25rem,1vh,.75rem) 1.2rem;
  border-bottom:0;
}
body.home .hero>div{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  max-width:900px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:clamp(.25rem,.9vh,.55rem);
}
body.home .hero .kicker{
  margin:0;
  flex:0 0 auto;
}
body.home .hero h1{
  margin:0;
  flex:0 0 auto;
  font-size:clamp(2.3rem,7vh + .5vw,4rem); /* v4-achtig groot */
  line-height:1.05;
}
body.home .hero-tagline{
  margin:0 auto!important;
  flex:0 0 auto;
  max-width:none;
  width:100%;
  text-align:center;
  white-space:nowrap;
  font-family:"Rye",Georgia,serif;
  font-weight:400;
  font-size:clamp(1.05rem,1.7vh + .25vw,1.22rem);
  line-height:1.4;
  letter-spacing:.03em;
  color:#f3d77e;
  text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.7);
}
@media(max-width:759px){
  body.home .hero-tagline{
    white-space:normal;
    max-width:28ch;
    text-wrap:balance;
    font-size:clamp(1.05rem,3.6vw,1.18rem);
  }
}
/* Foto neemt resterende hoogte; breed genoeg voor ~45svh bij 16:9 */
body.home .hero .biker-plek{
  flex:1 1 auto;
  width:min(1100px,94%);
  max-width:min(1100px,82vw);
  max-height:calc(100svh - 9.75rem);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:220px;
}
body.home .hero .biker-plek picture{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  max-height:100%;
  min-height:0;
}
body.home .hero .biker-plek img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  margin:0 auto;
  object-fit:contain;
}
body.home .hero p:not(.hero-tagline){
  margin:0 auto!important;
  flex:0 0 auto;
  line-height:1.45;
  font-size:clamp(.95rem,1.5vh + .15vw,1.05rem);
  max-width:56ch;
}
body.home .hero-acties{
  flex:0 0 auto;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.45rem .65rem;
  margin-top:.1rem;
}
body.home .hero-acties .btn{margin:0}
body.home footer{
  margin-top:0;
  padding:.5rem 1rem;
  flex-shrink:0;
  font-size:.82rem;
}
@media(min-width:860px){
  body.home .hero{padding:clamp(.3rem,1.2vh,.85rem) 1.4rem}
  body.home .hero .biker-plek{
    width:min(1100px,82vw);
    max-width:min(1100px,82vw);
  }
}
@media(max-width:759px){
  body.home{
    height:auto;
    max-height:none;
    overflow:visible;
    min-height:100svh;
  }
  body.home main{flex:0 0 auto;padding:.5rem 1.1rem 0}
  body.home .hero{
    flex:0 0 auto;
    min-height:auto;
    padding:1rem 1rem 1.1rem;
  }
  body.home .hero>div{
    flex:0 0 auto;
    justify-content:flex-start;
    gap:.6rem;
    max-width:100%;
  }
  body.home .hero h1{font-size:clamp(2rem,9vw,3rem)}
  body.home .hero .biker-plek{
    flex:0 0 auto;
    width:92vw;
    max-width:92vw;
    min-height:0;
    max-height:clamp(200px,40svh,320px);
  }
  body.home .hero .biker-plek img{
    max-height:clamp(200px,40svh,320px);
  }
  body.home footer{margin-top:1rem;padding:1.2rem 1rem;font-size:.85rem}
}


/* === Polish v8 9 nov 2026: alle knoppen outline-goud; letters zelfde goud === */
:root{--gold:#f3d77e;--gold-hi:#ffe9a8}
/* Alle .btn = outline zoals "Over de club" (geen gevulde goudknop meer) */
.btn,
a.btn,
button.btn{
  display:inline-block;
  background:transparent!important;
  color:var(--gold)!important;
  border:2px solid var(--gold)!important;
  border-radius:4px;
  padding:.68rem 1.1rem;
  font-family:"Rye",Georgia,serif!important;
  font-weight:400!important;
  font-size:clamp(.82rem,2.5vw,.98rem);
  letter-spacing:.03em;
  text-transform:uppercase;
  text-decoration:none;
  line-height:1.2;
  cursor:pointer;
  box-shadow:none;
  transition:background .15s,color .15s,border-color .15s,box-shadow .15s,transform .15s;
}
.btn:hover,
a.btn:hover,
button.btn:hover,
.btn.ghost:hover{
  background:rgba(243,215,126,.14)!important;
  color:var(--gold-hi)!important;
  border-color:var(--gold-hi)!important;
  box-shadow:0 0 14px rgba(243,215,126,.28);
  filter:none;
  transform:translateY(-1px);
}
.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.btn.ghost{ /* alias: zelfde als .btn */ }
/* Uitloggen + compacte actieknoppen in dezelfde outline-stijl */
button.uitlog{
  background:transparent!important;
  color:var(--gold)!important;
  border:2px solid var(--gold)!important;
  border-radius:4px;
  padding:.35rem .8rem;
}
button.uitlog:hover{
  background:rgba(243,215,126,.14)!important;
  color:var(--gold-hi)!important;
  border-color:var(--gold-hi)!important;
  box-shadow:0 0 10px rgba(243,215,126,.25);
}
#uploads button,
.tbl button:not(.rood),
.fin-form button.btn{
  background:transparent!important;
  color:var(--gold)!important;
  border:2px solid var(--gold)!important;
}
#uploads button:hover,
.tbl button:not(.rood):hover{
  background:rgba(243,215,126,.12)!important;
  color:var(--gold-hi)!important;
  border-color:var(--gold-hi)!important;
}
/* Kleine UI-tekst: zelfde platte goud als menu/knoppen */
.hero-tagline,
.kicker,
nav a,
.subnav a,
.uitlog,
.event .d,
.vb{
  color:var(--gold)!important;
}
nav a.on,nav a:hover,
.subnav a.on,.subnav a:hover{color:var(--gold-hi)!important}
/* Koppen houden hun goud-gradient (RIDE FREE e.d.); h3 plat goud */
h3{color:var(--gold)!important}

/* === Financiën v2 (penningmeester, kasboek, verslagen) 9 nov 2026 === */
#inhoud label,.fin-filter{font-family:"Rye",Georgia,serif;color:var(--gold);letter-spacing:.03em;font-size:.85rem}
#inhoud label input,#inhoud label select,#inhoud label small{font-family:inherit;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;letter-spacing:0;font-size:1rem}
#inhoud label small{font-size:.75rem;color:var(--mut)}
.fin-kas{grid-template-columns:150px minmax(200px,2fr) 150px 130px minmax(150px,1fr) auto}
.fin-knoppen{display:flex;gap:.5rem;flex-wrap:wrap;margin:.8rem 0}
#fin-msg,#vs-msg{grid-column:1/-1;margin:0;min-height:1.2em}
.fin-tabel .r{text-align:right}.fin-tabel td.fin-oms-c{white-space:normal;min-width:12rem}
.fin-tabel .fin-act{white-space:nowrap;width:1%}
.fin-begin td{color:var(--mut);font-style:italic}
.fin-sub{margin:.1rem 0 0;color:var(--mut);font-size:.8rem}
.fin-jl{font-size:.8em;opacity:.8}
.fin-edit{margin-right:.2rem}
input[type=file]{padding:.45rem}
@media(max-width:900px){.fin-kas{grid-template-columns:1fr 1fr}.fin-kas .fin-oms{grid-column:1/-1}}
@media(max-width:600px){.fin-tabel .fin-cat{display:none}.fin-tabel th,.fin-tabel td{padding:.4rem .35rem;font-size:.88rem}.fin-tabel td.fin-oms-c{min-width:8rem}.fin-knoppen .btn{flex:1}}
/* Ledenrekeningen (streeplijst per maand) */
.pm-grid input.pm-n{width:4.2rem;min-width:0;text-align:right;padding:.35rem;font-size:1rem}
.pm-grid th[scope=row]{color:#fff;font-weight:600;position:sticky;left:0;background:rgba(18,18,20,.97);z-index:1}
.pm-grid small,.fin-tabel small{color:var(--mut);font-family:system-ui,sans-serif}
.pm-rek{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.pm-tekst{white-space:pre-wrap;font:inherit;font-size:.92rem;background:#111;border:1px solid var(--line);padding:.6rem;border-radius:4px;margin:.4rem 0}
.fin-totaal td,.fin-totaal th{font-weight:700;border-top:2px solid var(--gold)}
.fin-posten{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.fin-posten li{border:1px solid var(--line);border-radius:4px;padding:.2rem .4rem}
.fin-posten button{margin-left:.3rem;background:none;border:1px solid #555;color:#eee;border-radius:4px;cursor:pointer}
#pm-inst textarea{width:100%;padding:.6rem;background:#111;border:1px solid var(--line);color:#fff;border-radius:4px;margin-top:.2rem;font-family:system-ui,sans-serif;font-size:1rem}
#pm-printvel{display:none}

/* === Kasboek v2 (zoals de club-Excel) 9 nov 2026 === */
[hidden]{display:none!important}
body:not(.fin-mag) .kb-mag{display:none!important}
.kb-balk{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:end}.kb-balk label{margin:0}.kb-balk select{width:auto;min-width:9rem;padding:.55rem;background:#111;color:#fff;border:1px solid var(--line);border-radius:4px;margin-top:.2rem;font-size:1rem}
.kb-weergave{display:flex;gap:.4rem}.kb-weergave .btn[aria-pressed=true]{background:rgba(243,215,126,.18)!important;color:var(--gold-hi)!important}
.kb-maandkeus{display:flex;gap:.4rem;align-items:end}.kb-pijl{padding:.5rem .8rem!important;font-size:1.1rem!important}
.kb-blad{max-width:860px}.kb-tabel,.kb-jaar{width:100%;border-collapse:collapse}
.kb-tabel th,.kb-tabel td,.kb-jaar th,.kb-jaar td{padding:.38rem .55rem;border-bottom:1px solid #2c2c2c;white-space:nowrap;text-align:left}
.kb-tabel td:first-child,.kb-tabel th:first-child{white-space:normal}
.kb-tabel .r,.kb-jaar .r{text-align:right;font-variant-numeric:tabular-nums}
.kb-kop th{font-family:"Rye",Georgia,serif;color:var(--gold);font-weight:400;letter-spacing:.04em;text-transform:uppercase;padding-top:.9rem;border-bottom:1px solid #6a5420}
.kb-saldo th,.kb-saldo td{font-family:"Rye",Georgia,serif;color:var(--gold);font-weight:400;font-size:1.05rem;background:rgba(243,215,126,.08);border-top:2px solid var(--gold);border-bottom:2px solid var(--gold)}
.kb-eind.neg td,.kb-saldo td.fin-uit{color:#ff9a8a}
.kb-sub th,.kb-sub td{font-weight:700;color:#fff;border-top:2px solid #6a5420}
.kb-tus th,.kb-tus td{color:#cfc6b0;font-style:italic}
.kb-tabel small,.kb-jaar small{color:var(--mut);font-size:.78rem}
.kb-bewerk input{width:100%;min-width:0;padding:.4rem;margin:0;background:#111;border:1px solid #444;color:#fff;border-radius:4px;font-size:.95rem}
.kb-bewerk .kb-bedrag{width:7.5rem;text-align:right}
.kb-pe{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;min-width:14rem}
.kb-snel td{padding:.45rem .3rem}.kb-snel .btn{padding:.35rem .7rem!important;font-size:.75rem!important;margin:.15rem .3rem .15rem 0}
.kb-snel input{display:inline-block;width:12rem;padding:.4rem;margin-right:.4rem;background:#111;border:1px solid #444;color:#fff;border-radius:4px}
.kb-jaar-tbl{overflow-x:auto;border:1px solid #333;border-radius:6px;background:rgba(18,18,20,.9)}
.kb-jaar thead th{font-family:"Rye",Georgia,serif;color:var(--gold);font-weight:400;position:sticky;top:0;background:#151515}
.kb-jaar tbody th{position:sticky;left:0;background:#151515;z-index:1;font-weight:400;min-width:11rem}
.kb-jaar .kb-kop th{background:#151515}
.kb-stapel{display:none}
.kb-kort{width:5.5rem!important;text-align:right}
.kb-voorraad input{width:100%;min-width:6rem;padding:.35rem;background:#111;border:1px solid #444;color:#fff;border-radius:4px}
.ac-betaald td{opacity:.55;text-decoration:line-through}.ac-betaald td:nth-child(4){text-decoration:none}
.kb-check{display:flex;gap:.4rem;align-items:center}.kb-check input{width:auto;margin:0}
@media(max-width:700px){
  .kb-jaar-tbl{display:none}.kb-stapel{display:grid;gap:1rem}
  .kb-pe{grid-template-columns:1fr;min-width:8rem}.kb-bewerk .kb-bedrag{width:5.6rem}
  .kb-tabel th,.kb-tabel td{padding:.32rem .3rem;font-size:.9rem}
  .kb-balk{gap:.5rem}.kb-weergave .btn{padding:.45rem .6rem!important}
}
.pm-bal{min-width:15rem}.pm-bal input{display:inline-block;width:auto;margin:0 .2rem 0 0;padding:.35rem;background:#111;border:1px solid #444;color:#fff;border-radius:4px}
.pm-bal .pm-bo{width:9rem}.pm-bal .pm-bb{width:5.2rem;text-align:right}
.pm-extra-t select,.pm-extra-t input{width:100%;padding:.35rem;background:#111;border:1px solid #444;color:#fff;border-radius:4px}.pm-extra-t .pm-eb{width:7rem;text-align:right}
/* Streepjeslijst v3: alle leden + gasten */
.pm-gastlabel{display:inline-block;margin-left:.35rem;padding:.05rem .4rem;border:1px solid var(--gold);border-radius:10px;color:var(--gold);font-family:"Rye",Georgia,serif;font-size:.62rem;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}
.pm-gast th[scope=row]{font-style:italic}
.pm-lijst-knoppen{align-items:center}.pm-gast-form{display:flex;gap:.4rem;align-items:center}.pm-gast-form input{width:11rem;padding:.55rem;background:#111;border:1px solid #444;color:#fff;border-radius:4px;margin:0}

/* Streepjeslijst archief (per jaar) */
.pm-vast input,.pm-vast select{pointer-events:none;opacity:.85;background:#1a1a1a}
.pm-vast .pm-del,.pm-vast .pm-extra-del{display:none}
#pm-archief-banner{margin:.6rem 0}
.pm-jaren{display:flex;flex-wrap:wrap;gap:.5rem;margin:.4rem 0}
.pm-map{display:inline-flex;align-items:center;gap:.35rem}
.pm-map[aria-expanded=true]{background:rgba(243,215,126,.18)!important;color:var(--gold-hi)!important}
.pm-archief-lijst{list-style:none;padding:0;margin:.4rem 0 0;display:grid;gap:.35rem}
.pm-archief-lijst li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.pm-archief-lijst .btn[aria-current=true]{background:rgba(243,215,126,.18)!important;color:var(--gold-hi)!important}

/* Streepieslieste-tabbladen + extra regels met artikelkeuze */
.pm-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 1rem;border-bottom:1px solid #3a2f15;padding:0 0 .55rem}
.pm-tabs a{
  font-family:"Rye",Georgia,serif;font-weight:400;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;
  color:var(--gold)!important;border:2px solid var(--gold);border-radius:4px;padding:.45rem .85rem;font-size:.82rem;
  background:transparent;white-space:nowrap;line-height:1.2
}
.pm-tabs a:hover,.pm-tabs a.on,.pm-tabs a[aria-selected=true]{
  color:var(--gold-hi)!important;border-color:var(--gold-hi);background:rgba(243,215,126,.18)
}
.pm-extra-t [data-f=artikel]{min-width:11rem}
.pm-extra-t .pm-ea{width:4.2rem;text-align:right}
.pm-extra-t .pm-ep{width:5.5rem;text-align:right}
.pm-ex-vrij [data-f=aantal],.pm-ex-vrij [data-f=prijs]{visibility:hidden}
@media(max-width:700px){
  .pm-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:.65rem}
  .pm-tabs a{font-size:.75rem;padding:.4rem .7rem}
}



@media(min-width:1100px) and (max-width:1399px){
  #hoofdmenu{gap:.5rem .65rem}
  nav a{font-size:clamp(.72rem,1.05vw,.9rem);letter-spacing:.04em}
  header .logo{font-size:1.35rem}
  header .talen{margin-left:.3rem;flex-shrink:0}
}
@media(min-width:1400px){
  #hoofdmenu{gap:1.05rem}
}
/* Taalkeuze NL | EN | DE (alleen openbare pagina's) */
.talen{display:flex;align-items:center;gap:.05rem;flex:0 0 auto;margin:0;padding:0}
.talen button{
  font-family:"Rye",Georgia,serif;
  font-weight:400;
  background:none;
  border:0;
  color:var(--gold,#f3d77e);
  text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.75);
  letter-spacing:.06em;
  font-size:.78rem;
  cursor:pointer;
  padding:.2rem .3rem;
  text-transform:uppercase;
  line-height:1;
}
.talen span[aria-hidden]{color:var(--gold,#f3d77e);opacity:.4;font-size:.72rem;user-select:none;padding:0 .05rem}
.talen button:hover{color:var(--gold-hi,#ffe9a8)}
.talen button[aria-pressed=true]{color:var(--gold-hi,#ffe9a8);text-decoration:underline;text-underline-offset:3px}
@media(min-width:860px){
  html[lang="en"] body.home .hero-tagline{font-size:clamp(.95rem,1.5vh + .2vw,1.12rem)}
}

/* Streepieslieste: breder kader, tabel uitgelijnd, spinners vrij van cijfers (10 nov 2026) */
body.pm-pagina main{
  max-width:min(1480px,96vw);
  width:100%;
  box-sizing:border-box;
  min-width:0;
}
#pm-blad.card{
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  overflow-x:hidden;
}
#pm-blad .tbl{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  max-width:100%;
}
#pm-blad .fin-knoppen,
#pm-blad .pm-lijst-knoppen,
#pm-blad .pm-gast-form{
  max-width:100%;
}
#pm-blad .fin-knoppen .btn,
#pm-blad .pm-lijst-knoppen .btn{
  min-width:0;
  max-width:100%;
}
.pm-grid{
  table-layout:fixed;
  width:max-content;
  min-width:100%;
  font-variant-numeric:tabular-nums;
}
.pm-grid th,
.pm-grid td{
  vertical-align:middle;
}
.pm-grid .pm-naam,
.pm-grid th[scope=row],
.pm-grid tfoot th{
  text-align:left;
  width:12rem;
  min-width:12rem;
}
.pm-grid thead th.pm-art,
.pm-grid tbody td.pm-art,
.pm-grid tfoot td.pm-art{
  text-align:center;
  width:7.2rem;
  min-width:7.2rem;
}
.pm-grid .pm-totkop,
.pm-grid .pm-tot,
.pm-grid tfoot .pm-tot{
  text-align:right;
  width:7.5rem;
  min-width:7.5rem;
  font-variant-numeric:tabular-nums;
}
.pm-grid .pm-delkop,
.pm-grid .pm-delcel{
  width:2.6rem;
  min-width:2.6rem;
  text-align:center;
  padding-left:.2rem;
  padding-right:.2rem;
}
.pm-spin{
  position:relative;
  display:block;
  width:5.8rem;
  min-width:5.8rem;
  margin:0 auto;
  box-sizing:border-box;
}
.pm-spin input.pm-n,
.pm-spin input.pm-ea{
  width:100%;
  min-width:0;
  max-width:none;
  box-sizing:border-box;
  display:block;
  margin:0;
  text-align:left;
  padding:.4rem 1.65rem .4rem .45rem;
  font-size:1rem;
  font-variant-numeric:tabular-nums;
  appearance:textfield;
  -moz-appearance:textfield;
}
.pm-spin input.pm-n::-webkit-inner-spin-button,
.pm-spin input.pm-n::-webkit-outer-spin-button,
.pm-spin input.pm-ea::-webkit-inner-spin-button,
.pm-spin input.pm-ea::-webkit-outer-spin-button{
  appearance:none;
  -webkit-appearance:none;
  margin:0;
  display:none;
}
.pm-spin-knoppen{
  position:absolute;
  top:2px;
  right:2px;
  bottom:2px;
  width:1.2rem;
  display:flex;
  flex-direction:column;
  justify-content:stretch;
}
#pm-blad .tbl button.pm-spin-up,
#pm-blad .tbl button.pm-spin-down,
.pm-spin-knoppen button{
  flex:1 1 0;
  margin:0!important;
  padding:0!important;
  width:100%;
  min-height:0;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--gold,#f3d77e)!important;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:.62rem;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:none!important;
}
#pm-blad .tbl button.pm-spin-up:hover,
#pm-blad .tbl button.pm-spin-down:hover,
.pm-spin-knoppen button:hover{
  color:var(--gold-hi,#ffe9a8)!important;
  background:rgba(243,215,126,.14)!important;
  border:0!important;
}
#pm-blad .tbl button.pm-spin-up:focus,
#pm-blad .tbl button.pm-spin-down:focus{
  outline:none;
}
#pm-blad .tbl button.pm-spin-up:focus-visible,
#pm-blad .tbl button.pm-spin-down:focus-visible{
  color:var(--gold-hi,#ffe9a8)!important;
}
#pm-blad .tbl button.pm-spin-up:active,
#pm-blad .tbl button.pm-spin-down:active{
  color:var(--gold-hi,#ffe9a8)!important;
  border:0!important;
}
.pm-vast .pm-spin-knoppen,
.pm-spin-uit .pm-spin-knoppen,
.pm-ex-vrij .pm-spin-knoppen{display:none}
.pm-ex-vrij .pm-spin{visibility:hidden}
.pm-balletje-oud-blok{margin:.7rem 0 .2rem}
.pm-balletje-oud{margin:.2rem 0 0;padding-left:1.2rem}
.pm-extra-t{
  table-layout:fixed;
  width:100%;
  min-width:36rem;
  font-variant-numeric:tabular-nums;
}
.pm-extra-t th,
.pm-extra-t td{
  vertical-align:middle;
}
.pm-extra-t thead th:not(.r){text-align:left}
.pm-extra-t thead th.r,
.pm-extra-t td.r{text-align:right}
.pm-extra-t th:nth-child(1),.pm-extra-t td:nth-child(1){width:16%}
.pm-extra-t th:nth-child(2),.pm-extra-t td:nth-child(2){width:22%}
.pm-extra-t th:nth-child(3),.pm-extra-t td:nth-child(3){width:7rem;min-width:7rem}
.pm-extra-t th:nth-child(4),.pm-extra-t td:nth-child(4){width:26%}
.pm-extra-t th:nth-child(5),.pm-extra-t td:nth-child(5){width:12%}
.pm-extra-t th:nth-child(6),.pm-extra-t td:nth-child(6){width:12%}
.pm-extra-t th:nth-child(7),.pm-extra-t td:nth-child(7){width:2.6rem}
.pm-extra-t .pm-spin{margin-left:auto;margin-right:0}
.pm-extra-t .pm-ep,
.pm-extra-t .pm-eb{
  width:7rem;
  box-sizing:border-box;
  display:block;
  margin-left:auto;
  text-align:right;
}
@media(max-width:700px){
  body.pm-pagina main{max-width:100%;padding-left:.8rem;padding-right:.8rem}
  #pm-blad.card{padding:1rem .8rem;overflow-x:hidden}
  #pm-blad .pm-lijst-knoppen{flex-direction:column;align-items:stretch}
  #pm-blad .pm-lijst-knoppen > .btn{width:100%;flex:none;white-space:normal;text-align:center}
  #pm-blad .pm-gast-form{width:100%;display:flex;gap:.4rem;align-items:center}
  #pm-blad .pm-gast-form .btn{width:auto;flex:0 0 auto;white-space:nowrap}
  #pm-blad .pm-gast-form input{flex:1 1 auto;width:auto;min-width:8rem}
  #pm-blad .fin-knoppen{display:grid;grid-template-columns:1fr;gap:.5rem}
  #pm-blad .fin-knoppen .btn{width:100%;max-width:100%;flex:none;margin:0;white-space:normal;text-align:center}
  .pm-spin{width:6.3rem;min-width:6.3rem}
  .pm-spin input.pm-n,
  .pm-spin input.pm-ea{padding:.5rem 1.85rem .5rem .5rem;min-height:2.45rem}
  .pm-spin-knoppen{width:1.5rem}
  #pm-blad .tbl button.pm-spin-up,
  #pm-blad .tbl button.pm-spin-down{font-size:.72rem}
  .pm-grid thead th.pm-art,
  .pm-grid tbody td.pm-art,
  .pm-grid tfoot td.pm-art{width:7.8rem;min-width:7.8rem}
}

/* === 10 nov 2026: Uitleg-knop + ledennamen in Ape's-stijl === */
.fin-knoppen.pm-intro{align-items:flex-start}
#pm-uitleg-knop::before{content:"▸ "}
#pm-uitleg-knop[aria-expanded=true]::before{content:"▾ "}
.pm-uitleg-tekst{
  flex:0 0 100%;
  width:100%;
  max-width:none;
  box-sizing:border-box;
  margin:.5rem 0 0;
  padding-right:max(0px,calc(100% - 72ch));
}
.pm-grid tbody th[scope=row],
.pm-rek-k > h3{
  font-family:"Rye",Georgia,serif;
  font-weight:400;
  font-size:1.22rem;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--gold,#f3d77e);
  text-align:left;
  text-shadow:0 1px 0 #000,0 0 6px rgba(0,0,0,.75);
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  -webkit-text-stroke:0;
  filter:none;
  line-height:1.25;
}
.pm-grid tbody th[scope=row] .pm-gastlabel,
.pm-rek-k > h3 .pm-gastlabel{
  font-size:.62em;
  letter-spacing:.04em;
  font-weight:400;
  opacity:.85;
  text-transform:uppercase;
}
@media(max-width:700px){
  .pm-grid .pm-naam,
  .pm-grid th[scope=row],
  .pm-grid tfoot th{width:10.5rem;min-width:10.5rem}
  .pm-grid tbody th[scope=row],
  .pm-rek-k > h3{font-size:1.08rem;letter-spacing:.02em}
}

/* === 11 nov 2026: Gebruiksaanwijzing-knop === */
#pm-hulp-knop::before{content:"▸ "}
#pm-hulp-knop[aria-expanded=true]::before{content:"▾ "}
.pm-hulp{padding:.9rem 1.1rem;border:1px solid rgba(243,215,126,.35);border-radius:10px;background:rgba(18,18,20,.55)}
.pm-hulp h3{font-family:"Rye",Georgia,serif;font-weight:400;color:var(--gold,#f3d77e);font-size:1.02rem;letter-spacing:.04em;margin:.8rem 0 .35rem}
.pm-hulp h3:first-child{margin-top:0}
.pm-hulp ol,.pm-hulp ul{margin:0 0 .3rem;padding-left:1.3rem;max-width:80ch}
.pm-hulp li{margin:.25rem 0;line-height:1.45}
.pm-hulp b{color:var(--gold,#f3d77e)}

/* === 11 nov 2026: Streepieslieste print, A4 staand in Ape's-stijl === */
/* Gedeelde opmaak (print én scherm): */
:is(#pm-printvel,#pm-scherm) *{box-sizing:border-box;margin:0;padding:0}
:is(#pm-printvel,#pm-scherm) p,:is(#pm-printvel,#pm-scherm) div{border-bottom:0;max-width:none}
:is(#pm-printvel,#pm-scherm) .pv-page{width:210mm;height:296.5mm;position:relative;overflow:hidden;color:#efe9df;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:radial-gradient(ellipse at 50% 0%,rgba(220,180,78,.14),transparent 55%),linear-gradient(180deg,#121212,#070707);page-break-after:avoid;break-inside:avoid}
:is(#pm-printvel,#pm-scherm) .pv-wm,:is(#pm-printvel,#pm-scherm) .pv-wm-top{position:absolute;inset:0;pointer-events:none;background:url(../img/logo-ovaal.png) center 46%/178mm auto no-repeat}
:is(#pm-printvel,#pm-scherm) .pv-wm{z-index:0;opacity:.07}
:is(#pm-printvel,#pm-scherm) .pv-wm-top{z-index:2;opacity:.07;mix-blend-mode:multiply;filter:grayscale(1) contrast(1.1)}
:is(#pm-printvel,#pm-scherm) .pv-frame{position:relative;z-index:1;height:calc(100% - 14mm);margin:7mm;padding:5.5mm 5.5mm 5mm;display:flex;flex-direction:column;border:1.4pt solid #f3d77e;box-shadow:inset 0 0 0 3.2pt rgba(15,15,16,.92),inset 0 0 0 4.6pt #b8862a}
:is(#pm-printvel,#pm-scherm) .pv-kop{display:grid;grid-template-columns:24mm 1fr 24mm;align-items:center;gap:3mm;margin-bottom:2.2mm}
:is(#pm-printvel,#pm-scherm) .pv-kop img{width:24.2mm;height:18.6mm;object-fit:contain}
:is(#pm-printvel,#pm-scherm) .pv-mid{text-align:center}
:is(#pm-printvel,#pm-scherm) .pv-kicker{font-family:"Rye",Georgia,serif;letter-spacing:.18em;text-transform:uppercase;color:#f3d77e;font-size:3.3mm;margin-bottom:1.1mm}
:is(#pm-printvel,#pm-scherm) .pv-h1{display:inline-block;font-family:"Rye",Georgia,serif;font-weight:400;letter-spacing:.03em;text-transform:uppercase;font-size:8.2mm;line-height:1.05;color:#f0cd68;text-shadow:0 .4mm 0 #000,0 0 2mm rgba(0,0,0,.7);border:0!important;background:none!important}
:is(#pm-printvel,#pm-scherm) .pv-maand{font-family:"Rye",Georgia,serif;letter-spacing:.12em;text-transform:uppercase;color:#ffe9a8;font-size:4.1mm;margin-top:1.4mm}
:is(#pm-printvel,#pm-scherm) .pv-lijn{height:0;border:0;background:none;border-top:1pt solid #b8862a;border-bottom:.4pt solid #f3d77e;margin:1.8mm 0 2.4mm}
:is(#pm-printvel,#pm-scherm) table{width:100%;border-collapse:collapse;table-layout:fixed}
:is(#pm-printvel,#pm-scherm) .pv-lijst{flex:1 1 auto;min-height:0}
:is(#pm-printvel,#pm-scherm) .pv-lijst th,:is(#pm-printvel,#pm-scherm) .pv-lijst td{border:.7pt solid #6a5420;vertical-align:middle}
:is(#pm-printvel,#pm-scherm) .pv-lijst thead th{font-family:"Rye",Georgia,serif;font-weight:400;text-transform:uppercase;color:#f3d77e;text-align:center;background:rgba(18,18,20,.55);padding:1.2mm .5mm 1.1mm;line-height:1.12;font-size:2.9mm;overflow:hidden;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:manual;letter-spacing:0}
:is(#pm-printvel,#pm-scherm) .pv-lijst thead th small{display:block;margin-top:.7mm;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:2.8mm;text-transform:none;color:#ffe9a8;font-weight:600}
:is(#pm-printvel,#pm-scherm) .pv-lijst thead th.pv-naamkop{text-align:left;padding-left:3mm}
:is(#pm-printvel,#pm-scherm) .pv-col-naam{width:44mm}:is(#pm-printvel,#pm-scherm) .pv-col-tot{width:22mm}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody th{font-family:"Rye",Georgia,serif;font-weight:400;font-size:5.6mm;letter-spacing:.03em;color:#f3d77e;text-align:left;padding:0 3mm;background:rgba(12,12,14,.42);line-height:1.1;white-space:nowrap;overflow:hidden}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody tr.pv-leeg th{background:#ddd5c3!important;vertical-align:top}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody tr.pv-leeg th .pv-plek{color:#8a7a55!important;font-size:2.2mm}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody th .pv-g{font-family:system-ui,sans-serif;font-size:2.4mm;letter-spacing:.06em;color:rgba(243,215,126,.6);margin-left:1.2mm;text-transform:uppercase}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody td{background:#ddd5c3;color:#1a1408;text-align:center;font-size:4.2mm;font-weight:700}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody td.pv-tot{background:#d9c99c;font-size:3.4mm;white-space:nowrap}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody tr.pv-leeg th .pv-plek{display:block;color:rgba(243,215,126,.28);font-size:3.2mm;letter-spacing:.08em;text-transform:uppercase}
:is(#pm-printvel,#pm-scherm) .pv-lijst thead th.pv-prijzen{text-align:center;padding:1.6mm 1mm}
:is(#pm-printvel,#pm-scherm) .pv-lijst thead th.pv-prijzen{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;text-transform:none;font-size:2.8mm;color:#ffe9a8}
:is(#pm-printvel,#pm-scherm) .pv-prijzen small{display:inline!important;margin:0 0 0 .8mm!important}
:is(#pm-printvel,#pm-scherm) .pv-lijst tbody td.pv-mzc{padding:0;position:relative;background:transparent}
:is(#pm-printvel,#pm-scherm) .pv-mz{position:absolute;inset:0;display:flex}
:is(#pm-printvel,#pm-scherm) .pv-vak{position:relative;background:#ddd5c3;border-left:.7pt solid #6a5420;display:flex;align-items:center;justify-content:center;min-width:0}
:is(#pm-printvel,#pm-scherm) .pv-vak:first-child{border-left:0}
:is(#pm-printvel,#pm-scherm) .pv-vak.pv-fav{background:#d6cdb8}
:is(#pm-printvel,#pm-scherm) .pv-vl{position:absolute;bottom:.6mm;left:.9mm;right:.7mm;font-family:"Rye",Georgia,serif;font-weight:400;font-size:1.6mm;letter-spacing:-.01em;line-height:1;text-transform:uppercase;color:rgba(90,70,24,.7);white-space:nowrap;overflow:hidden;text-align:left}
:is(#pm-printvel,#pm-scherm) .pv-vl i{display:inline;font-style:normal;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:600;text-transform:none;font-size:1.6mm;margin-left:.6mm;color:rgba(90,70,24,.7)}
:is(#pm-printvel,#pm-scherm) .pv-vak.pv-fav .pv-vl,:is(#pm-printvel,#pm-scherm) .pv-vak.pv-fav .pv-vl i{font-size:2.1mm;color:rgba(90,70,24,.9)}
:is(#pm-printvel,#pm-scherm) .pv-vak.pv-vov{background:#d9c99c}
:is(#pm-printvel,#pm-scherm) .pv-vak b{font-size:4.2mm;color:#1a1408}
:is(#pm-printvel,#pm-scherm) .pv-lijst.pv-veel tbody th{font-size:4.2mm}
:is(#pm-printvel,#pm-scherm) .pv-lijst.pv-heelveel tbody th{font-size:3.2mm}
:is(#pm-printvel,#pm-scherm) .pv-lijst.pv-heelveel tbody td{font-size:3mm}
:is(#pm-printvel,#pm-scherm) .pv-overig{margin-top:2.4mm;flex:0 0 auto}
:is(#pm-printvel,#pm-scherm) .pv-overig .pv-h2{font-family:"Rye",Georgia,serif;font-weight:400;font-size:3.4mm;letter-spacing:.1em;text-transform:uppercase;color:#f3d77e;margin:0 0 1.6mm}
:is(#pm-printvel,#pm-scherm) .pv-overig td{border:.7pt solid #6a5420;height:7.2mm;background:#ddd5c3;color:#1a1408;font-size:2.9mm;padding:0 1.5mm;width:33.33%;overflow:hidden}
:is(#pm-printvel,#pm-scherm) .pv-ov th{font-family:"Rye",Georgia,serif;font-weight:400;font-size:2.6mm;text-transform:uppercase;color:#f3d77e;background:rgba(18,18,20,.55);border:.7pt solid #6a5420;padding:.8mm 1.5mm;text-align:left;white-space:nowrap;overflow:hidden}
:is(#pm-printvel,#pm-scherm) .pv-ov td{height:9.5mm;width:auto}
:is(#pm-printvel,#pm-scherm) .pv-ov td.pv-ob{text-align:right;white-space:nowrap}
:is(#pm-printvel,#pm-scherm) .pv-ov td.pv-otot{background:#d9c99c;text-align:center;font-weight:700;font-size:3.4mm}
:is(#pm-printvel,#pm-scherm) .pv-ov td.pv-joep{background:#ddd5c3}
:is(#pm-printvel,#pm-scherm) .pv-c-b{width:19mm}:is(#pm-printvel,#pm-scherm) .pv-c-tot{width:22mm}:is(#pm-printvel,#pm-scherm) .pv-c-joep{width:24mm}
:is(#pm-printvel,#pm-scherm) .pv-voet{margin-top:2.4mm;display:flex;justify-content:space-between;align-items:flex-end;gap:4mm;color:#a19d97;font-size:2.8mm;line-height:1.35}
:is(#pm-printvel,#pm-scherm) .pv-voet p{max-width:128mm;text-align:left;margin:0}
:is(#pm-printvel,#pm-scherm) .pv-ride{font-family:"Rye",Georgia,serif;letter-spacing:.1em;text-transform:uppercase;color:#f3d77e;font-size:3.1mm;white-space:nowrap}
@media print{
  @page{size:A4 portrait;margin:0}
  html,body{background:#070707!important;margin:0!important;padding:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body::before,body::after,html::before,html::after{display:none!important}
  body.pv-print>*:not(#pm-printvel){display:none!important}
  #pm-printvel{display:block!important;position:static;margin:0;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* === 11 nov 2026: digitale Streepieslieste = zelfde mozaïek als de print === */
#pm-scherm{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.9rem 0 .4rem;padding:2px 0 .5rem;max-width:100%}
#pm-scherm>p{padding:1rem 0}
#pm-scherm .pv-page{height:auto;margin:0 auto;overflow:visible;box-shadow:0 10px 30px rgba(0,0,0,.55);font-size:3mm}
#pm-scherm .pv-frame{height:auto}
#pm-scherm .pv-wm{overflow:hidden}
#pm-scherm .pv-lijst tbody tr{height:15mm}
#pm-scherm .pv-lijst tbody th{position:sticky;left:0;z-index:3;background:#141416}
#pm-scherm .pv-lijst tbody th .pv-del{float:right;margin:0 -2mm 0 1mm;width:4.4mm;height:4.4mm;padding:0;border:0;border-radius:50%;background:transparent;color:rgba(243,215,126,.35);font:700 2.8mm/1 system-ui,sans-serif;cursor:pointer;opacity:0;transition:opacity .15s}
#pm-scherm .pv-lijst tbody tr:hover th .pv-del,#pm-scherm .pv-lijst tbody th .pv-del:focus-visible{opacity:1}
#pm-scherm .pv-lijst tbody th .pv-del:hover{color:#ff9a8a}
#pm-scherm .pv-geen{background:#ddd5c3;color:#1a1408;font-size:3.4mm!important;font-weight:600!important;padding:3mm}
#pm-scherm .pv-vak[data-a]{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .12s}
#pm-scherm .pv-vak[data-a]:hover{background:#e6dfcd}
#pm-scherm .pv-vak.pv-fav[data-a]:hover{background:#ded5bf}
#pm-scherm .pv-vak[data-a]:focus-visible{outline:2px solid #b8862a;outline-offset:-2px;z-index:1}
#pm-scherm .pv-vak b.pv-n{font-size:6mm;line-height:1;margin-bottom:2.2mm;font-variant-numeric:tabular-nums}
#pm-scherm .pv-vak.pv-flits{animation:pvFlits .35s ease-out}
@keyframes pvFlits{from{background:#f3d77e}}
#pm-scherm .pv-min{display:none;position:absolute;top:.7mm;right:.7mm;width:4.6mm;height:4.6mm;padding:0;border:0;border-radius:50%;background:rgba(90,70,24,.16);color:#5a4618;font:700 3.6mm/4.4mm system-ui,sans-serif;text-align:center;cursor:pointer;z-index:2}
#pm-scherm .pv-min:hover{background:rgba(160,40,30,.22);color:#7a1d12}
#pm-scherm .pv-vak.pv-heeft .pv-min{display:block}
#pm-scherm .pv-vak.pv-vov[data-ov]{cursor:pointer}
#pm-scherm .pv-vak.pv-vov[data-ov]:hover{background:#e3d5ad}
:is(#pm-printvel,#pm-scherm) .pv-vak b.pv-ovb{font-size:2.6mm;margin-bottom:2mm;white-space:nowrap;letter-spacing:-.02em}
#pm-scherm .pv-ov td{height:auto;padding:1mm 1.2mm;vertical-align:middle}
#pm-scherm .pv-ov td.pv-oo,#pm-scherm .pv-ov td.pv-ob{height:10mm}
#pm-scherm .pv-ovc{display:flex;flex-wrap:wrap;gap:.9mm;align-items:center}
#pm-scherm .pv-ovc select,#pm-scherm .pv-ovc input,#pm-scherm .pv-ob input,#pm-scherm #pm-joep{font:600 2.8mm/1.2 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1a1408;background:rgba(255,255,255,.4);border:.5pt solid rgba(106,84,32,.55);border-radius:1mm;padding:.7mm .9mm;margin:0;height:6.6mm;min-width:0;width:auto;max-width:none;box-shadow:none}
#pm-scherm .pv-ovc select[data-f=voornaam]{flex:0 1 14mm}
#pm-scherm .pv-ovc select[data-f=artikel]{flex:1 1 17mm}
#pm-scherm .pv-ovc input[data-f=aantal]{flex:0 0 10mm;text-align:center;padding:.7mm .3mm}
#pm-scherm .pv-ovc input[data-f=oms]{flex:1 1 100%}
#pm-scherm .pv-ob input[data-f=bedrag]{width:100%;text-align:right}
#pm-scherm .pv-ob span{display:block;text-align:right}
#pm-scherm select:focus,#pm-scherm input:focus{outline:1.5px solid #b8862a;background:#fff}
#pm-scherm .pv-joep-l{display:flex;align-items:center;gap:1mm;font:700 3.4mm system-ui,sans-serif;color:#5a4618;margin:0;text-transform:none;letter-spacing:0}
#pm-scherm #pm-joep{flex:1 1 auto;width:100%;height:9mm;text-align:center;font-size:4mm;font-weight:700}
#pm-scherm .pv-ovplus{margin-top:1.6mm!important;text-align:right}
#pm-scherm .pv-ovplus button{font:400 2.7mm "Rye",Georgia,serif;letter-spacing:.06em;text-transform:uppercase;color:#f3d77e;background:rgba(18,18,20,.6);border:.7pt solid #b8862a;border-radius:1mm;padding:1.2mm 2.4mm;cursor:pointer}
#pm-scherm .pv-ovplus button:hover{background:rgba(243,215,126,.14)}
.pm-vast #pm-scherm .pv-vak[data-a],.pm-vast #pm-scherm .pv-vak[data-ov]{cursor:default}
.pm-vast #pm-scherm select,.pm-vast #pm-scherm input{pointer-events:none;opacity:1;background:transparent;border-color:transparent;-webkit-appearance:none;appearance:none}
#pm-som{margin:.2rem 0 .8rem}
@media(max-width:860px){#pm-scherm .pv-page{zoom:.8}}
@media(max-width:600px){#pm-scherm{margin-left:-.6rem;margin-right:-.6rem}#pm-scherm .pv-page{zoom:.66}#pm-scherm .pv-lijst tbody tr{height:16mm}#pm-scherm .pv-col-naam{width:33mm}#pm-scherm .pv-lijst tbody th{font-size:4.8mm;padding:0 2mm}#pm-blad .pm-gast-form{flex:1 1 100%;max-width:100%}#pm-blad .pm-gast-form input{flex:1 1 auto;width:auto;min-width:0}#pm-blad .fin-knoppen .pm-gast-form .btn{flex:0 0 auto;width:auto}#pm-scherm .pv-min{width:6mm;height:6mm;font-size:4.4mm;line-height:5.8mm}}
#pm-scherm .pv-schoon{margin-top:2mm;padding:2mm 3mm;border:.7pt solid #b8862a;border-radius:1mm;background:rgba(18,18,20,.75);color:#f3ead2;font:3mm Georgia,serif}
#pm-scherm .pv-schoon label{display:inline-block;margin:.8mm 4mm .8mm 0;cursor:pointer}
#pm-scherm .pv-schoon p{margin:.5mm 0 1.5mm}
/* === Contributie per maand (11 nov 2026): blok onder de Streepieslieste, Ape's-stijl (goud Rye, crème vakken) === */
.pm-contr{margin:1.1rem 0 .6rem;padding:.9rem 1rem 1rem;border:1px solid #6a5420;border-radius:8px;background:radial-gradient(ellipse at 50% 0%,rgba(220,180,78,.12),transparent 60%),#0d0d0d}
.pm-contr .pc-kop{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem;border-bottom:1px solid #3a2f15;padding-bottom:.55rem;margin-bottom:.7rem}
.pm-contr h3{margin:0;color:var(--gold);font-size:1.15rem}.pm-contr h3 span{color:var(--gold-hi)}
.pm-contr .pc-bedrag{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.95rem;color:#f3ead2}
.pm-contr .pc-eur{display:inline-flex;align-items:center;gap:.25rem;background:#ddd5c3;color:#1a1408;border:1px solid #b8862a;border-radius:5px;padding:0 .45rem;font-weight:700}
.pm-contr .pc-eur input{width:6.2rem;margin:0;border:0;background:transparent;color:#1a1408;font:700 1rem system-ui,sans-serif;padding:.4rem .1rem;text-align:right;box-shadow:none}
.pm-contr .pc-eur input::placeholder{color:#7a6a4a;font-weight:600}
.pm-contr .pc-eur input.pc-fout{outline:2px solid #ff8080}
.pm-contr .pc-tip{margin:.1rem 0 .6rem;color:#f0d68a;font-size:.9rem}
.pc-lijst{list-style:none;margin:0;padding:0;display:grid;gap:.45rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}
.pc-lijst label{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:.6rem;align-items:center;margin:0;padding:.45rem .7rem;background:#ddd5c3;color:#1a1408;border:1px solid #6a5420;border-left:5px solid #8a7444;border-radius:6px;cursor:pointer;min-height:3rem}
.pc-lijst input[type=checkbox]{grid-row:1/3;width:1.45rem;height:1.45rem;margin:0;accent-color:#3c7a2e;cursor:pointer}
.pc-lijst .pc-naam{font-family:"Rye",Georgia,serif;font-size:1.02rem;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-lijst .pc-bed{font-weight:700;white-space:nowrap}
.pc-lijst .pc-st{grid-column:2/4;font-size:.8rem;color:#7a3a1a;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.pc-lijst li.pc-ja label{background:#e6dcb8;border-left-color:#3c7a2e}
.pc-lijst li.pc-ja .pc-st{color:#2f6a22}
.pc-lijst input:disabled{cursor:default}.pm-vast .pc-lijst label{cursor:default}
.pm-contr .pc-som{margin:.75rem 0 0;color:#f3ead2;font-size:.95rem}.pm-contr .pc-som b{color:var(--gold-hi)}
.pm-contr-st{margin:.4rem 0 .2rem;color:#f0d68a;font-size:.92rem}.pm-contr-st.pc-ja{color:#9fd18a}
@media(max-width:600px){.pm-contr{padding:.75rem .65rem .85rem}.pc-lijst{grid-template-columns:1fr}.pm-contr .pc-kop{flex-direction:column;align-items:flex-start}}
@media print{.pm-contr{display:none!important}}
.pc-lijst label,.pc-lijst label span{text-shadow:none!important;-webkit-text-stroke:0!important}
.pc-lijst label .pc-naam{color:#1a1408!important}.pc-lijst label .pc-bed{color:#1a1408!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif!important}
.pc-lijst label .pc-st{color:#8a3a14!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif!important}.pc-lijst li.pc-ja label .pc-st{color:#2f6a22!important}
.pm-contr .pc-eur,.pm-contr .pc-eur input{text-shadow:none!important;color:#1a1408!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif!important}
.pc-lijst .pc-vast{display:inline-block;margin-left:.25rem;padding:0 .3rem;border:1px solid #6a5420;border-radius:3px;background:#f3d77e;color:#1a1408;font:700 .62rem/1.35 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;vertical-align:middle}
