/* Die Party Mauer 1.1.19: Foto van de week, gold challenge stamps, Stammgast, teller/ranglijst, recap, seintjes. Mobile-first. */
.pm-potw,.pm-gstamp,.pm-league{--pm-red:#c8102e;--pm-red2:#e8323a;--pm-gold:#c9a35a;--pm-gold2:#ecd39a;--pm-char:#16161a;--pm-line:rgba(255,255,255,.09);--pm-muted:#a39f98;--pm-g:linear-gradient(100deg,#8c6a2f 0%,#e9cf93 28%,#c9a35a 50%,#f6e3b4 72%,#9a7535 100%)}
/* Foto van de week */
.pm-potw{display:grid;gap:0;background:var(--pm-char);border:1px solid rgba(201,163,90,.45);border-radius:6px;overflow:hidden;margin:0 0 48px;position:relative}
.pm-potw::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--pm-g);z-index:3}
.pm-potw__pic{position:relative;display:block;aspect-ratio:4/5;max-height:72vh;background:#000;overflow:hidden}
.pm-potw__pic img{width:100%;height:100%;object-fit:cover;display:block}
.pm-potw__badge{position:absolute;left:12px;top:16px;display:inline-flex;align-items:center;gap:8px;background:var(--pm-g);color:#0b0b0c;font:800 12px/1 var(--f-body,system-ui);letter-spacing:.16em;text-transform:uppercase;padding:9px 12px 9px 9px;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.45)}
.pm-potw__badge b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#0b0b0c;color:var(--pm-gold2);font-size:13px}
.pm-potw__pic .pm-gstamp{right:12px;bottom:12px;top:auto}
.pm-potw__txt{padding:20px 20px 24px}
.pm-potw__txt .pm-h2{margin:0 0 10px}
.pm-potw__cap{font-size:20px;line-height:1.35;margin:0 0 8px;color:#f3efe6}
.pm-potw__meta{color:var(--pm-muted);margin:0 0 14px;font-size:14px}
.pm-potw__n{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.pm-potw__n span{border:1px solid rgba(201,163,90,.45);border-radius:999px;padding:8px 12px;font-weight:700;font-size:14px;color:var(--pm-gold2)}
.pm-potw__n span b{font-size:18px;color:#fff}
.pm-potw .btn{margin:0}
.pm-potw--home{margin:0 0 clamp(24px,3vw,40px)}
.pm-potw--home .pm-potw__txt .pm-h2{font-family:var(--f-display);font-weight:400;text-transform:uppercase;font-size:clamp(32px,8vw,54px);line-height:1.02}
.pm-potw--home .pm-eyebrow{display:block;font:800 12px/1 var(--f-body);letter-spacing:.2em;text-transform:uppercase;color:var(--pm-gold);margin-bottom:12px}
@media (min-width:760px){.pm-potw{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}.pm-potw__pic{aspect-ratio:auto;height:100%;min-height:420px;max-height:620px}.pm-potw__txt{padding:36px}}
/* Ribbon on the card itself */
.pm-potw-rib{position:absolute;left:10px;bottom:10px;z-index:2;background:var(--pm-g,#c9a35a);color:#0b0b0c;font:800 10px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;padding:6px 9px;border-radius:999px}
/* Gold challenge stamp */
.pm-gstamp{position:absolute;right:10px;top:10px;z-index:2;width:86px;height:86px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1px;padding:8px;transform:rotate(-12deg);
  background:radial-gradient(circle at 35% 30%,#f6e3b4 0%,#d9b66c 38%,#a88140 72%,#7a5a26 100%);color:#2a1d07;
  box-shadow:0 0 0 2px rgba(0,0,0,.35),inset 0 0 0 3px rgba(255,248,224,.55),inset 0 0 0 5px rgba(122,90,38,.55),0 8px 18px rgba(0,0,0,.5);pointer-events:auto}
.pm-gstamp::after{content:"";position:absolute;inset:7px;border-radius:50%;border:1px dashed rgba(42,29,7,.45)}
.pm-gstamp__em{font-size:20px;line-height:1}
.pm-gstamp__t{font:400 12px/1 var(--f-display,Impact,sans-serif);text-transform:uppercase;letter-spacing:.02em;max-width:68px;overflow-wrap:anywhere}
.pm-gstamp__s{font:800 6.5px/1 var(--f-body,system-ui);letter-spacing:.14em;text-transform:uppercase;opacity:.8}
.pm-post .pm-gstamp{width:76px;height:76px}.pm-post .pm-gstamp__t{font-size:11px}
/* the challenge tag sits left, the stamp right: keep the tag narrower */
.pm-post__media .pm-tag{max-width:calc(100% - 110px)}
/* Stammgast */
.pm-stammgast{position:absolute;right:10px;bottom:10px;z-index:2;background:rgba(9,9,10,.82);border:1px solid var(--pm-gold,#c9a35a);color:var(--pm-gold2,#ecd39a);font:800 10px/1 var(--f-body);letter-spacing:.1em;text-transform:uppercase;padding:6px 9px;border-radius:999px}
.pm-post__media:has(video) .pm-stammgast{bottom:48px}
/* Counters + friendly ranking */
.pm-counter{display:inline-block;margin:6px 0 4px;padding:8px 12px;border:1px solid rgba(201,163,90,.4);border-radius:999px;background:rgba(201,163,90,.08);color:#f3efe6;font-size:14px}
.pm-counter b{color:var(--pm-gold2,#ecd39a)}
.pm-league{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:10px;max-width:820px}
.pm-league li{position:relative;display:grid;grid-template-columns:44px 1fr;align-items:center;gap:12px;background:var(--pm-char);border:1px solid var(--pm-line);border-radius:4px;padding:12px 14px 18px;overflow:hidden}
.pm-league li:first-child{border-color:rgba(201,163,90,.6)}
.pm-league__pos{font:400 26px/1 var(--f-display);text-align:center;color:var(--pm-gold2)}
.pm-league__t{text-decoration:none;color:inherit;min-width:0}
.pm-league__t b{display:block;font:400 22px/1.1 var(--f-display);text-transform:uppercase}
.pm-league__t span{color:var(--pm-muted);font-size:14px}
.pm-league__bar{position:absolute;left:14px;right:14px;bottom:7px;height:4px;border-radius:4px;background:rgba(255,255,255,.06)}
.pm-league__bar i{display:block;height:100%;width:var(--w);border-radius:4px;background:linear-gradient(90deg,var(--pm-red),var(--pm-gold))}
/* Recap */
.pm-recap-stats{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:760px}
.pm-recap-stats li{background:var(--pm-char);border:1px solid var(--pm-line);border-top:3px solid var(--pm-gold);border-radius:4px;padding:12px 14px}
.pm-recap-stats b{display:block;font:400 34px/1 var(--f-display);color:#fff}
.pm-recap-stats span{color:var(--pm-muted);font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.pm-recap-top{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:18px}
.pm-recap-top li{position:relative}
.pm-recap-top__pos{position:absolute;left:-6px;top:-10px;z-index:4;min-width:44px;height:44px;padding:0 8px;display:grid;place-items:center;border-radius:999px;background:var(--pm-red);color:#fff;font:400 20px/1 var(--f-display);box-shadow:0 4px 14px rgba(0,0,0,.5)}
.pm-recap-top li.is-first .pm-recap-top__pos{background:var(--pm-g);color:#0b0b0c}
.pm-recap-stamps{display:flex;flex-wrap:wrap;gap:18px;padding:10px 4px}
.pm-recap-stamps .pm-gstamp{position:relative;right:auto;top:auto}
.pm-recap-stamps .pm-gstamp:nth-child(even){transform:rotate(8deg)}
.pm-recap-share{display:grid;gap:14px}
.pm-recap-book{border-color:rgba(201,163,90,.45)!important}
@media (min-width:640px){.pm-recap-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}
@media (min-width:700px){.pm-recap-top{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-recap-share{grid-template-columns:1.4fr 1fr}}
@media (min-width:1040px){.pm-recap-top{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-recap-top li.is-first{grid-column:span 2;grid-row:span 2}}
/* Upload: notify */
.pm-notify{margin:18px 0 6px;padding:14px;border:1px dashed rgba(201,163,90,.45);border-radius:6px;background:rgba(201,163,90,.05)}
.pm-notify .pm-switch{margin:0}
.pm-notify__more{margin-top:10px}
.pm-notify__more input[type=email]{width:100%}
.pm-notify__c{margin:8px 0 0;line-height:1.5}
.pm-done-n{margin:0 0 14px}
/* Seintje page */
.pm-seintje form{display:grid;justify-items:center;gap:12px}
.pm-seintje .pm-h2{font-size:clamp(28px,7vw,44px)}
@media (prefers-reduced-motion:reduce){.pm-gstamp{transform:none}}
.pm input[type=email]{width:100%;background:var(--pm-ink,#0f0f11);color:var(--c-text,#f4efe6);border:1px solid rgba(255,255,255,.18);border-radius:4px;padding:14px;font-size:16px;font-family:var(--f-body)}
.pm-recap-top .pm-post__media .pm-tag{left:48px;max-width:calc(100% - 150px)}
