/* ===== Snacknap UI — gedeelde designtaal (eggs/raids/max/events) ===== */

/* zachte pagina-achtergrond */
.snk-page{
    --snk-radius:18px;
    background:
        radial-gradient(900px 380px at 12% -10%, rgba(139,92,246,.08), transparent 60%),
        radial-gradient(820px 360px at 100% -4%, rgba(232,80,58,.07), transparent 55%);
}

/* ---- sprite-tegel (hergebruikt pkmnSprite-output) ---- */
.snk-tile{
    position:relative;border:1px solid #f0f1f4;border-radius:16px;padding:.65rem .35rem .9rem;text-align:center;
    background:linear-gradient(180deg,#fff, color-mix(in srgb, var(--accent,#cbd5e1) 5%, #fff));
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.snk-tile:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(16,24,40,.12);border-color:color-mix(in srgb, var(--accent,#e4e7ec) 50%, #fff);}
.snk-tile::after{content:"";position:absolute;left:50%;bottom:6px;transform:translateX(-50%);width:30px;height:4px;border-radius:99px;background:var(--accent,#cbd5e1);opacity:.55;}
/* vaste site-maten van pkmnSprite (148x85 kaart, 128px sprite, float shiny, brede overlay) scoped overschrijven */
.snk-tile > a{display:flex;flex-direction:column;align-items:center;width:100%;}
.snk-tile .card.pkmn-list-img{
    width:auto!important;min-width:0!important;height:80px!important;display:flex!important;
    align-items:center;justify-content:center;border:none!important;
    box-shadow:none!important;margin:0 0 .45rem!important;overflow:visible;
}
/* raids/max: clean witte tegel (geen type-tint) */
.tier-overview .snk-tile .card.pkmn-list-img{background:transparent!important;}
/* events: Pokémon-type-kleur als var op de tegel → hele card-gradient + streepje volgen de typing */
#event-page .snk-tile{--type:#cbd5e1;}
#event-page .snk-tile:has(.pkmn-list-img.normal){--type:#a8a878;}
#event-page .snk-tile:has(.pkmn-list-img.fire){--type:#f08030;}
#event-page .snk-tile:has(.pkmn-list-img.water){--type:#6890f0;}
#event-page .snk-tile:has(.pkmn-list-img.electric){--type:#f3c81e;}
#event-page .snk-tile:has(.pkmn-list-img.grass){--type:#78c850;}
#event-page .snk-tile:has(.pkmn-list-img.ice){--type:#7ccbcb;}
#event-page .snk-tile:has(.pkmn-list-img.fighting){--type:#c03028;}
#event-page .snk-tile:has(.pkmn-list-img.poison){--type:#a040a0;}
#event-page .snk-tile:has(.pkmn-list-img.ground){--type:#d6b34e;}
#event-page .snk-tile:has(.pkmn-list-img.flying){--type:#a890f0;}
#event-page .snk-tile:has(.pkmn-list-img.psychic){--type:#f85888;}
#event-page .snk-tile:has(.pkmn-list-img.bug){--type:#a0b020;}
#event-page .snk-tile:has(.pkmn-list-img.rock){--type:#b8a038;}
#event-page .snk-tile:has(.pkmn-list-img.ghost){--type:#705898;}
#event-page .snk-tile:has(.pkmn-list-img.dragon){--type:#7038f8;}
#event-page .snk-tile:has(.pkmn-list-img.dark){--type:#705848;}
#event-page .snk-tile:has(.pkmn-list-img.steel){--type:#9ea4c2;}
#event-page .snk-tile:has(.pkmn-list-img.fairy){--type:#ee99ac;}
/* subtiele type-gradient over de hele tegel (in lijn met eggs/raids); streepje houdt de volle type-kleur */
#event-page .snk-tile{background:linear-gradient(160deg, color-mix(in srgb, var(--type) 11%, #fff), color-mix(in srgb, var(--type) 3%, #fff));border-color:color-mix(in srgb, var(--type) 16%, #eef0f3);}
#event-page .snk-tile::after{background:var(--type);opacity:.85;}
#event-page .snk-tile:hover{border-color:color-mix(in srgb, var(--type) 38%, #fff);}
#event-page .snk-tile .card.pkmn-list-img{background:transparent!important;width:auto!important;}
/* CP-regels niet laten afbreken zodat de weather-boost-icoontjes bij de CP-waarde blijven */
#event-page .snk-tile .pkmn-cp{white-space:nowrap;}
#event-page .snk-tile .pkmn-cp img{width:11px;height:11px;}

/* event: converteer de bestaande Bootstrap sprite-rijen (row g-4) naar dezelfde
   responsive CSS-grid als eggs/raids — zonder PHP te wijzigen */
#event-page .row.g-4{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:.7rem;margin:0!important;--bs-gutter-x:0;--bs-gutter-y:0;}
/* Bootstrap zet op .row > * een margin-top (gutter) + padding; in een grid geeft dat extra rij-ruimte → reset zodat
   de verticale gap == horizontale gap (gelijke padding rondom elke tegel) */
#event-page .row.g-4 > [class*="col-"]{width:auto;max-width:none;flex:0 0 auto;padding:0!important;margin:0!important;}
@media (max-width:575px){ #event-page .row.g-4{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));} }
.snk-tile .pkmn-list-img .sprite{width:78px!important;height:78px!important;margin-top:0!important;left:auto;}
.snk-tile .pkmn-list-img .overlay{width:58px!important;height:58px!important;margin:0!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%);}
.snk-tile .pkmn-list-img .shiny{top:2px!important;right:2px!important;left:auto;float:none!important;width:16px!important;height:16px!important;}
.snk-tile .pkmn-title{font-size:.8rem;font-weight:700;color:#1d2939;line-height:1.2;margin-top:.1rem;}
.snk-tile .pkmn-title img{width:14px;height:14px;}
.snk-tile .pkmn-cp{font-size:.7rem;color:#98a2b3;line-height:1.4;margin-top:.28rem;font-variant-numeric:tabular-nums;}
.snk-tile .pkmn-cp .text{font-weight:700;font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:#b6bcc7;margin-right:.5px;}
.snk-tile .pkmn-cp strong{color:#344054;font-weight:800;}
.snk-tile .pkmn-cp .opacity-75{font-size:.94em;}
.snk-tile .pkmn-cp img{width:12px;height:12px;vertical-align:-1px;opacity:.85;}

/* ---- accent-kaart (shell + header) ---- */
.snk-card{
    border:1px solid #eaecf0;border-radius:var(--snk-radius,18px);background:#fff;
    box-shadow:0 1px 2px rgba(16,24,40,.05);overflow:hidden;position:relative;
}
.snk-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--accent,#cbd5e1);z-index:1;}
.snk-card-head{
    display:flex;align-items:center;gap:.75rem;padding:.9rem 1.15rem;
    border-bottom:1px solid #f2f4f7;
    background:linear-gradient(180deg, color-mix(in srgb, var(--accent,#cbd5e1) 10%, #fff), #fff);
}
.snk-card-title{font-weight:800;font-size:1.1rem;color:#101828;line-height:1.1;letter-spacing:-.01em;margin:0;}
.snk-card-body{padding:1rem 1.15rem 1.25rem;}

/* ---- event-pagina: win van de bestaande hoog-specifieke .card-pokemon/.card-bonus site-regels (ID > classes) ---- */
#event-page .snk-card{margin-bottom:1.5rem;}
#event-page .card-pokemon.snk-card{border:1px solid #eaecf0;border-radius:var(--snk-radius,18px);overflow:hidden;}
#event-page .card-pokemon .snk-card-head{
    background:linear-gradient(180deg, color-mix(in srgb, var(--accent,#cbd5e1) 16%, #fff), color-mix(in srgb, var(--accent,#cbd5e1) 4%, #fff));
    color:#101828;text-align:left;border-radius:0;padding:.95rem 1.2rem;
    border-bottom:1px solid color-mix(in srgb, var(--accent,#cbd5e1) 30%, #eef0f3);
}
#event-page .block-template-default .snk-card-head{background:#fbfcfd;border-bottom-color:#eef0f3;}
#event-page .card-pokemon .snk-card-title{font-size:1.18rem;font-weight:800;letter-spacing:-.01em;gap:.55rem;flex-wrap:wrap;}
/* template-badges als nette pill in de header */
#event-page .snk-card-head .badge{
    vertical-align:middle;border-radius:999px;padding:.32em .72em;font-weight:700;
    font-size:.64rem!important;letter-spacing:.05em;text-transform:uppercase;
}
/* sub-headers (segment-titels) */
#event-page .snk-subhead{
    display:flex;align-items:center;gap:.6rem;padding:.55rem .85rem;border-radius:10px;
    background:linear-gradient(180deg, color-mix(in srgb, var(--accent,#64748b) 13%, #fff), #fff);
    border:1px solid color-mix(in srgb, var(--accent,#64748b) 24%, #eef0f3);
}
#event-page .block-template-default .snk-subhead{--accent:#64748b;}
#event-page .snk-subhead-bar{width:5px;height:22px;border-radius:99px;background:var(--accent,#64748b);flex:0 0 auto;}
#event-page .snk-subhead-title{font-weight:800;font-size:1rem;color:#1d2939;letter-spacing:-.01em;}

/* inline note/callout (bv. "rare encounter") */
#event-page .snk-note{
    display:flex;align-items:center;gap:.5rem;font-weight:700;color:#7c5e10;
    background:linear-gradient(135deg, rgba(245,158,11,.14), rgba(245,158,11,.04));
    border:1px solid rgba(245,158,11,.30);border-radius:10px;padding:.6rem .85rem;
}
#event-page .snk-note-ico{font-size:1rem;line-height:1;}

/* ---- bonus-kaart: licht & opgeruimd ---- */
#event-page .card-bonus.snk-card{background:#fff!important;color:#1d2939;border:1px solid #eaecf0;border-radius:var(--snk-radius,18px);overflow:hidden;}
#event-page .card-bonus .snk-bonus-title{font-weight:800;font-size:1.3rem;color:#101828;display:flex;align-items:center;gap:.5rem;padding-bottom:.8rem;border-bottom:2px solid #eef0f3;}
#event-page .card-bonus .snk-bonus-star{font-size:1.15rem;}
#event-page .snk-bonus-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.7rem;}
#event-page .snk-bonus-item{display:flex;align-items:flex-start;gap:.7rem;padding:.7rem .85rem;border-radius:12px;background:linear-gradient(180deg,#fbfcfe,#f5f8fb);border:1px solid #eef0f3;transition:border-color .15s ease, box-shadow .15s ease;}
#event-page .snk-bonus-item:hover{border-color:#dbe3ee;box-shadow:0 4px 12px rgba(16,24,40,.06);}
#event-page .snk-bonus-ico{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:#fff;border:1px solid #e6e9ee;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px rgba(16,24,40,.05);}
#event-page .snk-bonus-ico img{width:24px;height:24px;object-fit:contain;filter:invert(1);} /* bonus-*.webp zijn wit → invert naar donker */
#event-page .snk-bonus-text{font-size:.86rem;line-height:1.4;color:#344054;font-weight:500;}
#event-page .snk-bonus-badge{float:right;margin-left:.4rem;font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#1e40af;background:#dbeafe;border-radius:999px;padding:.2em .65em;}
#event-page .snk-bonus-segment{display:flex;align-items:center;text-align:center;margin:1.2rem 0 .85rem;}
#event-page .snk-bonus-segment::before,#event-page .snk-bonus-segment::after{content:"";flex:1;height:1px;background:#e6e9ee;}
#event-page .snk-bonus-segment span{padding:0 .85rem;font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#3a5a9c;}
#event-page .snk-bonus-callout{border-radius:10px;padding:.7rem .95rem;font-size:.85rem;font-weight:500;}
#event-page .snk-bonus-callout-info{background:linear-gradient(135deg,rgba(58,90,156,.10),rgba(58,90,156,.02));border:1px solid rgba(58,90,156,.22);color:#1e3a8a;border-left:4px solid #3a5a9c;}
#event-page .snk-bonus-callout-success{background:linear-gradient(135deg,rgba(25,135,84,.10),rgba(25,135,84,.02));border:1px solid rgba(25,135,84,.22);color:#14532d;border-left:4px solid #198754;}

/* event hero */
#event-page .snk-hero{border-radius:var(--snk-radius,18px);}
/* leesbaarheids-scrim: donkerder aan de (linker) tekstkant + bodem-diepte, rechts meer beeld */
#event-page .snk-hero-overlay{background:
    linear-gradient(105deg, rgba(0,0,0,.66) 0%, rgba(0,0,0,.34) 52%, rgba(0,0,0,.12) 100%),
    linear-gradient(to top, rgba(0,0,0,.38), rgba(0,0,0,0) 46%);}
#event-page .snk-hero .card-body{position:relative;z-index:1;text-shadow:0 1px 4px rgba(0,0,0,.40);}
#event-page .snk-hero h1{font-weight:800;letter-spacing:-.02em;font-size:clamp(1.55rem,4vw,2.2rem);text-shadow:0 2px 10px rgba(0,0,0,.45);}
#event-page .snk-hero .badge{border-radius:999px;padding:.34em .8em;font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:.66rem;}
/* tag-pills + live-knop in de pill-stijl, leesbaar op de donkere hero */
/* tags = gekleurde quick-jump nav (eigen kleur per type) */
#event-page .snk-hero-tags{display:flex;flex-wrap:wrap;gap:.45rem;}
#event-page .btn-tag{
    display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;white-space:nowrap;
    background:#fff;color:color-mix(in srgb, var(--tagc,#64748b) 76%, #1a2332);
    border:1.5px solid color-mix(in srgb, var(--tagc,#64748b) 45%, #fff);
    padding:.36rem .82rem;font-weight:700;font-size:.82rem;transition:all .15s ease;
}
#event-page .btn-tag img{height:17px;width:17px;object-fit:contain;}
#event-page .btn-tag:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,0,0,.28);background:var(--tagc,#64748b);color:#fff;border-color:var(--tagc,#64748b);}
#event-page .snk-tag-live{background:#f5d673!important;color:#3a2e00!important;border-color:#e6c14e!important;}
#event-page .snk-tag-live:hover{background:#f3cf5e!important;color:#3a2e00!important;}
@media (max-width:575px){
    #event-page .snk-hero-tags{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.35rem;scrollbar-width:thin;-webkit-overflow-scrolling:touch;}
    #event-page .snk-hero-tags .btn-tag{flex:0 0 auto;}
}

/* ---- Live Event Stats: prominent "LIVE"-karakter ---- */
#event-page .snk-live-card{box-shadow:0 8px 26px rgba(212,162,32,.16),0 1px 2px rgba(16,24,40,.06);border-color:rgba(245,214,115,.75);}
#event-page .snk-live-card .snk-card-head{background:linear-gradient(180deg,rgba(245,214,115,.32),rgba(245,214,115,.08))!important;border-bottom-color:rgba(230,193,78,.55)!important;}
#event-page .snk-live-card .snk-card-title .lucide{color:#c98a00;}
#event-page .snk-live-pulse{display:none;}
#event-page .snk-live-badge{display:inline-flex;align-items:center;gap:.38rem;font-size:.66rem;font-weight:800;letter-spacing:.09em;color:#fff;background:#e23b3b;border-radius:999px;padding:.3em .72em;box-shadow:0 2px 6px rgba(226,59,59,.35);}
#event-page .snk-live-dot{width:7px;height:7px;border-radius:50%;background:#fff;animation:snkLivePulse 1.4s ease-in-out infinite;}
@keyframes snkLivePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.65)}}

/* ---- Live-stats stat-lijsten (mobiel-vriendelijk, met data-balken) ---- */
#event-page .snk-stat-title{font-weight:800;font-size:1rem;color:#101828;display:flex;align-items:center;gap:.4rem;margin-bottom:.15rem;}
#event-page .snk-stat-title .lucide{width:1.05rem;height:1.05rem;color:#3a5a9c;}
#event-page .snk-stat-title img{height:1rem;width:auto;}
#event-page .snk-stat-sub{font-size:.82rem;color:#667085;margin-bottom:.6rem;}
#event-page .snk-statlist{display:flex;flex-direction:column;border:1px solid #eef0f3;border-radius:12px;overflow:hidden;background:#fff;}
#event-page .snk-stat{position:relative;display:grid;grid-template-columns:24px 40px 1fr auto;align-items:center;gap:.6rem;padding:.5rem .75rem;border-bottom:1px solid #f3f5f8;}
#event-page .snk-stat:last-child{border-bottom:0;}
#event-page .snk-stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--barw,0%);background:linear-gradient(90deg,rgba(58,90,156,.13),rgba(58,90,156,.03));z-index:0;transition:width .6s ease;}
#event-page .snk-stat-shiny::before{background:linear-gradient(90deg,rgba(245,158,11,.18),rgba(245,158,11,.04));}
#event-page .snk-stat > *{position:relative;z-index:1;}
#event-page .snk-stat-rank{font-weight:800;font-size:.76rem;color:#98a2b3;text-align:center;}
#event-page .snk-stat-sprite{width:40px;height:40px;object-fit:contain;}
#event-page .snk-stat-main{min-width:0;}
#event-page .snk-stat-name{font-weight:700;font-size:.88rem;color:#1d2939;text-decoration:none;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#event-page .snk-stat-name:hover{color:#3a5a9c;}
#event-page .snk-stat-meta{display:flex;align-items:center;gap:.4rem;margin-top:.08rem;}
#event-page img.snk-stat-shinyicon{height:14px;width:auto;}
#event-page .snk-stat-new{font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#b91c1c;background:color-mix(in srgb,#dc2626 12%,#fff);border:1px solid color-mix(in srgb,#dc2626 26%,#fff);border-radius:999px;padding:.14em .5em;}
#event-page .snk-stat-odds{font-size:.6rem;font-weight:800;border-radius:999px;padding:.16em .55em;}
#event-page .snk-stat-odds-good{color:#15803d;background:color-mix(in srgb,#16a34a 14%,#fff);}
#event-page .snk-stat-odds-mid{color:#b45309;background:color-mix(in srgb,#d97706 16%,#fff);}
#event-page .snk-stat-odds-low{color:#b91c1c;background:color-mix(in srgb,#dc2626 13%,#fff);}
#event-page .snk-stat-val{font-weight:800;font-size:.85rem;color:#344054;font-variant-numeric:tabular-nums;white-space:nowrap;}
@media (max-width:480px){
    #event-page .snk-stat{grid-template-columns:20px 34px 1fr auto;gap:.45rem;padding:.45rem .6rem;}
    #event-page .snk-stat-sprite{width:34px;height:34px;}
    #event-page .snk-stat-name{font-size:.82rem;}
}

/* alerts & inline strips */
#event-page .alert{border-radius:12px;border:1px solid;}
#event-page .alert-warning{background:linear-gradient(135deg,rgba(245,158,11,.13),rgba(245,158,11,.03));border-color:rgba(245,158,11,.32);color:#7c5e10;}
#event-page .alert-info{background:linear-gradient(135deg,rgba(58,90,156,.10),rgba(58,90,156,.03));border-color:rgba(58,90,156,.25);color:#1e3a8a;}
/* paid-strip (Web Store) */
#event-page .card-body.bg-warning-subtle{background:linear-gradient(135deg,rgba(245,158,11,.16),rgba(245,158,11,.05))!important;border-top:1px solid rgba(245,158,11,.32)!important;}

/* ---- Lucide icon-maten (context-scoped, consistent) ---- */
#event-page .lucide{stroke-width:2.2;}
#event-page .snk-bonus-title .lucide{width:1.3rem;height:1.3rem;color:#3a5a9c;flex:0 0 auto;}
#event-page .snk-note .lucide{width:1.05rem;height:1.05rem;color:#f59e0b;flex:0 0 auto;}
#event-page .badge .lucide{width:.82em;height:.82em;vertical-align:-.12em;}
#event-page .btn .lucide{width:1.05em;height:1.05em;vertical-align:-.15em;}
#event-page .card-body .lucide{width:1.05em;height:1.05em;vertical-align:-.15em;}

/* ---- consistent spacing-systeem: gelijke padding/marges rondom ---- */
#event-page .card-pokemon .snk-card-head{padding:.95rem 1.25rem;}
#event-page .card-pokemon .card-body{padding:1.1rem 1.25rem;}
#event-page .card-bonus .snk-card-body{padding:1.25rem;}
/* geen dubbele bodem-ruimte: laatste element (grid of footer-callout) krijgt geen marge meer */
#event-page .card-bonus .snk-card-body > *:last-child{margin-bottom:0!important;}
#event-page .card-pokemon.snk-card,#event-page .card-bonus.snk-card{margin-bottom:1.5rem;}
#event-page .snk-card-body .snk-bonus-grid,#event-page .snk-card-body .snk-bonus-callout{margin-bottom:1rem;}
/* grid-card-body: gebalanceerde, gelijke padding rondom de tegels (top==bottom, zij == header) */
#event-page .card-body.card-body-grey{padding:1rem 1.25rem;}
/* consistente ruimte tussen hero en de eerste content (featured) i.p.v. losse <br><br> */
#event-page .snk-featured{margin-top:1.5rem!important;}

/* template-badges in de header: nette pill (zoals de ei-aanduidingen), rechts uitgelijnd */
#event-page .snk-tpl-badges{display:inline-flex;gap:.4rem;flex-wrap:wrap;align-items:center;}
#event-page .snk-tpl-badge{
    display:inline-flex;align-items:center;gap:.32em;border-radius:999px;padding:.34em .8em;
    font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;line-height:1;
    color:var(--b,#64748b);
    background:color-mix(in srgb, var(--b,#64748b) 13%, #fff);
    border:1px solid color-mix(in srgb, var(--b,#64748b) 32%, #fff);
}
#event-page .snk-tpl-badge .lucide{width:.85em;height:.85em;}

/* ---- hero meta (back + datums met Lucide) ---- */
#event-page .snk-hero .lucide{stroke-width:2.2;}
#event-page .snk-hero-back{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;opacity:.92;text-decoration:none;}
#event-page .snk-hero-back:hover{opacity:1;}
#event-page .snk-hero-back .lucide{width:1rem;height:1rem;}
#event-page .snk-hero-dates{display:flex;flex-direction:column;gap:.35rem;}
#event-page .snk-hero-date{display:inline-flex;align-items:center;gap:.5rem;font-size:.86rem;font-weight:600;}
#event-page .snk-hero-date .lucide{width:1.05rem;height:1.05rem;opacity:.9;flex:0 0 auto;}

/* ---- icoon in kaart-titels (featured ster, etc.) ---- */
#event-page .snk-card-title{display:inline-flex;align-items:center;gap:.5rem;}
#event-page .snk-card-title .lucide{width:1.05rem;height:1.05rem;color:var(--accent,#64748b);flex:0 0 auto;}
#event-page .snk-featured-card{margin-top:1.5rem;}

/* ---- radius-schaal consistent (10/12 → 12, kaarten 18) ---- */
#event-page .snk-note,#event-page .snk-bonus-callout,#event-page .snk-subhead{border-radius:12px;}
#event-page .snk-tile{border-radius:14px;}

/* ---- live-stats: zachte odds/badges (tinted pills) + zebra ---- */
#event-page table .badge{border-radius:999px;font-weight:700;padding:.32em .7em;}
#event-page .badge.bg-success{background:color-mix(in srgb,#16a34a 14%,#fff)!important;color:#15803d!important;border:1px solid color-mix(in srgb,#16a34a 28%,#fff);}
#event-page .badge.bg-warning{background:color-mix(in srgb,#d97706 16%,#fff)!important;color:#b45309!important;border:1px solid color-mix(in srgb,#d97706 28%,#fff);}
#event-page .badge.bg-danger{background:color-mix(in srgb,#dc2626 13%,#fff)!important;color:#b91c1c!important;border:1px solid color-mix(in srgb,#dc2626 26%,#fff);}
#event-page table.table tbody tr:nth-child(even){background:#fafbfc;}
#event-page table.table td,#event-page table.table th{vertical-align:middle;}

/* ---- block-message typografie ---- */
#event-page .snk-event-message,#event-page .card-pokemon .card-body{line-height:1.55;color:#344054;}
#event-page .card-pokemon .card-body ul,#event-page .snk-event-message ul{padding-left:1.15rem;margin-bottom:.6rem;}
#event-page .card-pokemon .card-body li,#event-page .snk-event-message li{margin-bottom:.3rem;}
#event-page .card-pokemon .card-body strong,#event-page .snk-event-message strong{color:#1d2939;}

/* ---- research timeline (stapsgewijs) ---- */
#event-page .snk-research{padding:1.1rem 1.25rem 1.25rem;}
#event-page .snk-timeline{list-style:none;margin:0;padding:0;}
#event-page .snk-step{display:grid;grid-template-columns:40px 1fr;gap:.9rem;position:relative;padding-bottom:1.15rem;}
#event-page .snk-step:last-child{padding-bottom:0;}
#event-page .snk-step:not(:last-child)::before{content:"";position:absolute;left:19px;top:44px;bottom:-2px;width:2px;background:#e6e9ee;}
#event-page .snk-step-node{width:40px;height:40px;border-radius:50%;background:#3a5a9c;color:#fff;font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;z-index:1;box-shadow:0 0 0 4px #fff,0 0 0 5px #e6e9ee;}
#event-page .snk-step-node .lucide{width:1.1rem;height:1.1rem;}
#event-page .snk-step-completion .snk-step-node{background:#16a34a;box-shadow:0 0 0 4px #fff,0 0 0 5px color-mix(in srgb,#16a34a 35%,#fff);}
#event-page .snk-step-card{background:#fff;border:1px solid #eef0f3;border-radius:14px;padding:.85rem 1rem;box-shadow:0 1px 2px rgba(16,24,40,.04);}
#event-page .snk-step-completion .snk-step-card{background:linear-gradient(135deg,rgba(22,163,74,.07),rgba(22,163,74,.02));border-color:rgba(22,163,74,.25);}
#event-page .snk-step-head{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin-bottom:.5rem;}
#event-page .snk-step-label{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#3a5a9c;background:color-mix(in srgb,#3a5a9c 12%,#fff);border:1px solid color-mix(in srgb,#3a5a9c 26%,#fff);border-radius:999px;padding:.28em .7em;}
#event-page .snk-step-completion .snk-step-label{color:#15803d;background:color-mix(in srgb,#16a34a 12%,#fff);border-color:color-mix(in srgb,#16a34a 26%,#fff);}
#event-page .snk-step-title{font-size:.96rem;font-weight:800;margin:0;color:#1d2939;}
#event-page .snk-tasks{list-style:none;margin:0;padding:0;}
#event-page .snk-task{display:grid;grid-template-columns:1.15rem 1fr auto;align-items:center;gap:.6rem;padding:.5rem 0;border-bottom:1px solid #f3f5f8;}
#event-page .snk-task:last-child{border-bottom:0;padding-bottom:0;}
#event-page .snk-task-check{width:1.1rem;height:1.1rem;color:#cbd5e1;flex:0 0 auto;stroke-width:2.2;}
#event-page .snk-task-text{font-size:.86rem;color:#344054;font-weight:600;line-height:1.35;}
#event-page .snk-task-reward{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;align-items:center;}
#event-page .snk-step-reward{margin-top:.65rem;padding-top:.65rem;border-top:1px dashed #d8dee6;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;}
#event-page .snk-step-reward-done{border-top-color:rgba(22,163,74,.35);}
#event-page .snk-step-reward-label{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#64748b;background:#f1f5f9;border-radius:999px;padding:.3em .7em;}
#event-page .snk-step-reward-done .snk-step-reward-label{color:#14532d;background:rgba(22,163,74,.16);}
#event-page .snk-step-reward-chips{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;}
/* field-research (flat) checklist */
#event-page .snk-research-flat{padding:.4rem 1.25rem 1.1rem;}
#event-page .snk-research-flat .snk-task{grid-template-columns:1.15rem 1fr;gap:.25rem .6rem;}
#event-page .snk-research-flat .snk-task-reward{grid-column:2;justify-content:flex-start;}
#event-page .snk-reward-label{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;background:#f1f5f9;border-radius:6px;padding:.2em .55em;margin-right:.15rem;}
@media (max-width:575px){
    #event-page .snk-step{grid-template-columns:32px 1fr;gap:.65rem;}
    #event-page .snk-step-node{width:32px;height:32px;font-size:.85rem;}
    #event-page .snk-step:not(:last-child)::before{left:15px;top:36px;}
    #event-page .snk-task{grid-template-columns:1.1rem 1fr;}
    #event-page .snk-task-reward{grid-column:2;justify-content:flex-start;margin-top:.2rem;}
}

/* ---- verticaal ritme: consistente dividers ---- */
#event-page hr,#event-page hr.divider{border:0;border-top:1px solid #e9edf2;opacity:1;margin:1.6rem 0;}

/* ---- hero countdown-chip ---- */
#event-page .snk-hero-countdown{display:inline-flex;align-items:center;gap:.45rem;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.30);border-radius:999px;padding:.32rem .85rem;font-size:.84rem;font-weight:700;backdrop-filter:blur(4px);}
#event-page .snk-hero-countdown .lucide{width:1rem;height:1rem;}
#event-page .snk-hero-countdown.is-live{background:rgba(245,214,115,.95);color:#3a2e00;border-color:rgba(245,214,115,.9);text-shadow:none;}
#event-page .snk-cd-label{opacity:.92;font-weight:600;}
#event-page .snk-cd-val{font-variant-numeric:tabular-nums;}

/* ---- shiny-subsectie (gouden accent) ---- */
#event-page .snk-subhead-shiny{background:linear-gradient(180deg, rgba(245,158,11,.14), #fff)!important;border-color:rgba(245,158,11,.34)!important;}
#event-page .snk-subhead-shiny .snk-subhead-bar{background:#f59e0b!important;}
#event-page .snk-subhead-shiny .snk-subhead-title{color:#92400e;display:inline-flex;align-items:center;gap:.35rem;}
#event-page .snk-subhead-shiny .snk-subhead-title .lucide{width:1rem;height:1rem;color:#f59e0b;flex:0 0 auto;}

/* ---- premium paid-callout ---- */
#event-page .snk-paid{background:linear-gradient(135deg, rgba(245,196,79,.22), rgba(245,158,11,.07))!important;border-top:1px solid rgba(245,158,11,.32)!important;}
#event-page .snk-paid-text{display:inline-flex;align-items:center;gap:.6rem;font-size:.9rem;color:#5b4406;}
#event-page .snk-paid-ico{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#f7d774,#f0a92e);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 2px 6px rgba(240,169,46,.4);}
#event-page .snk-paid-ico .lucide{width:1rem;height:1rem;}
#event-page .snk-paid-btn{background:linear-gradient(135deg,#f5c14f,#eaa320);border:none;color:#3a2e00;display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.42rem .95rem;box-shadow:0 2px 8px rgba(234,163,32,.35);transition:transform .15s ease, box-shadow .15s ease;}
#event-page .snk-paid-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(234,163,32,.45);color:#3a2e00;}
#event-page .snk-paid-btn .lucide{width:.95em;height:.95em;}

/* ---- GO Pass reward-track (Free / Deluxe) ---- */
#event-page .snk-gopass-wrap{padding:1rem 1.25rem 1.25rem;}
#event-page .snk-gopass{border:1px solid #e7ecf2;border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.04);}
#event-page .snk-gp-headrow{display:grid;grid-template-columns:56px 1fr 1fr;background:#f7f9fc;border-bottom:1px solid #e7ecf2;position:sticky;top:0;z-index:2;}
#event-page .snk-gp-headrow > *{padding:.6rem .9rem;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#667085;display:flex;align-items:center;gap:.35rem;}
#event-page .snk-gp-h-deluxe{color:#9a6b08;background:linear-gradient(180deg,rgba(245,196,79,.26),rgba(245,196,79,.10));}
#event-page .snk-gp-h-deluxe .lucide{width:.95rem;height:.95rem;color:#eaa320;}
#event-page .snk-gp-rank{display:grid;grid-template-columns:56px 1fr 1fr;align-items:center;border-bottom:1px solid #f1f4f7;}
#event-page .snk-gp-rank:last-child{border-bottom:0;}
#event-page .snk-gopass .snk-gp-rank:nth-child(odd){background:#fcfdfe;}
#event-page .snk-gp-node{justify-self:center;min-width:30px;height:30px;padding:0 .35rem;border-radius:999px;background:#eef2f7;color:#475467;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.8rem;}
#event-page .snk-gp-rank:nth-child(odd) .snk-gp-node{background:#fff;border:1px solid #e7ecf2;}
#event-page .snk-gp-cell{display:flex;align-items:center;gap:.45rem;padding:.5rem .9rem;min-height:54px;}
#event-page .snk-gp-cell .snk-gp-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;}
#event-page .snk-gp-deluxe{background:linear-gradient(180deg,rgba(245,196,79,.12),rgba(245,196,79,.045));border-left:1px solid rgba(245,158,11,.20);}
#event-page .snk-gp-tier-label{display:none;}
#event-page .snk-gp-empty{color:#cdd5df;font-weight:700;font-size:1.1rem;line-height:1;}
/* GO Pass-cellen mogen iets grotere chips tonen voor presence */
#event-page .snk-gp-cell .reward-chip{padding:4px 11px 4px 4px;}
#event-page .snk-gp-cell .reward-chip .reward-chip-iconwrap{width:30px;height:30px;}
@media (max-width:640px){
    #event-page .snk-gopass-wrap{padding:.85rem 1rem 1rem;}
    #event-page .snk-gp-headrow{display:none;}
    #event-page .snk-gp-rank{display:block;position:relative;padding:.55rem .8rem .65rem 3rem;border-bottom:1px solid #eef0f3;}
    #event-page .snk-gopass .snk-gp-rank:nth-child(odd){background:#fff;}
    #event-page .snk-gp-node{position:absolute;left:.55rem;top:.6rem;}
    #event-page .snk-gp-cell{padding:.2rem 0;min-height:0;}
    #event-page .snk-gp-deluxe{border-left:0;background:transparent;border-top:1px dashed #eaeef3;margin-top:.3rem;padding-top:.45rem;}
    #event-page .snk-gp-tier-label{display:inline-block;font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#9aa6b8;margin-right:.45rem;min-width:46px;}
    #event-page .snk-gp-deluxe .snk-gp-tier-label{color:#9a6b08;}
}

/* ---- About/info-panel (beschrijvend, bewust géén event-blok-look) ---- */
#event-page .snk-about{display:flex;gap:1rem;align-items:flex-start;background:linear-gradient(180deg,#f6f9fc,#fbfcfe);border:1px solid #e9edf2;border-radius:var(--snk-radius,18px);padding:1.25rem 1.4rem;color:#475467;line-height:1.6;}
#event-page .snk-about-icon{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid #e3e8ef;display:flex;align-items:center;justify-content:center;color:#7c8aa0;box-shadow:0 1px 2px rgba(16,24,40,.04);}
#event-page .snk-about-icon .lucide{width:1.2rem;height:1.2rem;}
#event-page .snk-about-label{font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#9aa6b8;}
#event-page .snk-about-title{font-size:1.05rem;font-weight:800;color:#344054;margin:.1rem 0 .5rem;}
#event-page .snk-about-body{font-size:.92rem;}

/* ---- micro-interactie: highlight het doelblok na klik op een tag-pill ---- */
#event-page .snk-card#anchor-bonuses:target,
#event-page [id^="block-"]:target > .snk-card{animation:snkTargetFlash 1.5s ease;}
@keyframes snkTargetFlash{0%,100%{box-shadow:0 1px 2px rgba(16,24,40,.05);}22%{box-shadow:0 0 0 3px rgba(58,90,156,.5),0 8px 22px rgba(58,90,156,.18);}}

/* ---- mobiel ---- */
@media (max-width:575px){
    #event-page .snk-hero h1{font-size:1.4rem;}
    #event-page .snk-tile .pkmn-title{font-size:.74rem;}
    #event-page .snk-tile .pkmn-cp{font-size:.65rem;}
    #event-page .snk-bonus-grid{grid-template-columns:1fr;}
    #event-page .card-pokemon .snk-card-head{flex-wrap:wrap;gap:.5rem;}
    #event-page .snk-tpl-badges{margin-left:0!important;}
    #event-page .card-body.card-body-grey{padding:.85rem 1rem;}
}
