.ev {
    --ev-surface: #121A2B;
    --ev-text: #E8ECF4;
    --ev-muted: #9FAAC2;
    --ev-line: #33415F;
    --ev-accent: rgb(var(--primary-500, 255 140 26));
    max-width: 1080px;
    color: var(--ev-text);
}
html:not(.dark) .ev {
    --ev-surface: #ffffff;
    --ev-text: #111827;
    --ev-muted: #6b7280;
    --ev-line: #e5e7eb;
}
.ev-hero {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-bottom: 20px;
}
.ev-avatar {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: var(--ev-accent);
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    flex-shrink: 0;
}
.ev-name {
    margin: 0 0 8px;
    font-size: 24px;
    line-height: 32px;
    font-weight: 600;
    letter-spacing: -0.03em;
}
.ev-meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ev-meta__item { font-size: 13px; color: var(--ev-muted); }
.ev-pill {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    color: var(--ev-muted);
    background: rgb(255 255 255 / 0.06);
    box-shadow: inset 0 0 0 1px var(--ev-line);
}
html:not(.dark) .ev-pill { background: #f3f4f6; }
.ev-pill.is-on { color: #34d399; box-shadow: inset 0 0 0 1px rgb(16 185 129 / 0.45); }
.ev-pill.is-off { color: #fda4af; box-shadow: inset 0 0 0 1px rgb(244 63 94 / 0.4); }
.ev-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.ev-card {
    background: var(--ev-surface);
    border-radius: 12px;
    padding: 16px 18px;
    box-shadow: inset 0 0 0 1px var(--ev-line);
}
.ev-card--wide { grid-column: 1 / -1; }
.ev-card h3 {
    margin: 0 0 12px;
    font-size: 14px;
    font-weight: 650;
}
.ev-card dl { margin: 0; display: grid; gap: 10px; }
.ev-card dl div { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 8px; }
.ev-card dt { font-size: 12px; color: var(--ev-muted); }
.ev-card dd { margin: 0; font-size: 14px; line-height: 20px; }
.ev-pills { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.ev-week { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; margin-bottom: 14px; }
.ev-day {
    border-radius: 10px;
    padding: 8px;
    text-align: center;
    box-shadow: inset 0 0 0 1px var(--ev-line);
}
.ev-day span { display: block; font-size: 11px; color: var(--ev-muted); }
.ev-day strong { font-size: 14px; }
.ev-day.is-on { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ev-accent) 55%, var(--ev-line)); }
.ev-docs { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.ev-docs li { display: flex; justify-content: space-between; gap: 12px; font-size: 14px; }
.ev-docs span, .ev-empty { color: var(--ev-muted); font-size: 13px; }
.ev-rels { margin-top: 28px; }
@media (max-width: 800px) {
    .ev-grid, .ev-week, .ev-card dl div { grid-template-columns: 1fr; }
    .ev-card--wide { grid-column: auto; }
}
