/* ===== Events page ===== */
.events-page{max-width:var(--content-wide);margin:0 auto;padding:clamp(var(--sp-12),6vw,var(--sp-24)) var(--sp-6)}

/* Toolbar */
.events-toolbar{
  display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:center;
  padding:var(--sp-4);background:var(--color-surface);border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);margin-bottom:var(--sp-6);
}
.events-search{flex:1 1 240px;min-width:200px}
.events-search input[type="search"]{
  width:100%;padding:var(--sp-2) var(--sp-3);
  background:var(--color-surface-2);border:1px solid var(--color-divider);
  border-radius:var(--radius-md);color:var(--color-text);
  font-family:var(--font-body);font-size:var(--text-sm);
  transition:border-color .15s ease;
}
.events-search input[type="search"]:focus{outline:none;border-color:var(--color-accent)}
.events-filter-group{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}
.events-filter-label{
  font-size:var(--text-xs);font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;color:var(--color-text-faint);
}
.events-pill{
  font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;
  padding:var(--sp-2) var(--sp-3);
  background:transparent;border:1px solid var(--color-divider);
  border-radius:var(--radius-full);color:var(--color-text-muted);
  cursor:pointer;transition:all .15s ease;
}
.events-pill:hover{color:var(--color-text);border-color:var(--color-border)}
.events-pill.is-active{
  background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inv);
}
.events-toggle{
  display:inline-flex;align-items:center;gap:var(--sp-2);
  font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;
}
.events-toggle input[type="checkbox"]{accent-color:var(--color-accent)}
.events-export-group{margin-left:auto}
.events-btn{
  font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;
  padding:var(--sp-2) var(--sp-4);
  background:var(--color-surface-2);border:1px solid var(--color-divider);
  border-radius:var(--radius-full);color:var(--color-text);cursor:pointer;
  transition:all .15s ease;
}
.events-btn:hover{background:var(--color-accent);color:var(--color-text-inv);border-color:var(--color-accent)}
select#events-month-select{
  font-family:var(--font-body);font-size:var(--text-sm);
  padding:var(--sp-2) var(--sp-3);
  background:var(--color-surface-2);border:1px solid var(--color-divider);
  border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;
}

/* Meta */
.events-meta{margin-bottom:var(--sp-4);font-size:var(--text-xs);color:var(--color-text-faint);letter-spacing:.04em}
.events-counter span[id]{font-weight:700;color:var(--color-text)}

/* Table */
.events-table-wrap{overflow-x:auto;border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--color-surface)}
.events-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);min-width:880px}
.events-table thead th{
  text-align:left;padding:var(--sp-3) var(--sp-4);
  background:var(--color-surface-2);border-bottom:1px solid var(--color-divider);
  font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint);
  white-space:nowrap;
}
.events-table tbody td{
  padding:var(--sp-3) var(--sp-4);
  border-bottom:1px solid var(--color-divider);
  color:var(--color-text-muted);vertical-align:top;line-height:1.5;
}
.events-table tbody tr:last-child td{border-bottom:none}
.events-table tbody tr:hover td{background:var(--color-surface-2)}
.events-table .col-date{font-variant-numeric:tabular-nums;color:var(--color-text);white-space:nowrap;min-width:96px;width:96px}
.events-table .col-name a{color:var(--color-text);text-decoration:none;font-weight:600;border-bottom:1px solid transparent;transition:border-color .15s}
.events-table .col-name a:hover{border-bottom-color:var(--color-accent)}
.events-table .col-organizer{color:var(--color-text-faint);font-size:var(--text-xs);max-width:220px}
.events-table .col-cost{white-space:nowrap;min-width:140px}

/* Past rows: muted body, but date column shows a status pill underneath. */
.event-row.is-past td{opacity:.55}
.event-row.is-past .col-date{opacity:1}
.event-row.is-past .col-date{color:var(--color-text-faint)}
.event-row.is-past .col-date::after{
  content:"past";display:block;margin-top:2px;
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--color-text-faint);
}
[data-lang="de"] .event-row.is-past .col-date::after{content:"vergangen"}
/* Upcoming status indicator (small, subtle). */
.event-row:not(.is-past) .col-date::after{
  content:"upcoming";display:block;margin-top:2px;
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--color-accent);opacity:.7;
}
[data-lang="de"] .event-row:not(.is-past) .col-date::after{content:"bevorstehend"}

