/* 📅 This week in Pokébot (2026-11-04): /events and the home page's "Next up" strip. Times are filled in the visitor's zone by /js/events.js. */
.k-raid { --kc:#ff5d5d; } .k-cup { --kc:#ffc94d; } .k-set { --kc:#a878ff; } .k-war { --kc:#ff5ea2; } .k-festival { --kc:#3ee0d0; } .k-reset { --kc:#5effa6; } .k-other { --kc:#a99bcf; }

/* ── the home strip ── */
.nextup { margin-top:26px; margin-bottom:34px; }
.nu-head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:10px; }
.nu-head a { font-size:.86rem; font-weight:600; color:var(--violet); text-decoration:none; } .nu-head a:hover { text-decoration:underline; }
.nu-row { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; }
.nu { display:grid; grid-template-columns:auto minmax(0, 1fr); grid-template-rows:auto auto; gap:2px 12px; align-items:center; padding:14px 16px; text-decoration:none; color:inherit; transition:transform .25s var(--ease); }
.nu:hover { transform:translateY(-2px); }
.nu-ic { grid-row:1 / span 2; width:46px; height:46px; display:grid; place-items:center; border-radius:50%; font-size:1.4rem; line-height:1; background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--kc) 38%, transparent), color-mix(in srgb, var(--kc) 10%, transparent)); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--kc) 45%, transparent); }
.nu-body { display:grid; min-width:0; }
.nu-body b { font-weight:800; font-size:.95rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nu-body time { font-size:.76rem; color:var(--muted); }
.nu-cd { grid-column:2; font-family:var(--font-d); font-weight:700; font-size:1.05rem; color:var(--gold); font-variant-numeric:tabular-nums; }
.nu.on .nu-cd { color:var(--green); }

/* ── /events ── */
.ev-chips { margin:4px 0 6px; }
.dot-live { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 10px var(--green); margin-right:4px; vertical-align:1px; animation:evpulse 1.6s ease-in-out infinite; }
@keyframes evpulse { 50% { opacity:.35; } }
.ev-list { list-style:none; display:grid; gap:8px; }
.ev { display:grid; grid-template-columns:44px minmax(0, 1fr) auto; gap:12px; align-items:center; padding:12px 16px 12px 12px; border-radius:var(--r-md); background:rgba(255,255,255,.03); box-shadow:inset 0 0 0 1px var(--line); }
.ev.on { background:color-mix(in srgb, var(--kc) 9%, rgba(255,255,255,.03)); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--kc) 45%, transparent); }
.ev-ic { width:44px; height:44px; display:grid; place-items:center; border-radius:50%; font-size:1.35rem; line-height:1; background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--kc) 38%, transparent), color-mix(in srgb, var(--kc) 10%, transparent)); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--kc) 45%, transparent); }
.ev-body { display:grid; gap:2px; min-width:0; }
.ev-body b { font-weight:800; font-size:.98rem; } .ev-body b a { color:inherit; text-decoration:none; } .ev-body b a:hover { color:var(--violet); }
.ev-body small { font-size:.82rem; color:var(--muted); line-height:1.45; }
.ev-where { font-size:.74rem; color:var(--dim); }
.ev-when { display:grid; justify-items:end; gap:2px; text-align:right; }
.ev-when time { font-family:var(--font-d); font-weight:700; font-size:.92rem; white-space:nowrap; font-variant-numeric:tabular-nums; }
.ev-cd { font-size:.76rem; color:var(--gold); white-space:nowrap; font-variant-numeric:tabular-nums; }
.ev.on .ev-cd { color:var(--green); }
.ev-day + .ev-day { margin-top:22px; }
.ev-day h3 { font-family:var(--font-d); font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin-bottom:10px; }
.ev-day h3 small { margin-left:8px; letter-spacing:0; text-transform:none; color:var(--dim); font-family:var(--font-b); font-weight:500; }
.ev-rules { list-style:none; display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:10px; }
.ev-rules li { display:grid; grid-template-columns:30px minmax(0, 1fr); gap:10px; padding:12px 14px; border-radius:var(--r-md); background:rgba(255,255,255,.03); box-shadow:inset 0 0 0 1px var(--line); font-size:.88rem; color:var(--muted); line-height:1.5; }
.ev-rules li > span { font-size:1.3rem; line-height:1.2; } .ev-rules b { color:var(--text); }
.ev-quiet { margin-top:0; }
.ev-hidden { display:none !important; }

@media (max-width:860px) { .nu-row { grid-template-columns:1fr; } }
@media (max-width:560px) {
  .ev { grid-template-columns:34px minmax(0, 1fr); padding:12px; }
  .ev-ic { width:34px; height:34px; font-size:1.05rem; align-self:start; }
  .ev-when { grid-column:2; display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 10px; text-align:left; min-width:0; }
  .ev-when time { white-space:normal; }
}
