/* ==========================================================================
   CIMEGS Events portal — additions on top of the shared style.css.
   Division accent: events gold (#9A6A12). Bilingual EN/AR (RTL typography at
   the foot of this file). Mirrors the research/publishing portal pattern.
   ========================================================================== */
.portal-events {
  --division-accent: var(--div-events);
  /* Per-portal page tint (matches the owner-approved pattern used by research and
     publishing, DESIGN_GUIDE 18.2 exception): a calm, warm sand wash so a visitor
     feels at once they are in the events section. We remap the page canvas and the
     two light-tint tokens to the warm family in one place, so every soft surface
     (bands, hairlines, chips, the page head) stays coherent. White card surfaces
     and the navy/red brand tokens are untouched. */
  --color-bg: #F7F4ED;
  --blue-050: #F2EBDB;
  --blue-100: #E5D9BD;
}

/* --- Header: a clear events identity (gold top rule + gold division label) --- */
.portal-events .site-header { border-block-end-color: var(--blue-100); }
.portal-events .site-header::before {
  block-size: 3px;
  background: linear-gradient(to right, var(--div-events) 0 40%, var(--brand) 40% 100%);
}
.portal-events .kicker { color: var(--div-events); }

/* Brand second line in the HEADER ONLY: a gold division label (the footer keeps the
   readable institute name). */
.portal-events .site-header .brand-full {
  color: var(--div-events);
  font-family: var(--font-mono);
  font-size: .62rem;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  max-inline-size: none;
}
.portal-events .header-cta {
  white-space: nowrap;
  padding: .55rem 1.1rem;
  font-size: .9rem;
  box-shadow: 0 2px 10px rgba(36, 47, 95, .16);
}

/* Language toggle in the header (same control as the other bilingual portals) */
.lang-toggle {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-family: var(--font-mono);
  font-size: .8rem;
  font-weight: 500;
  text-decoration: none;
  color: var(--brand);
  border: 1px solid var(--n-300);
  border-radius: 99px;
  padding: .3rem .85rem;
  margin-inline-end: .6rem;
  min-block-size: 34px;
}
.lang-toggle svg { inline-size: 14px; block-size: 14px; }
.lang-toggle:hover { border-color: var(--div-events); color: var(--div-events); }

/* --------------------------------------------------------------------------
   Hero (tinted band + cartographic signature + at-a-glance board)
   -------------------------------------------------------------------------- */
.ev-hero {
  position: relative;
  overflow: hidden;
  border-block-end: 1px solid var(--blue-100);
  background:
    radial-gradient(130% 150% at 100% 0%, rgba(154, 106, 18, .07), transparent 46%),
    linear-gradient(118deg, var(--blue-050) 0%, var(--surface) 55%, var(--blue-050) 100%);
  padding-block: clamp(2.8rem, 7vw, 5rem);
}
.ev-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-6);
  align-items: center;
}
.ev-hero h1 { margin-block-end: var(--space-3); }
.ev-hero .lede {
  color: var(--n-700);
  font-size: var(--fs-500);
  max-inline-size: 38rem;
  margin-block-end: var(--space-4);
}
.ev-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }

/* At-a-glance board: an on-brand stat card replacing the old translucent panel */
.ev-board {
  position: relative;
  background: var(--surface);
  border: 1px solid var(--n-100);
  border-block-start: 3px solid var(--div-events);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-2);
  padding: var(--space-4);
}
.ev-board-art {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: .5;
  pointer-events: none;
  overflow: hidden;
  border-radius: var(--radius-lg);
}
.ev-board-art svg { position: absolute; inset-block-start: -10%; inset-inline-end: -10%; inline-size: 70%; block-size: auto; }
.ev-board-head {
  position: relative;
  display: flex;
  align-items: center;
  gap: .55rem;
  font-family: var(--font-mono);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--div-events);
  margin-block-end: var(--space-3);
}
.ev-board-head svg { inline-size: 16px; block-size: 16px; }
.signal-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
}
.signal {
  background: var(--blue-050);
  border: 1px solid var(--blue-100);
  border-radius: var(--radius);
  padding: .8rem .9rem;
}
.signal strong {
  display: block;
  font-family: var(--font-display);
  font-size: var(--fs-700);
  line-height: 1.05;
  color: var(--brand);
}
.signal span {
  display: block;
  font-size: .78rem;
  color: var(--n-700);
  margin-block-start: .25rem;
}

/* --------------------------------------------------------------------------
   Event cards
   -------------------------------------------------------------------------- */