/* Fuzzy date marker */
.event-row.is-fuzzy .col-date{font-style:italic}

/* Cost badges */
.cost-badge{
  display:inline-block;font-family:var(--font-body);
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:2px 8px;border-radius:var(--radius-full);
}
.cost-free   { background:rgba(46,160, 67,.15); color:#2ea043; }
.cost-paid   { background:rgba(184,134, 11,.15); color:#b8860b; }
.cost-invite { background:rgba(139, 92,246,.15); color:#8b5cf6; }
[data-theme="dark"] .cost-free   { color:#7ee08b; }
[data-theme="dark"] .cost-paid   { color:#e6c171; }
[data-theme="dark"] .cost-invite { color:#b59cf3; }
@media(prefers-color-scheme:dark){
  [data-theme="light"] .cost-free   { color:#2ea043; }
  [data-theme="light"] .cost-paid   { color:#b8860b; }
  [data-theme="light"] .cost-invite { color:#8b5cf6; }
}
.cost-amount{display:inline-block;margin-left:var(--sp-1);font-size:var(--text-xs);color:var(--color-text-faint)}

/* Type filter: multi-select pills (Vendor / MSSP / Other) */
.events-type-filter .events-pill[data-type="all"].is-active{
  background:var(--color-text);border-color:var(--color-text);color:var(--color-surface);
}
.events-type-filter .events-pill[data-type="vendor"].is-active{
  background:#3b82f6;border-color:#3b82f6;color:#fff;
}
.events-type-filter .events-pill[data-type="mssp"].is-active{
  background:#06b6d4;border-color:#06b6d4;color:#fff;
}
.events-type-filter .events-pill[data-type="other"].is-active{
  background:#64748b;border-color:#64748b;color:#fff;
}

/* Type badges in table */
.events-table .col-type{white-space:nowrap;min-width:90px}
.type-badge{
  display:inline-block;font-family:var(--font-body);
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:2px 8px;border-radius:var(--radius-full);
}
.type-vendor { background:rgba( 59,130,246,.15); color:#3b82f6; }
.type-mssp   { background:rgba(  6,182,212,.15); color:#06b6d4; }
.type-other  { background:rgba(100,116,139,.15); color:#64748b; }
[data-theme="dark"] .type-vendor { color:#7faaf7; }
[data-theme="dark"] .type-mssp   { color:#5fd3e8; }
[data-theme="dark"] .type-other  { color:#94a3b8; }
@media(prefers-color-scheme:dark){
  [data-theme="light"] .type-vendor { color:#3b82f6; }
  [data-theme="light"] .type-mssp   { color:#06b6d4; }
  [data-theme="light"] .type-other  { color:#64748b; }
}

.events-empty{padding:var(--sp-8);text-align:center;color:var(--color-text-faint);font-style:italic}

/* Mobile */
@media(max-width:720px){
  .events-toolbar{padding:var(--sp-3);gap:var(--sp-2)}
  .events-export-group{margin-left:0;width:100%;justify-content:flex-start}
  .events-search{flex-basis:100%}
  .events-table{font-size:var(--text-xs);min-width:780px}
  .events-table thead th,.events-table tbody td{padding:var(--sp-2) var(--sp-3)}
}

/* Print: PDF export uses window.print() */
@media print{
  .site-header,.events-toolbar,.events-meta,.events-empty,footer{display:none !important}
  body{background:#fff;color:#000}
  .events-page{padding:0;max-width:none}
  .page-title{font-size:18pt;margin-bottom:8pt}
  .page-intro,.industry-note{font-size:9pt;margin-bottom:8pt;color:#444 !important}
  .events-table-wrap{border:none;background:#fff;overflow:visible}
  .events-table{font-size:8pt;min-width:0;width:100%}
  .events-table thead th{background:#f0f0f0 !important;color:#000 !important;border-bottom:1px solid #888}
  .events-table tbody td{color:#000 !important;border-bottom:1px solid #ddd;background:#fff !important}
  .event-row.is-past td{opacity:.7}
  .cost-badge{border:1px solid #888;background:#fff !important;color:#000 !important}
  .type-badge{border:1px solid #888;background:#fff !important;color:#000 !important}
  .col-name a{color:#000 !important;border-bottom:none !important}
  /* Hide opposite language during print */
  [data-lang="en"] [lang="de"],
  [data-lang="de"] [lang="en"]{display:none !important}
}
