/* ============================================================
   publiek/pakmomenten.css - "In this walkthrough" bovenaan het
   tabje Collectibles: de pakmomenten uit de video, per hoofdstuk.
   Hoort bij templates/public/delen/_pakmomenten.html. De rij
   tabjes zelf staat in hoofdstukken.css, de losse filmpjes
   ("More clips") in prestaties.css.
   ============================================================ */

.pm { margin-bottom: 6px; }

.pm-titel { margin: 0 0 4px; font-size: 16px; }
.pm-titel span { margin-left: 8px; font-size: 13px; font-weight: 400; color: var(--tekst-zacht); }
.pm-meer-titel { margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--rand); }

.pm-bol {
    display: inline-block;
    flex: none;
    width: 9px;
    height: 9px;
    margin-right: 7px;
    border-radius: 50%;
    vertical-align: middle;
}

/* de knoppen om een soort te kiezen (alleen met script) */
.pm-soorten { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 12px; }
.pm-soorten[hidden] { display: none; }
.pm-soort {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border: 1px solid var(--rand);
    border-radius: 999px;
    background: var(--vlak-diep);
    color: var(--tekst);
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}
.pm-soort span { margin-left: 5px; font-weight: 400; color: var(--tekst-zacht); }
.pm-soort:hover { border-color: var(--rand-neon); }
.pm-soort.aan { background: var(--paars); border-color: var(--paars); }
.pm-soort.aan span { color: #e9e3ff; }
.pm-soort:focus-visible { outline: 2px solid var(--paars-licht); outline-offset: 2px; }

/* per wereld of per hoofdstuk (alleen met script en als er werelden zijn) */
.pm-weergave { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 8px; }
.pm-weergave[hidden] { display: none; }
.pm-blok-jiggy {
    padding: 1px 8px;
    border-radius: 6px;
    background: rgba(250, 204, 21, .15);
    color: #fde68a;
    font-size: 12px;
    font-weight: 400;
}
/* gepakt bij een later bezoek aan die wereld */
.pm-moment.later { border-color: #f59e0b; }
.pm-later { margin-left: 6px; font-size: 11px; font-style: normal; color: #fbbf24; }

/* de lijst met blokken: na 2 blokken scrollbaar (de hoogte zet speler.js) */
.pm-scroll { position: relative; overflow-y: auto; overscroll-behavior: contain; scrollbar-color: var(--rand-neon) transparent; }
.pm-scroll.vol { padding-right: 6px; border-bottom: 1px solid var(--rand); }

/* een blok per hoofdstuk */

.pm-blok {
    margin-bottom: 8px;
    padding: 8px 14px 2px;
    border: 1px solid var(--rand);
    border-radius: var(--rond-klein);
    background: #0e1338;
}
.pm-blok[hidden] { display: none; }
.pm-blok-kop { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 6px; font-size: 15px; }
.pm-blok-tijd {
    padding: 1px 7px;
    border-radius: 6px;
    background: var(--vlak-hoog);
    font-size: 12px;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
}
.pm-blok-aantal { font-size: 12px; font-weight: 400; color: var(--tekst-zacht); }

/* een rij per soort: links de soort, rechts de knopjes */
.pm-rij {
    display: grid;
    grid-template-columns: minmax(130px, 170px) minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 4px 0;
    border-top: 1px solid rgba(35, 40, 95, .6);
}
.pm-rij[hidden] { display: none; }
.pm-rij-naam { display: flex; align-items: center; padding-top: 2px; font-size: 14px; font-weight: 700; }
.pm-rij-naam small { margin-left: 6px; font-size: 12px; font-weight: 400; color: var(--tekst-zacht); }
.pm-lijst { display: flex; flex-wrap: wrap; gap: 4px; margin: 0; padding: 0; list-style: none; }

.pm-moment {
    display: inline-flex;
    align-items: center;
    padding: 2px 9px;
    border: 1px solid var(--rand);
    border-radius: 7px;
    background: var(--vlak-diep);
    color: var(--tekst);
    font-size: 13px;
    text-decoration: none;
    white-space: nowrap;
    transition: border-color .15s, background .15s;
}
.pm-moment:hover { border-color: var(--rand-neon); background: var(--vlak-hoog); }
.pm-moment:focus-visible { outline: 2px solid var(--paars-licht); outline-offset: 2px; }
.pm-moment.nu { border-color: var(--groen); box-shadow: 0 0 0 1px var(--groen) inset; }
.pm-tijd { margin-left: 6px; color: var(--paars-licht); font-variant-numeric: tabular-nums; }

.pm-leeg { margin: 0 0 6px; font-size: 13px; color: var(--tekst-zacht); }

@media (max-width: 640px) {
    .pm-rij { grid-template-columns: 1fr; gap: 6px; }
    .pm-rij-naam { padding-top: 0; }
    .pm-blok { padding: 10px 10px 4px; }
}

/* (9 oktober 2026) kiezen: dropmenu's World en Kong, met de pillen eronder
   (speler.js maakt ze; zonder script staat alles open) */
.pm-filter { margin: 4px 0 12px; }
.pm-menus { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 10px; }
.pm-menus[hidden], .pm-soorten[hidden] { display: none; }
.pm-kies { position: relative; }
.pm-kies > button {
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    min-width: 180px; padding: 7px 14px;
    border: 1px solid var(--rand); border-radius: 12px;
    background: var(--vlak-diep); color: var(--tekst);
    font: inherit; text-align: left; cursor: pointer;
}
.pm-kies > button small { display: block; font-size: 11px; line-height: 1.1; color: var(--tekst-zacht); }
.pm-kies > button b { display: block; font-size: 14px; }
.pm-kies > button:hover, .pm-kies.open > button { border-color: var(--rand-neon); }
.pm-kies > button:focus-visible { outline: 2px solid var(--paars-licht); outline-offset: 2px; }
.pm-pijl { color: var(--tekst-zacht); }
.pm-kies-lijst {
    display: none; position: absolute; top: calc(100% + 6px); left: 0; z-index: 20;
    min-width: 240px; max-height: 320px; overflow-y: auto; padding: 6px;
    border: 1px solid var(--rand); border-radius: 12px; background: #0f1530;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .6);
}
.pm-kies.open .pm-kies-lijst { display: block; }
.pm-kies-lijst button {
    display: flex; align-items: center; gap: 6px; width: 100%;
    padding: 8px 10px; border: 0; border-radius: 8px;
    background: none; color: var(--tekst); font: inherit; font-size: 14px;
    text-align: left; cursor: pointer;
}
.pm-kies-lijst button:hover { background: #1a2350; }
.pm-kies-lijst button.aan { background: #2a1f5c; }
.pm-kies-lijst button:disabled { opacity: .4; cursor: default; }
.pm-n { margin-left: auto; padding-left: 12px; font-size: 13px; color: var(--tekst-zacht); }
.pm-soort:disabled { opacity: .35; cursor: default; }
.pm-moment-li[hidden], .pm-lijst li[hidden], .pm-rij[hidden] { display: none; }
@media (max-width: 640px) { .pm-kies, .pm-kies > button { width: 100%; } }

/* (10 okt 2026) "ep 3" bij een pakmoment in de lijst van de hele playlist */
.pm-ep {
    color: #a78bfa;
    font-size: .8em;
    margin-left: .45em;
    padding: 1px 6px;
    border-radius: 999px;
    background: rgba(167, 139, 250, .14);
}
.pm-ep + .pm-tijd {
    margin-left: .35em;
}

/* (11 okt 2026) de maker van een Collectibles guide bij een pakmoment */
.pm-bron {
    color: #86efac;
    font-size: .8em;
    margin-left: .45em;
    padding: 1px 6px;
    border-radius: 999px;
    background: rgba(34, 197, 94, .14);
}

/* (11 okt 2026) delen: eerst deze walkthrough, dan de guides */
.pm-deel{margin:1.4rem 0 .4rem;font-size:1.05rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:.3rem}
.pm-scroll > .pm-deel:first-child{margin-top:0}
.pm-deel-maker{margin:.6rem 0 .3rem;font-weight:600;color:#86efac}

/* (11 okt 2026) de maker onder de knop als die soort uit een ander filmpje komt */
.pm-soort.met-bron { flex-direction: column; align-items: flex-start; border-radius: 14px; padding: 5px 12px; }
.pm-soort-kop { display: flex; align-items: center; }
.pm-soort-bron { font-size: 11px; font-weight: 600; color: #86efac; line-height: 1.2; }
.pm-soort.aan .pm-soort-bron { color: #d1fae5; }

/* (19 okt 2026) soorten die het spel heeft maar die er nog niet in staan */
.pm-mist { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 10px; }
.pm-soort-mist { flex-direction: column; align-items: flex-start; border-radius: 14px; padding: 5px 12px;
    border-style: dashed; background: transparent; opacity: .8; cursor: default; }
.pm-soort-mist:hover { border-color: var(--rand); }
.pm-soort-mist-tekst { font-size: 11px; font-weight: 600; color: #fb923c; line-height: 1.2; }