.ev-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
}
.ev-card {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: 1px solid var(--n-100);
  border-radius: var(--radius);
  box-shadow: var(--shadow-1);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}
.ev-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-2); }
.ev-card::before { content: ""; display: block; block-size: 4px; background: var(--division-accent); }
.ev-card.gold::before { background: var(--div-events); }
.ev-card.red::before  { background: var(--red-600); }
.ev-card.navy::before { background: var(--brand); }
.ev-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: .55rem;
  padding: var(--space-4);
}
.ev-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-block-end: .2rem; }
.ev-card h3 { font-size: var(--fs-600); margin: 0; color: var(--brand); }
.ev-type {
  font-family: var(--font-mono);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--div-events);
}
.ev-card .summary { color: var(--n-700); font-size: .95rem; margin: 0; }
.ev-facts {
  list-style: none;
  margin: .3rem 0 var(--space-3);
  padding: 0;
  display: grid;
  gap: .5rem;
}
.ev-facts li {
  display: flex;
  align-items: flex-start;
  gap: .55rem;
  font-size: .9rem;
  font-weight: 500;
  color: var(--n-700);
}
.ev-facts svg { inline-size: 16px; block-size: 16px; flex: none; color: var(--division-accent); margin-block-start: .12rem; }
.ev-card .btn { margin-block-start: auto; align-self: flex-start; }

/* Meta chip (date) + status badge */
.meta-chip {
  font-family: var(--font-mono);
  font-size: .68rem;
  letter-spacing: .06em;
  color: var(--n-700);
  background: var(--blue-050);
  border: 1px solid var(--blue-100);
  border-radius: 99px;
  padding: .12rem .6rem;
}
.status-badge {
  display: inline-block;
  border-radius: 99px;
  padding: .08rem .65rem;
  font-size: .68rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-weight: 600;
  border: 1px solid transparent;
}
.status-open {
  color: var(--div-events);
  background: rgba(154, 106, 18, .09);
  border-color: rgba(154, 106, 18, .4);
}
.status-completed {
  color: var(--brand);
  background: var(--blue-050);
  border-color: var(--blue-100);
}

/* --------------------------------------------------------------------------
   Archive / pathways band (reuses the section + value-card language)
   -------------------------------------------------------------------------- */
.section-tint { background: #EFE8D6; }
.ev-paths {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
}
.value-card {
  background: var(--surface);
  border: 1px solid var(--n-100);
  border-radius: var(--radius);
  padding: var(--space-4);
  box-shadow: var(--shadow-1);
}
.value-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 48px;
  block-size: 48px;
  border-radius: 12px;
  color: var(--div-events);
  background: rgba(154, 106, 18, .08);
  border: 1px solid rgba(154, 106, 18, .25);
  margin-block-end: var(--space-3);
}
.value-icon svg { inline-size: 26px; block-size: 26px; }
.value-card h3 { font-size: var(--fs-500); margin-block-end: .35rem; }
.value-card p { color: var(--n-700); margin: 0; font-size: .95rem; }

/* --------------------------------------------------------------------------
   Admin (login + dashboard), themed to the design system
   -------------------------------------------------------------------------- */
.admin-main { padding-block: var(--space-6) var(--space-7); }
.admin-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-4); }
@media (min-width: 62rem) { .admin-grid { grid-template-columns: .72fr 1.28fr; align-items: start; } }
.admin-panel, .login-panel {
  background: var(--surface);
  border: 1px solid var(--n-100);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-1);
  padding: clamp(1.2rem, 3vw, 1.8rem);
}
.login-panel { width: min(460px, calc(100% - 2rem)); margin: var(--space-7) auto; }
.stat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.stat-box {
  border: 1px solid var(--n-100);
  border-radius: var(--radius);
  padding: var(--space-3);
  background: var(--blue-050);
}
.stat-box strong { display: block; font-family: var(--font-display); font-size: var(--fs-700); color: var(--brand); line-height: 1.05; }
.stat-box span { font-size: .8rem; color: var(--n-700); }
.news-editor {
  border: 1px solid var(--n-100);
  border-inline-start: 3px solid var(--div-events);
  border-radius: var(--radius);
  padding: var(--space-3);
  margin-block-end: var(--space-3);
  background: var(--paper);
}
.form-row { display: grid; grid-template-columns: 1fr; gap: var(--space-3); margin-block-end: var(--space-3); }
@media (min-width: 48rem) {
  .form-row.cols-2 { grid-template-columns: 1fr 1fr; }
  .form-row.cols-3 { grid-template-columns: .6fr 1fr 1.2fr; }
}
.inline-check { display: inline-flex; gap: .5rem; align-items: center; font-weight: 600; font-size: .9rem; color: var(--n-700); }
.inline-check input { inline-size: auto; }
.danger-note { color: var(--n-500); font-size: .82rem; }

