/* Eventos — SFE blue + contrast (no Odoo purple leftovers) */
.evt-odo { display:flex; flex-direction:column; gap:16px; min-height:42vh; }
.evt-odo-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:12px 16px; }
.evt-odo-new {
  background:var(--sfe-primary, #007BFF)!important;
  border-color:var(--sfe-primary, #007BFF)!important;
  color:#fff!important;
  min-height:32px; padding:0 14px; font-size:.875rem;
}
.evt-odo-new:hover,
.evt-odo-new:focus {
  background:var(--sfe-primary-dark, #0056CC)!important;
  border-color:var(--sfe-primary-dark, #0056CC)!important;
  color:#fff!important;
}
.evt-odo-title { margin:0; font-size:1.15rem; font-weight:650; color:var(--sfe-navy, #1e2b3c); }
.evt-odo-search { flex:1 1 220px; max-width:420px; margin:0 auto; }
.evt-odo-search input[type=search] {
  width:100%; min-height:34px;
  border:1px solid var(--sfe-border-strong, #cbd5e1);
  border-radius:4px; padding:0 12px 0 32px;
  color:var(--sfe-text, #1e293b);
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='%23475569' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.242.656a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E") 10px center no-repeat;
  font-size:.875rem;
}
.evt-odo-search input[type=search]::placeholder {
  color:var(--sfe-text-muted, #475569);
  opacity:1;
}
.evt-odo-search input[type=search]::-webkit-input-placeholder {
  color:var(--sfe-text-muted, #475569);
  opacity:1;
}
.evt-odo-search input[type=search]:focus {
  border-color:var(--sfe-primary, #007BFF);
  outline:2px solid color-mix(in srgb, var(--sfe-primary, #007BFF) 35%, transparent);
  outline-offset:1px;
}
.evt-odo-meta {
  display:flex; align-items:center; gap:10px; margin-left:auto;
  font-size:.8125rem; color:var(--sfe-text-muted, #475569);
}
.evt-odo-views {
  display:inline-flex;
  border:1px solid var(--sfe-border-strong, #cbd5e1);
  border-radius:4px; overflow:hidden;
}
.evt-odo-view-btn {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:34px; min-height:30px; padding:0 8px;
  color:var(--sfe-text, #1e293b);
  text-decoration:none; background:#fff;
  border-right:1px solid var(--sfe-border-strong, #cbd5e1);
  font-size:.75rem; letter-spacing:-1px;
}
.evt-odo-view-btn:last-child { border-right:0; }
.evt-odo-view-btn.is-active {
  background:var(--sfe-primary, #007BFF);
  color:#fff;
}

.evt-odo-kanban { display:flex; gap:12px; align-items:stretch; overflow-x:auto; min-height:360px; padding-bottom:8px; }
.evt-odo-col {
  flex:1 1 240px; min-width:220px; max-width:320px;
  background:var(--sfe-surface-muted, #f8fafc);
  border:1px solid var(--sfe-border, #e2e8f0);
  border-radius:6px; display:flex; flex-direction:column;
}
.evt-odo-col.is-folded { flex:0 0 44px; min-width:44px; max-width:44px; writing-mode:vertical-rl; text-orientation:mixed; }
.evt-odo-col.is-folded .evt-odo-col__head { padding:12px 8px; justify-content:center; }
.evt-odo-col.is-folded .evt-odo-col__body { display:none; }
.evt-odo-col__head {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px; font-weight:600; font-size:.875rem;
  color:var(--sfe-text, #1e293b);
}
.evt-odo-col__plus { color:var(--sfe-primary, #007BFF); text-decoration:none; font-size:1.1rem; line-height:1; }
.evt-odo-col__body { padding:0 8px 12px; display:flex; flex-direction:column; gap:8px; flex:1; }

.evt-odo-card {
  display:flex; gap:10px; background:#fff;
  border:1px solid var(--sfe-border-strong, #cbd5e1);
  border-radius:6px; padding:10px; text-decoration:none; color:inherit;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
}
.evt-odo-card:hover { border-color:var(--sfe-primary, #007BFF); }
.evt-odo-card__date {
  min-width:52px; text-align:center;
  border-right:1px solid var(--sfe-border, #e2e8f0);
  padding-right:8px;
}
.evt-odo-card__day { display:block; font-size:1.35rem; font-weight:700; line-height:1.1; color:var(--sfe-navy, #1e2b3c); }
.evt-odo-card__mon,.evt-odo-card__time {
  display:block; font-size:.7rem; color:var(--sfe-text-muted, #475569);
}
.evt-odo-card__body { flex:1; min-width:0; }
.evt-odo-card__ref {
  font-size:.7rem; color:var(--sfe-primary-dark, #0056CC); font-weight:600;
}
.evt-odo-card__name {
  font-weight:600; font-size:.875rem; margin:2px 0 4px;
  color:var(--sfe-text, #1e293b);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.evt-odo-card__att { font-size:.75rem; color:var(--sfe-text-muted, #475569); }
.evt-odo-card__foot { margin-top:6px; display:flex; gap:6px; }

.evt-odo-empty-wrap { position:relative; min-height:380px; }
.evt-odo-kanban--ghost { opacity:.4; pointer-events:none; filter:grayscale(.15); }
.evt-odo-ghost-card {
  height:72px; background:#fff;
  border:1px dashed var(--sfe-border-strong, #cbd5e1);
  border-radius:6px;
}
.evt-odo-empty {
  position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; padding:24px;
  background:rgba(255,255,255,.88); backdrop-filter:blur(1px);
  color:var(--sfe-text, #1e293b);
}
.evt-odo-empty__icon {
  font-size:2.5rem; margin-bottom:8px;
  color:var(--sfe-text-muted, #475569);
  filter:grayscale(1) contrast(1.15);
  opacity:.9;
}
.evt-odo-empty h3 {
  margin:0 0 8px; font-size:1.25rem;
  color:var(--sfe-navy, #1e2b3c);
  font-weight:700;
}
.evt-odo-empty p {
  max-width:420px;
  color:var(--sfe-text-muted, #475569);
  font-size:.9rem; line-height:1.45; margin:0 0 16px;
}
.evt-odo-empty .btn-primary {
  background:var(--sfe-primary, #007BFF);
  border-color:var(--sfe-primary, #007BFF);
  color:#fff;
}
.evt-odo-empty .btn-primary:hover,
.evt-odo-empty .btn-primary:focus {
  background:var(--sfe-primary-dark, #0056CC);
  border-color:var(--sfe-primary-dark, #0056CC);
  color:#fff;
}

/* Registration desk */
.evt-desk {
  min-height:60vh; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg, var(--sfe-surface-soft, #f1f5f9) 0%, var(--sfe-surface-muted, #f8fafc) 100%);
  margin:-8px; padding:24px; border-radius:8px;
}
.evt-desk-modal {
  width:min(520px,100%); background:#fff; border-radius:12px;
  border:1px solid var(--sfe-border, #e2e8f0);
  box-shadow:0 12px 40px rgba(30,43,60,.12); padding:20px 22px 24px;
}
.evt-desk-modal__head { display:flex; align-items:center; gap:10px; margin-bottom:18px; }
.evt-desk-modal__head h2 { flex:1; margin:0; font-size:1.05rem; color:var(--sfe-navy, #1e2b3c); }
.evt-desk-back { font-size:1.4rem; text-decoration:none; color:var(--sfe-navy, #1e2b3c); line-height:1; padding:0 4px; }
.evt-desk-install {
  font-size:.75rem; color:var(--sfe-text-muted, #475569);
  border:1px solid var(--sfe-border-strong, #cbd5e1);
  border-radius:4px; padding:2px 8px;
}
.evt-desk-scan { text-align:center; padding:12px 0 8px; }
.evt-desk-barcode {
  position:relative; width:180px; height:90px; margin:0 auto 12px;
  background:var(--sfe-surface-muted, #f8fafc);
  border:1px solid var(--sfe-border, #e2e8f0);
  border-radius:8px; overflow:hidden;
}
.evt-desk-barcode__bars {
  height:100%; width:100%;
  background:repeating-linear-gradient(90deg,#1e2b3c 0 3px,transparent 3px 7px,#1e2b3c 7px 9px,transparent 9px 14px);
  opacity:.85;
}
.evt-desk-barcode__laser {
  position:absolute; left:8%; right:8%; top:50%; height:2px; background:#e74c3c;
  box-shadow:0 0 8px #e74c3c; animation:evt-laser 1.6s ease-in-out infinite;
}
@keyframes evt-laser { 0%,100%{ transform:translateY(-28px);} 50%{ transform:translateY(28px);} }
.evt-desk-scan__hint { margin:0 0 12px; font-weight:600; color:var(--sfe-navy, #1e2b3c); }
.evt-desk-token-form { display:flex; gap:8px; justify-content:center; margin-bottom:8px; }
.evt-desk-token-form input {
  flex:1; max-width:280px; min-height:34px;
  border:1px solid var(--sfe-border-strong, #cbd5e1);
  border-radius:4px; padding:0 10px;
  color:var(--sfe-text, #1e293b);
}
.evt-desk-token-form input::placeholder {
  color:var(--sfe-text-muted, #475569);
  opacity:1;
}
.evt-desk-picker { margin-top:16px; }
.evt-desk-picker__btn {
  display:block; width:100%; text-align:center;
  background:var(--sfe-primary, #007BFF); color:#fff;
  border:1px solid var(--sfe-primary, #007BFF);
  border-radius:6px; padding:12px 16px; font-weight:600; cursor:pointer; list-style:none;
}
.evt-desk-picker__btn::-webkit-details-marker { display:none; }
.evt-desk-picker__body { padding-top:14px; }
.evt-desk-filter { margin-bottom:12px; }
.evt-desk-filter select { width:100%; min-height:34px; }
.evt-desk-attendees { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; max-height:280px; overflow:auto; }
.evt-desk-attendee {
  display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px;
  border:1px solid var(--sfe-border-strong, #cbd5e1); border-radius:6px;
}
.evt-desk-attendee span,.evt-desk-attendee small {
  display:block; font-size:.75rem; color:var(--sfe-text-muted, #475569);
}
.evt-desk-badge { font-size:.75rem; color:var(--sfe-success, #059669); font-weight:600; }
.evt-desk-attendee.is-done { opacity:.85; background:#f8fff9; }

.evt-report-kpi { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
.evt-report-kpi__card {
  flex:1 1 160px;
  background:var(--sfe-surface-muted, #f8fafc);
  border:1px solid var(--sfe-border, #e2e8f0);
  border-radius:8px; padding:16px;
}
.evt-report-kpi__value {
  display:block; font-size:1.5rem; font-weight:700;
  color:var(--sfe-primary, #007BFF);
}
.evt-report-kpi__label { font-size:.8rem; color:var(--sfe-text-muted, #475569); }
.evt-settings-links { list-style:none; padding:0; display:flex; flex-direction:column; gap:8px; }
.evt-settings-links a { color:var(--sfe-primary, #007BFF); font-weight:500; }
.evt-settings-links a:hover { color:var(--sfe-primary-dark, #0056CC); }

/* List / muted labels in Eventos */
.evt-odo-table th {
  color:var(--sfe-text-muted, #475569);
  border-bottom:1px solid var(--sfe-border-strong, #cbd5e1);
}
.evt-odo-table td { color:var(--sfe-text, #1e293b); }
