/* Truck Events Calendar — page styles. Theme tokens. */

@font-face { font-family:"Barlow Cond Fallback"; src:local("Arial Narrow"),local("Roboto Condensed"),local("Arial"); size-adjust:90%; ascent-override:88%; descent-override:20%; line-gap-override:0%; }
@font-face { font-family:"Inter Fallback"; src:local("Arial"); ascent-override:90.44%; descent-override:22.52%; line-gap-override:0%; size-adjust:107.12%; }
.ev-page { font-family:"Inter","Inter Fallback",system-ui,sans-serif; display:block; }
.ev-page .t-display, .ev-page .t-h2, .ev-month__h, .ev-card__name { font-family:"Barlow Condensed","Barlow Cond Fallback",system-ui,sans-serif; }

/* Filter */
.ev-filter { display:flex; flex-wrap:wrap; gap:.5rem; }
.ev-fchip { font-size:.85rem; font-weight:600; padding:.45rem .9rem; border-radius:999px; border:1px solid var(--color-line-strong); background:var(--color-bg); color:var(--color-ink); cursor:pointer; transition:border-color .12s ease, background .12s ease, color .12s ease; }
.ev-fchip:hover { border-color:var(--fchip,var(--color-amber-500)); }
.ev-fchip.is-active { background:var(--fchip,var(--color-ink)); border-color:var(--fchip,var(--color-ink)); color:#fff; }
.ev-fchip--up { color:var(--color-amber-700); border-color:var(--color-amber-300); }
.ev-fchip--up.is-on { background:var(--color-amber-500); border-color:var(--color-amber-500); color:var(--color-ink-on-amber,#3a2a00); }

/* Calendar */
.ev-month { margin-bottom:2.2rem; }
.ev-month__h { font-weight:800; font-size:1.6rem; color:var(--color-ink); padding-bottom:.5rem; border-bottom:2px solid var(--color-line); margin-bottom:1.1rem; }
.ev-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
@media (min-width:640px){ .ev-grid { grid-template-columns:1fr 1fr; } }
@media (min-width:1040px){ .ev-grid { grid-template-columns:repeat(3,1fr); } }

.ev-card { display:flex; flex-direction:column; gap:.35rem; border:1px solid var(--color-line); border-left:4px solid var(--ev-accent,var(--color-line-strong)); border-radius:12px; background:var(--color-bg-elevated); padding:1.1rem 1.25rem; }
.ev-card__top { display:flex; align-items:center; justify-content:space-between; gap:.6rem; }
.ev-card__type { font-size:.64rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#fff; background:var(--ev-accent,var(--color-ink)); padding:.16rem .5rem; border-radius:999px; }
.ev-card__when { font-family:"JetBrains Mono",monospace; font-size:.74rem; color:var(--color-ink-2); text-align:right; }
.ev-card__name { font-weight:800; font-size:1.35rem; line-height:1.08; color:var(--color-ink); }
.ev-card__where { font-size:.82rem; font-weight:600; color:var(--ev-accent,var(--color-ink-2)); }
.ev-card__sum { font-size:.88rem; color:var(--color-ink-2); line-height:1.5; flex:1; }
.ev-card__link { align-self:flex-start; margin-top:.3rem; font-size:.82rem; font-weight:600; color:var(--color-amber-700); text-decoration:none; border:1px solid var(--color-line); border-radius:999px; padding:.3rem .7rem; transition:border-color .12s ease; }
.ev-card__link:hover { border-color:var(--color-amber-500); }

.ev-empty { color:var(--color-ink-2); margin-top:.5rem; }
.ev-reset { background:none; border:0; padding:0; font:inherit; color:var(--color-amber-700); cursor:pointer; text-decoration:underline; }
.ev-disclaimer { font-size:.78rem; color:var(--color-ink-muted); margin-top:1.4rem; line-height:1.55; max-width:74ch; }

/* Next + FAQ */
.ev-next { display:grid; grid-template-columns:1fr; gap:.9rem; }
@media (min-width:640px){ .ev-next { grid-template-columns:repeat(3,1fr); } }
.ev-next__card { display:flex; flex-direction:column; gap:.3rem; border:1px solid var(--color-line); border-radius:12px; background:var(--color-bg-elevated); padding:1rem 1.15rem; text-decoration:none; transition:border-color .12s ease, transform .12s ease; }
.ev-next__card:hover { border-color:var(--color-amber-500); transform:translateY(-2px); }
.ev-next__name { font-family:"Barlow Condensed",sans-serif; font-weight:700; font-size:1.2rem; color:var(--color-ink); }
.ev-next__desc { font-size:.85rem; color:var(--color-ink-2); line-height:1.45; }

.ev-faq { display:grid; gap:.2rem; max-width:48rem; }
.ev-faq__item { border-bottom:1px solid var(--color-line); padding:.3rem 0; }
.ev-faq__item summary { cursor:pointer; font-weight:600; font-size:1.02rem; padding:.85rem 0; list-style:none; display:flex; justify-content:space-between; gap:1rem; color:var(--color-ink); }
.ev-faq__item summary::-webkit-details-marker { display:none; }
.ev-faq__item summary::after { content:"+"; color:var(--color-ink-muted); font-weight:400; }
.ev-faq__item[open] summary::after { content:"−"; }
.ev-faq__item p { margin:0 0 .9rem; line-height:1.6; max-width:62ch; }