/* Admin list table (conferences, later registrations/certificates) */
.admin-table { inline-size: 100%; border-collapse: collapse; font-size: .92rem; }
.admin-table th, .admin-table td { text-align: start; padding: .7rem 1rem; border-block-end: 1px solid var(--n-100); vertical-align: top; }
.admin-table thead th {
  font-family: var(--font-mono);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--n-500);
  background: var(--blue-050);
}
.admin-table tbody tr:hover { background: var(--blue-050); }
.admin-table .row-sub { display: block; color: var(--n-500); font-size: .78rem; margin-block-start: .15rem; }
.row-actions { display: flex; gap: .9rem; align-items: center; flex-wrap: wrap; }
.link-danger {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  font-weight: 600;
  color: var(--red-700);
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.link-danger:hover { color: var(--red-800); }
.cat-chip { display: inline-block; border: 1px solid var(--div-events); color: var(--div-events); border-radius: 99px; padding: .05rem .6rem; font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.conf-html :first-child { margin-block-start: 0; }

/* Conference page: cover banner, clean hero, fact cards, section sub-nav.
   .conf-page sets --division-accent/--div-events to the conference's accent, so the
   whole page (kickers, fact frames, sub-nav, section rules) themes to that colour. */
.conf-cover { background: var(--blue-050); border-block-end: 1px solid var(--blue-100); }
.conf-cover img { display: block; inline-size: 100%; max-block-size: 22rem; object-fit: cover; object-position: center; }

.conf-hero { background: linear-gradient(118deg, var(--blue-050) 0%, var(--surface) 60%, var(--blue-050) 100%); }
.conf-hero::after { display: none; }            /* drop the busy cartographic texture (felt chaotic) */
.conf-hero.has-cover { padding-block: clamp(1.6rem, 4vw, 2.4rem); }
.conf-page .kicker { color: var(--division-accent); }

.conf-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: var(--space-3);
  margin-block-start: var(--space-5);
  max-inline-size: 54rem;
}
.conf-fact {
  display: flex; align-items: center; gap: var(--space-3);
  background: linear-gradient(135deg, var(--surface), var(--blue-050));
  border: 1px solid var(--blue-100);
  border-inline-start: 3px solid var(--division-accent);
  border-radius: var(--radius-lg);
  padding: .85rem 1.05rem;
  box-shadow: var(--shadow-1);
}
.conf-fact-ic {
  display: inline-flex; align-items: center; justify-content: center;
  inline-size: 42px; block-size: 42px; flex: none; border-radius: 11px;
  color: var(--division-accent);
  background: color-mix(in srgb, var(--division-accent) 12%, #fff);
  border: 1px solid color-mix(in srgb, var(--division-accent) 30%, transparent);
}
.conf-fact-ic svg { inline-size: 20px; block-size: 20px; }
.conf-fact-txt { display: flex; flex-direction: column; min-inline-size: 0; }
.conf-fact-label { font-family: var(--font-mono); font-size: .64rem; letter-spacing: .12em; text-transform: uppercase; color: var(--n-500); }
.conf-fact-val { font-weight: 600; color: var(--brand); line-height: 1.3; }

.conf-subnav { background: var(--surface); border-block-end: 1px solid var(--n-100); box-shadow: var(--shadow-1); position: relative; z-index: 5; }
.conf-subnav-in { display: flex; gap: .4rem; align-items: center; flex-wrap: wrap; padding-block: .55rem; }
.conf-subnav a { display: inline-flex; align-items: center; gap: .4rem; font-weight: 600; font-size: .9rem; color: var(--n-700); text-decoration: none; padding: .45rem .9rem; border-radius: 99px; border: 1px solid transparent; }
.conf-subnav a svg { color: var(--division-accent); }
.conf-subnav a:hover { color: var(--division-accent); background: var(--blue-050); border-color: var(--blue-100); }
.conf-subnav-cta { margin-inline-start: auto; color: #fff !important; background: var(--division-accent); border-color: var(--division-accent) !important; }
.conf-subnav-cta svg { color: #fff !important; }
.conf-subnav-cta:hover { filter: brightness(1.08); }
[dir="rtl"] .conf-fact-label { letter-spacing: 0; }

/* Admin: manage-conference hub cards */
.manage-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); }
@media (max-width: 60rem) { .manage-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 40rem) { .manage-grid { grid-template-columns: 1fr; } }
.manage-card {
  display: flex; gap: var(--space-3); align-items: flex-start;
  background: var(--surface); border: 1px solid var(--n-100); border-radius: var(--radius);
  padding: var(--space-4); box-shadow: var(--shadow-1); text-decoration: none; color: var(--ink);
  transition: transform .2s ease, box-shadow .2s ease;
}
.manage-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-2); color: var(--ink); }
.manage-card h3 { font-size: var(--fs-500); margin: 0 0 .2rem; display: flex; align-items: center; gap: .5rem; }
.manage-card p { margin: 0; color: var(--n-700); font-size: .9rem; }
.manage-count { font-family: var(--font-mono); font-size: .72rem; background: var(--blue-050); border: 1px solid var(--blue-100); border-radius: 99px; padding: 0 .5rem; color: var(--div-events); }
.manage-card .value-icon { margin: 0; flex: none; }

