.ez-event-announcer {
    --event-ink: var(--ezm-text, #f8fafc);
    --event-muted: var(--ezm-muted, #94a3b8);
    --event-panel: var(--ezm-panel, #121827);
    --event-border: var(--ezm-border, rgba(148, 163, 184, .22));
    --event-accent: var(--ezm-accent, #7c3aed);
    width: min(100%, 1120px);
    margin: 0 auto;
    padding: clamp(20px, 4vw, 42px);
    color: var(--event-ink);
    background: var(--ezm-bg, #090d18);
    border: 1px solid var(--event-border);
    border-radius: 24px;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.ez-event-announcer *,
.ez-event-announcer *::before,
.ez-event-announcer *::after { box-sizing: border-box; }

.ez-event-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:28px; }
.ez-event-header h2 { margin:0; color:var(--event-ink); font-size:clamp(24px,3vw,36px); line-height:1.15; letter-spacing:-.035em; }
.ez-event-eyebrow { margin:0 0 8px; color:var(--event-accent); font-size:11px; font-weight:800; letter-spacing:.16em; }
.ez-event-intro { max-width:660px; margin:10px 0 0; color:var(--event-muted); font-size:15px; line-height:1.55; }
.ez-event-local-badge { flex:0 0 auto; max-width:260px; padding:9px 12px; color:var(--event-ink); background:color-mix(in srgb,var(--event-accent) 12%,var(--event-panel)); border:1px solid var(--event-border); border-radius:999px; font-size:12px; font-weight:700; overflow-wrap:anywhere; }
.ez-event-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.92fr); align-items:start; gap:22px; }
.ez-event-editor,.ez-event-card { min-width:0; padding:22px; background:var(--event-panel); border:1px solid var(--event-border); border-radius:18px; }
.ez-event-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 14px; }
.ez-event-field { min-width:0; }
.ez-event-field-wide { grid-column:1/-1; }
.ez-event-field label { display:block; margin:0 0 7px; color:var(--event-ink); font-size:13px; font-weight:750; }
.ez-event-field label span { color:var(--event-muted); font-size:11px; font-weight:500; }
.ez-event-field input { display:block; width:100%; min-height:44px; padding:10px 12px; color:var(--event-ink); background:var(--ezm-bg,#090d18); border:1px solid var(--event-border); border-radius:10px; box-shadow:none; font:inherit; font-size:14px; }
.ez-event-field input::placeholder { color:var(--event-muted); opacity:.8; }
.ez-event-field input:focus-visible,.ez-event-button:focus-visible { outline:3px solid color-mix(in srgb,var(--event-accent) 68%,transparent); outline-offset:2px; }
.ez-event-field small { display:block; margin-top:7px; color:var(--event-muted); font-size:11px; line-height:1.45; }
.ez-event-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:20px; }
.ez-event-button { min-height:42px; padding:10px 14px; color:var(--event-ink); background:var(--ezm-bg,#090d18); border:1px solid var(--event-border); border-radius:10px; font:inherit; font-size:13px; font-weight:750; cursor:pointer; transition:transform .15s ease,border-color .15s ease,background .15s ease; }
.ez-event-button:hover:not(:disabled) { transform:translateY(-1px); border-color:var(--event-accent); }
.ez-event-button:disabled { cursor:not-allowed; opacity:.5; }
.ez-event-primary { color:#fff; background:var(--event-accent); border-color:var(--event-accent); }
.ez-event-reset { margin-left:auto; }
.ez-event-status { min-height:38px; margin:14px 0 0; padding:10px 12px; color:var(--event-muted); background:color-mix(in srgb,var(--event-accent) 7%,var(--event-panel)); border-radius:9px; font-size:12px; line-height:1.5; }
.ez-event-card { position:relative; overflow:hidden; padding:clamp(22px,3vw,34px); background:radial-gradient(ellipse at 85% 10%,color-mix(in srgb,var(--event-accent) 22%,var(--event-panel)),var(--event-panel) 62%); text-align:center; }
.ez-event-card::before { position:absolute; top:0; left:0; width:100%; height:4px; background:var(--event-accent); content:""; }
.ez-event-card-top { display:flex; align-items:center; justify-content:space-between; color:var(--event-muted); font-size:10px; font-weight:800; letter-spacing:.12em; }
.ez-event-card-mark { display:grid; width:28px; height:28px; place-items:center; color:#fff; background:var(--event-accent); border-radius:9px; font-size:17px; }
.ez-event-card-label { margin:32px 0 10px; color:var(--event-accent); font-size:11px; font-weight:850; letter-spacing:.18em; }
.ez-event-card h3 { margin:0 auto 8px; color:var(--event-ink); font-size:clamp(25px,3.2vw,38px); line-height:1.12; letter-spacing:-.035em; overflow-wrap:anywhere; }
.ez-event-card-location { min-height:21px; margin:0 auto 27px; color:var(--event-muted); font-size:14px; overflow-wrap:anywhere; }
.ez-event-card-details { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:16px 12px; background:color-mix(in srgb,var(--ezm-bg,#090d18) 75%,transparent); border:1px solid var(--event-border); border-radius:13px; }
.ez-event-card-details div { min-width:0; }
.ez-event-card-details div+div { border-left:1px solid var(--event-border); }
.ez-event-card-details span { display:block; margin-bottom:7px; color:var(--event-muted); font-size:9px; font-weight:850; letter-spacing:.14em; }
.ez-event-card-details strong { display:block; color:var(--event-ink); font-size:clamp(13px,1.35vw,17px); line-height:1.35; overflow-wrap:anywhere; }
.ez-event-card-zone { margin:13px 0 0; color:var(--event-accent); font-size:12px; font-weight:750; overflow-wrap:anywhere; }
.ez-event-card-foot { margin:24px 0 0; color:var(--event-muted); font-size:12px; }

.ezm-tool-view[data-theme="light"] .ez-event-announcer { color-scheme:light; }
.ezm-tool-view[data-theme="dark"] .ez-event-announcer,.ezm-tool-view[data-theme="midnight"] .ez-event-announcer { color-scheme:dark; }

@media (max-width:760px) {
    .ez-event-layout { grid-template-columns:minmax(0,1fr); }
    .ez-event-card { max-width:none; }
}
@media (max-width:480px) {
    .ez-event-announcer { padding:16px; border-radius:16px; }
    .ez-event-header { display:block; margin-bottom:18px; }
    .ez-event-local-badge { display:inline-flex; margin-top:14px; }
    .ez-event-editor,.ez-event-card { padding:16px; border-radius:14px; }
    .ez-event-fields { grid-template-columns:minmax(0,1fr); gap:14px; }
    .ez-event-field-wide { grid-column:auto; }
    .ez-event-actions { display:grid; grid-template-columns:1fr 1fr; }
    .ez-event-button { width:100%; padding:10px 9px; }
    .ez-event-reset { grid-column:1/-1; margin-left:0; }
    .ez-event-card-details { gap:6px; padding:13px 7px; }
    .ez-event-card-details strong { font-size:13px; }
}

@media print {
    body.ez-event-print-mode * { visibility:hidden !important; }
    body.ez-event-print-mode .ez-event-announcer.is-printing,
    body.ez-event-print-mode .ez-event-announcer.is-printing * { visibility:visible !important; }
    body.ez-event-print-mode .ez-event-announcer:not(.is-printing) { display:none !important; }
    body.ez-event-print-mode .ez-event-announcer.is-printing { position:absolute; inset:0 auto auto 0; width:100%; max-width:none; margin:0; padding:24px; color:#111827 !important; background:#fff !important; border:0; box-shadow:none; }
    body.ez-event-print-mode .ez-event-announcer.is-printing .ez-event-editor { display:none !important; }
    body.ez-event-print-mode .ez-event-announcer.is-printing .ez-event-card { color:#111827 !important; background:#fff !important; border:1px solid #cbd5e1; box-shadow:none; break-inside:avoid; }
    body.ez-event-print-mode .ez-event-announcer.is-printing .ez-event-card h3,
    body.ez-event-print-mode .ez-event-announcer.is-printing .ez-event-card-details strong { color:#111827 !important; }
}