/* Admin: committee + member blocks */
.committee-block { border: 1px solid var(--n-100); border-inline-start: 3px solid var(--div-events); border-radius: var(--radius); padding: var(--space-3) var(--space-4); margin-block-end: var(--space-4); }
.committee-block legend { font-family: var(--font-mono); font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; color: var(--n-500); padding-inline: .4rem; }
.member-row { border-block-start: 1px dashed var(--n-100); padding-block-start: var(--space-3); margin-block-start: var(--space-2); }

/* Admin: gallery editor grid */
.media-admin-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); gap: var(--space-3); }
.media-admin-item { border: 1px solid var(--n-100); border-radius: var(--radius); padding: var(--space-2); background: var(--blue-050); }
.media-admin-item img { inline-size: 100%; block-size: 9rem; object-fit: cover; border-radius: 4px; display: block; }

/* Public: committee people */
.people-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); }
@media (max-width: 60rem) { .people-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 40rem) { .people-grid { grid-template-columns: 1fr; } }
.person-card { background: var(--surface); border: 1px solid var(--n-100); border-block-start: 3px solid var(--div-events); border-radius: var(--radius); padding: var(--space-4); box-shadow: var(--shadow-1); }
.person-top { display: flex; align-items: center; gap: var(--space-3); }
.person-initials { inline-size: 52px; block-size: 52px; flex: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-weight: 600; color: var(--div-events); background: rgba(154, 106, 18, .08); border: 1px solid rgba(154, 106, 18, .25); }
.person-role { font-size: .85rem; color: var(--div-events); margin: .1rem 0 0; font-weight: 600; }
.person-aff { font-size: .88rem; color: var(--n-700); margin: var(--space-3) 0 0; }

/* Public: program */
.program-list { max-inline-size: 56rem; margin-inline: auto; }
.program-day { font-size: var(--fs-500); color: var(--div-events); margin-block: var(--space-4) var(--space-2); padding-block-end: .3rem; border-block-end: 2px solid var(--blue-100); }
.program-row { display: grid; grid-template-columns: 9rem minmax(0, 1fr); gap: var(--space-3); padding-block: .7rem; border-block-end: 1px solid var(--n-100); }
.program-time { color: var(--n-700); padding-block-start: .15rem; }
.program-title { margin: 0; font-weight: 600; color: var(--brand); }
.program-meta { margin: .15rem 0 0; font-size: .9rem; color: var(--n-700); }
@media (max-width: 40rem) { .program-row { grid-template-columns: 1fr; gap: .2rem; } }

/* Public: fees table */
.fee-table { inline-size: 100%; border-collapse: collapse; }
.fee-table th { text-align: start; font-family: var(--font-mono); font-size: .7rem; text-transform: uppercase; letter-spacing: .1em; color: var(--n-500); background: var(--blue-050); padding: .8rem 1.2rem; }
.fee-table td { padding: .9rem 1.2rem; border-block-start: 1px solid var(--n-100); vertical-align: top; }
.fee-note { display: block; color: var(--n-700); font-size: .86rem; margin-block-start: .2rem; }
.fee-amount { font-family: var(--font-mono); font-weight: 600; color: var(--div-events); white-space: nowrap; }

/* Public: gallery */
.gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); gap: var(--space-3); }
.gallery-item { margin: 0; background: var(--surface); border: 1px solid var(--n-100); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-1); }
.gallery-item img { inline-size: 100%; block-size: 11rem; object-fit: cover; display: block; }
.gallery-item figcaption { padding: .6rem .8rem; font-size: .85rem; color: var(--n-700); }

/* Public: reports */
.report-item + .report-item { margin-block-start: var(--space-4); padding-block-start: var(--space-4); border-block-start: 1px solid var(--n-100); }

/* Detail list (verify page) */
.detail-list { display: grid; gap: 0; margin: 0; }
.detail-list > div { display: grid; grid-template-columns: 11rem minmax(0, 1fr); gap: var(--space-3); padding-block: .55rem; border-block-end: 1px solid var(--n-100); }
.detail-list dt { font-weight: 600; color: var(--n-700); margin: 0; }
.detail-list dd { margin: 0; word-break: break-word; }
@media (max-width: 40rem) { .detail-list > div { grid-template-columns: 1fr; gap: .1rem; } }
[dir="rtl"] .detail-list dd.mono { direction: ltr; text-align: start; }

/* --------------------------------------------------------------------------
   Footer (events column layout)
   -------------------------------------------------------------------------- */
.footer-events { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr) minmax(0, 4fr); }
@media (max-width: 60rem) { .footer-events { grid-template-columns: 1fr 1fr; gap: var(--space-5); } }
@media (max-width: 36rem) { .footer-events { grid-template-columns: 1fr; gap: var(--space-5); } }
.footer-legal { display: flex; flex-wrap: wrap; gap: .5rem 1.2rem; padding-block-start: var(--space-4); }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 60rem) {
  .ev-grid { grid-template-columns: 1fr 1fr; }
  .ev-paths { grid-template-columns: 1fr; }
}
@media (max-width: 54rem) {
  .ev-hero-grid { grid-template-columns: 1fr; gap: var(--space-4); }
}
@media (max-width: 44rem) {
  .ev-grid { grid-template-columns: 1fr; }
}
@media (max-width: 72rem) {
  .lang-toggle { margin-inline-end: .3rem; padding: .28rem .62rem; font-size: .74rem; min-block-size: 38px; }
}
@media (max-width: 30rem) {
  .site-header .brand { min-inline-size: 0; }
  .site-header .brand-name { min-inline-size: 0; }
  .site-header .brand-abbr { font-size: 1.06rem; overflow: hidden; text-overflow: ellipsis; }
  .signal-grid { grid-template-columns: 1fr; }
}

/* --------------------------------------------------------------------------
   Arabic / RTL typography. IBM Plex Sans Arabic is the brand Arabic face; it also
   drives the Arabic glyphs of the language toggle on an English page via [lang=ar].
   Arabic is cursive, so latin letter-spacing must be reset or glyphs disconnect.
   -------------------------------------------------------------------------- */
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/plex-arabic-400.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0660-0669, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}
@font-face {
  font-family: 'IBM Plex Sans Arabic';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/plex-arabic-600.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0660-0669, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}

[dir="rtl"] {
  --font-body: 'IBM Plex Sans Arabic', 'Segoe UI', Tahoma, 'Noto Naskh Arabic', sans-serif;
  --font-display: 'IBM Plex Sans Arabic', 'Segoe UI', Tahoma, 'Noto Naskh Arabic', serif;
  --font-mono: 'IBM Plex Sans Arabic', 'Segoe UI', Tahoma, monospace;
  line-height: 1.7;
}
[lang="ar"] { font-family: 'IBM Plex Sans Arabic', 'Segoe UI', Tahoma, sans-serif; letter-spacing: 0; }
[dir="rtl"] body,
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4,
[dir="rtl"] .kicker, [dir="rtl"] .brand-abbr, [dir="rtl"] .brand-full,
[dir="rtl"] .ev-type, [dir="rtl"] .ev-board-head, [dir="rtl"] .meta-chip,
[dir="rtl"] .status-badge, [dir="rtl"] .lang-toggle, [dir="rtl"] .ticker-tag,
[dir="rtl"] .site-footer h2 { letter-spacing: 0; }
[dir="rtl"] .site-header .brand-full { font-size: .74rem; text-transform: none; letter-spacing: 0; }
[dir="rtl"] .portal-events .site-header::before {
  background: linear-gradient(to left, var(--div-events) 0 40%, var(--brand) 40% 100%);
}
[dir="rtl"] .ev-hero {
  background:
    radial-gradient(130% 150% at 0% 0%, rgba(154, 106, 18, .07), transparent 46%),
    linear-gradient(242deg, var(--blue-050) 0%, var(--surface) 55%, var(--blue-050) 100%);
}
[dir="rtl"] .ev-board-art svg { inset-inline-end: auto; inset-inline-start: -10%; transform: scaleX(-1); }
