/* ==========================================================================
   OERL Events — shared styles for event-details & event-registration
   Scoped .ev-* ; uses shared theme tokens from oerl-enhance.css.
   ========================================================================== */
.ev-eyebrow { display:inline-block; font-size:15px; font-weight:600; text-transform:uppercase;
  color:var(--tg-theme-secondary-500); margin-bottom:12px; }

/* ---------- HERO ---------- */
.ev-hero { position:relative; overflow:hidden; color:#fff; padding:110px 0 90px;
  background:linear-gradient(135deg,rgba(10,24,48,.92),rgba(15,43,70,.86) 55%,rgba(28,106,151,.82)),
    url('../img/bg/breadcrumb_bg.jpg') center/cover no-repeat; }
.ev-hero::after { content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px); background-size:26px 26px; opacity:.5; }
.ev-hero .container { position:relative; z-index:2; }
.ev-crumb { font-size:13.5px; color:rgba(255,255,255,.72); margin-bottom:22px; }
.ev-crumb a { color:rgba(255,255,255,.72); } .ev-crumb a:hover { color:#fff; } .ev-crumb .sep { opacity:.5; margin:0 7px; }
.ev-tags { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
.ev-tag { font-size:12.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; padding:6px 13px; border-radius:30px;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); color:#eaf4fb; }
.ev-tag.live { background:var(--tg-theme-secondary-500); border-color:var(--tg-theme-secondary-500); }
.ev-hero h1 { font-size:52px; line-height:1.08; font-weight:800; margin:0 0 20px; max-width:900px; color:#fff; }
.ev-meta { display:flex; flex-wrap:wrap; gap:26px; margin-bottom:30px; }
.ev-meta-item { display:flex; align-items:center; gap:11px; font-size:15px; color:rgba(255,255,255,.9); }
.ev-meta-item i { width:20px; height:20px; color:var(--tg-theme-secondary-500); }
.ev-hero-actions { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
.ev-btn { display:inline-flex; align-items:center; gap:10px; font-weight:700; font-size:15px; padding:15px 30px; border-radius:40px;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease; }
.ev-btn i { width:18px; height:18px; }
.ev-btn-primary { background:var(--tg-theme-secondary-500); color:#fff; box-shadow:0 16px 34px -14px rgba(250,108,32,.6); }
.ev-btn-primary:hover { color:#fff; background:var(--tg-theme-secondary-600); transform:translateY(-3px); }
.ev-btn-ghost { color:#fff; border:1.5px solid rgba(255,255,255,.4); }
.ev-btn-ghost:hover { color:#0a1830; background:#fff; transform:translateY(-3px); }
.ev-btn-blue { background:var(--tg-theme-primary-500); color:#fff; box-shadow:0 16px 34px -14px rgba(63,163,215,.55); }
.ev-btn-blue:hover { color:#fff; background:var(--tg-theme-primary-600); transform:translateY(-3px); }

/* ---------- LAYOUT ---------- */
.ev-sec { padding:100px 0; }
.ev-sec.tight { padding:64px 0; }
.ev-soft { background:var(--oerl-surface-2); }
[data-bs-theme="dark"] .ev-soft { background:var(--oerl-bg-2); }
.ev-head { max-width:680px; margin:0 auto 50px; text-align:center; }
.ev-head.left { margin-left:0; text-align:left; }
.ev-head h2 { font-size:36px; font-weight:800; color:var(--tg-heading-color); margin:0 0 12px; }
.ev-head p { font-size:16px; line-height:1.7; color:var(--tg-body-color); margin:0; }
[data-bs-theme="dark"] .ev-head p { color:var(--oerl-text); }
.ev-note { text-align:center; font-style:italic; font-size:14px; color:var(--tg-body-color); opacity:.8; margin-top:26px; }

/* ---------- OVERVIEW + SIDEBAR ---------- */
.ev-prose p { font-size:16px; line-height:1.85; color:var(--tg-body-color); margin-bottom:18px; }
[data-bs-theme="dark"] .ev-prose p { color:var(--oerl-text); }
.ev-high { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:24px; }
.ev-high li { display:flex; gap:11px; align-items:flex-start; font-size:15px; font-weight:600; color:var(--tg-heading-color); }
.ev-high li i { flex:0 0 20px; width:20px; height:20px; color:var(--tg-theme-primary-500); margin-top:2px; }
.ev-side { position:sticky; top:100px; background:var(--oerl-surface); border:1px solid var(--oerl-border-soft);
  border-radius:20px; padding:30px 28px; box-shadow:0 24px 60px -40px rgba(20,24,60,.32); }
[data-bs-theme="dark"] .ev-side { box-shadow:0 24px 60px -34px rgba(0,0,0,.8); }
.ev-side h4 { font-size:20px; font-weight:700; color:var(--tg-heading-color); margin:0 0 18px; }
.ev-side-list li { display:flex; gap:13px; align-items:flex-start; padding:13px 0; border-bottom:1px dashed var(--oerl-border-soft); }
.ev-side-list li:last-child { border-bottom:0; }
.ev-side-list i { flex:0 0 38px; width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center;
  background:rgba(63,163,215,.12); color:var(--tg-theme-primary-500); }
.ev-side-list .k { font-size:12.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--tg-body-color); }
.ev-side-list .v { font-size:15px; font-weight:700; color:var(--tg-heading-color); }
[data-bs-theme="dark"] .ev-side-list .k { color:var(--oerl-muted); }

/* ---------- CARD GRIDS (speakers / sponsors) ---------- */
.ev-grid { display:grid; gap:24px; }
.ev-grid.c2 { grid-template-columns:repeat(2,1fr); }
.ev-grid.c3 { grid-template-columns:repeat(3,1fr); }
.ev-grid.c4 { grid-template-columns:repeat(4,1fr); }
.ev-speaker { background:var(--oerl-surface); border:1px solid var(--oerl-border-soft); border-radius:18px; overflow:hidden;
  text-align:center; transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.ev-speaker:hover { transform:translateY(-6px); border-color:var(--tg-theme-primary-300); box-shadow:0 26px 54px -30px rgba(20,24,60,.34); }
.ev-speaker-img { aspect-ratio:1/1; overflow:hidden; background:var(--oerl-surface-2); }
.ev-speaker-img img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.ev-speaker:hover .ev-speaker-img img { transform:scale(1.06); }
.ev-speaker-body { padding:20px 18px 24px; }
.ev-speaker-body h4 { font-size:18px; font-weight:700; color:var(--tg-heading-color); margin:0 0 4px; }
.ev-speaker-body .role { font-size:13.5px; color:var(--tg-theme-primary-500); font-weight:600; }
.ev-speaker-social { display:flex; justify-content:center; gap:10px; margin-top:14px; }
.ev-speaker-social a { width:34px; height:34px; border-radius:9px; display:inline-flex; align-items:center; justify-content:center;
  background:var(--oerl-surface-2); color:var(--tg-body-color); transition:all .25s ease; font-size:13px; }
.ev-speaker-social a:hover { background:var(--tg-theme-primary-500); color:#fff; }

.ev-sponsor { background:var(--oerl-surface); border:1px solid var(--oerl-border-soft); border-radius:14px; height:110px;
  display:flex; align-items:center; justify-content:center; padding:20px; transition:border-color .25s ease, transform .25s ease; }
.ev-sponsor:hover { border-color:var(--tg-theme-primary-300); transform:translateY(-4px); }
.ev-sponsor img { max-height:52px; max-width:100%; filter:grayscale(1); opacity:.75; transition:all .25s ease; }
.ev-sponsor:hover img { filter:none; opacity:1; }

/* ---------- SCHEDULE / AGENDA ---------- */
.ev-agenda { max-width:900px; margin:0 auto; }
.ev-day-tabs { display:flex; gap:10px; justify-content:center; margin-bottom:34px; flex-wrap:wrap; }
.ev-day-tab { border:1px solid var(--oerl-border-soft); background:var(--oerl-surface); color:var(--tg-heading-color);
  font-weight:700; font-size:14.5px; padding:12px 24px; border-radius:40px; cursor:pointer; transition:all .25s ease; }
.ev-day-tab.active { background:var(--tg-theme-primary-500); border-color:var(--tg-theme-primary-500); color:#fff; }
.ev-day-panel { display:none; } .ev-day-panel.active { display:block; }
.ev-slot { display:flex; gap:22px; padding:22px 24px; background:var(--oerl-surface); border:1px solid var(--oerl-border-soft);
  border-radius:14px; margin-bottom:14px; transition:border-color .25s ease, transform .25s ease; }
.ev-slot:hover { border-color:var(--tg-theme-primary-300); transform:translateX(4px); }
.ev-slot-time { flex:0 0 130px; font-weight:800; color:var(--tg-theme-primary-500); font-size:15px; }
.ev-slot-time span { display:block; font-size:12px; font-weight:600; color:var(--tg-body-color); }
.ev-slot h4 { font-size:17px; font-weight:700; color:var(--tg-heading-color); margin:0 0 6px; }
.ev-slot p { font-size:14px; color:var(--tg-body-color); margin:0; }
[data-bs-theme="dark"] .ev-slot p { color:var(--oerl-text); }
.ev-slot .who { display:inline-flex; align-items:center; gap:7px; margin-top:8px; font-size:13px; font-weight:600; color:var(--tg-theme-secondary-500); }
.ev-slot .who i { width:15px; height:15px; }

/* ---------- VENUE ---------- */
.ev-venue-card { background:var(--oerl-surface); border:1px solid var(--oerl-border-soft); border-radius:20px; overflow:hidden; }
.ev-venue-map { min-height:320px; height:100%; border:0; width:100%; filter:grayscale(.2); }
[data-bs-theme="dark"] .ev-venue-map { filter:grayscale(.4) invert(.9) hue-rotate(180deg); }
.ev-venue-body { padding:34px 32px; }
.ev-venue-body h3 { font-size:24px; font-weight:800; color:var(--tg-heading-color); margin:0 0 14px; }
.ev-venue-body p { font-size:15px; line-height:1.7; color:var(--tg-body-color); }
[data-bs-theme="dark"] .ev-venue-body p { color:var(--oerl-text); }

/* ---------- CTA BAND ---------- */
.ev-cta { position:relative; overflow:hidden; border-radius:26px; padding:70px 60px; text-align:center; color:#fff;
  background:linear-gradient(135deg,#0a1830,#123a52 55%,#1c6a97); }
.ev-cta h2 { font-size:38px; font-weight:800; margin:0 0 14px; color:#fff; }
.ev-cta p { font-size:16.5px; color:rgba(255,255,255,.85); max-width:640px; margin:0 auto 30px; }
.ev-cta-actions { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

/* ---------- REGISTRATION FORM ---------- */
.ev-form-wrap { background:var(--oerl-surface); border:1px solid var(--oerl-border-soft); border-radius:20px;
  padding:38px 36px; box-shadow:0 30px 70px -46px rgba(20,24,60,.3); }
[data-bs-theme="dark"] .ev-form-wrap { box-shadow:0 30px 70px -40px rgba(0,0,0,.8); }
.ev-fieldset { margin-bottom:30px; }
.ev-fieldset-title { display:flex; align-items:center; gap:11px; font-size:14px; font-weight:800; letter-spacing:.04em;
  text-transform:uppercase; color:var(--tg-theme-primary-500); margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid var(--oerl-border-soft); }
.ev-fieldset-title span.num { width:26px; height:26px; border-radius:50%; background:var(--tg-theme-primary-500); color:#fff;
  display:inline-flex; align-items:center; justify-content:center; font-size:13px; }
.ev-field { margin-bottom:18px; }
.ev-field label { display:block; font-size:13.5px; font-weight:600; color:var(--tg-heading-color); margin-bottom:8px; }
.ev-field label .req { color:var(--tg-theme-secondary-500); }
.ev-input, .ev-select, .ev-textarea { width:100%; background:var(--oerl-surface-2); border:1px solid var(--oerl-border-soft);
  border-radius:12px; padding:13px 16px; font-size:15px; color:var(--tg-heading-color); transition:border-color .2s ease, box-shadow .2s ease; }
.ev-input:focus, .ev-select:focus, .ev-textarea:focus { outline:none; border-color:var(--tg-theme-primary-500);
  box-shadow:0 0 0 3px rgba(63,163,215,.16); }
.ev-input::placeholder, .ev-textarea::placeholder { color:var(--tg-body-color); opacity:.7; }
.ev-textarea { min-height:110px; resize:vertical; }
.ev-radios { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.ev-radio { position:relative; }
.ev-radio input { position:absolute; opacity:0; }
.ev-radio label { display:block; cursor:pointer; border:1.5px solid var(--oerl-border-soft); border-radius:14px; padding:16px;
  transition:all .2s ease; margin:0; }
.ev-radio input:checked + label { border-color:var(--tg-theme-primary-500); background:rgba(63,163,215,.07); box-shadow:0 0 0 3px rgba(63,163,215,.12); }
.ev-radio .t { display:block; font-size:15px; font-weight:700; color:var(--tg-heading-color); }
.ev-radio .p { display:block; font-size:13px; color:var(--tg-body-color); margin-top:3px; min-height:34px; }
.ev-radio .price { display:block; font-size:18px; font-weight:800; color:var(--tg-theme-secondary-500); margin-top:8px; }
[data-bs-theme="dark"] .ev-radio .p { color:var(--oerl-text); }
.ev-check { display:flex; gap:11px; align-items:flex-start; font-size:14px; color:var(--tg-body-color); }
[data-bs-theme="dark"] .ev-check { color:var(--oerl-text); }
.ev-check input { margin-top:3px; width:17px; height:17px; accent-color:var(--tg-theme-primary-500); }
.ev-err { color:#e0483b; font-size:12.5px; margin-top:6px; display:none; }
.ev-field.invalid .ev-input, .ev-field.invalid .ev-select { border-color:#e0483b; }
.ev-field.invalid .ev-err { display:block; }
.ev-form-note { margin-top:14px; font-size:13px; color:var(--tg-body-color); opacity:.85; text-align:center; }

/* ---------- TICKET SUMMARY ---------- */
.ev-ticket { position:sticky; top:100px; background:var(--oerl-surface); border:1px solid var(--oerl-border-soft); border-radius:20px; overflow:hidden; }
.ev-ticket-head { background:linear-gradient(135deg,#0a1830,#1c6a97); color:#fff; padding:24px 26px; }
.ev-ticket-head .lbl { font-size:12.5px; text-transform:uppercase; letter-spacing:.08em; opacity:.8; }
.ev-ticket-head h4 { font-size:20px; font-weight:800; margin:4px 0 0; color:#fff; }
.ev-ticket-body { padding:24px 26px; }
.ev-ticket-row { display:flex; justify-content:space-between; align-items:center; padding:11px 0; border-bottom:1px dashed var(--oerl-border-soft); font-size:14.5px; }
.ev-ticket-row .k { color:var(--tg-body-color); } .ev-ticket-row .v { font-weight:700; color:var(--tg-heading-color); }
[data-bs-theme="dark"] .ev-ticket-row .k { color:var(--oerl-text); }
.ev-ticket-total { display:flex; justify-content:space-between; align-items:center; padding-top:16px; margin-top:6px; }
.ev-ticket-total .k { font-size:15px; font-weight:700; color:var(--tg-heading-color); }
.ev-ticket-total .v { font-size:26px; font-weight:800; color:var(--tg-theme-secondary-500); }

/* ---------- RESPONSIVE ---------- */
@media (max-width:991px){
  .ev-hero{padding:80px 0 64px;} .ev-hero h1{font-size:38px;}
  .ev-grid.c4{grid-template-columns:repeat(2,1fr);} .ev-grid.c3{grid-template-columns:repeat(2,1fr);}
  .ev-side,.ev-ticket{position:static; margin-top:34px;}
  .ev-cta{padding:52px 30px;} .ev-cta h2{font-size:30px;}
  .ev-radios{grid-template-columns:1fr;}
}
@media (max-width:575px){
  .ev-hero h1{font-size:30px;} .ev-sec{padding:60px 0;}
  .ev-grid.c2,.ev-grid.c3,.ev-grid.c4{grid-template-columns:1fr;}
  .ev-high{grid-template-columns:1fr;}
  .ev-slot{flex-direction:column; gap:8px;} .ev-slot-time{flex-basis:auto;}
  .ev-form-wrap{padding:26px 20px;}
}
/* ==========================================================================
   OERL Job Details — content lists, sticky summary, drag & drop uploader.
   Reuses .ev-* (hero, sections, form) from oerl-events.css.
   ========================================================================== */
.job-block { margin-bottom:38px; }
.job-block h2 { font-size:24px; font-weight:800; color:var(--tg-heading-color); margin:0 0 16px; display:flex; align-items:center; gap:11px; }
.job-block h2 i { width:24px; height:24px; color:var(--tg-theme-primary-500); }
.job-block > p { font-size:16px; line-height:1.8; color:var(--tg-body-color); margin:0 0 14px; }
[data-bs-theme="dark"] .job-block > p { color:var(--oerl-text); }
.job-list { margin:0; padding:0; list-style:none; }
.job-list li { display:flex; gap:12px; align-items:flex-start; padding:9px 0; font-size:15.5px; line-height:1.6; color:var(--tg-body-color); }
.job-list li i { flex:0 0 22px; width:22px; height:22px; color:var(--tg-theme-secondary-500); margin-top:2px; }
[data-bs-theme="dark"] .job-list li { color:var(--oerl-text); }

/* Sticky summary */
.job-summary { position:sticky; top:100px; background:var(--oerl-surface); border:1px solid var(--oerl-border-soft);
  border-radius:20px; padding:30px 28px; box-shadow:0 24px 60px -40px rgba(20,24,60,.3); }
[data-bs-theme="dark"] .job-summary { box-shadow:0 24px 60px -34px rgba(0,0,0,.8); }
.job-summary h4 { font-size:19px; font-weight:800; color:var(--tg-heading-color); margin:0 0 18px; }
.job-summary-list li { display:flex; gap:13px; align-items:flex-start; padding:12px 0; border-bottom:1px dashed var(--oerl-border-soft); }
.job-summary-list li:last-child { border-bottom:0; }
.job-summary-list i { flex:0 0 36px; width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center;
  background:rgba(63,163,215,.12); color:var(--tg-theme-primary-500); }
.job-summary-list .k { font-size:12px; text-transform:uppercase; letter-spacing:.04em; color:var(--tg-body-color); }
.job-summary-list .v { font-size:15px; font-weight:700; color:var(--tg-heading-color); }
[data-bs-theme="dark"] .job-summary-list .k { color:var(--oerl-muted); }

/* Company info cards */
.job-culture { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:20px; }
.job-culture li { display:flex; gap:11px; align-items:flex-start; font-size:15px; font-weight:600; color:var(--tg-heading-color); }
.job-culture li i { flex:0 0 20px; width:20px; height:20px; color:var(--tg-theme-primary-500); margin-top:1px; }

/* Drag & drop uploader */
.cv-drop { border:2px dashed var(--oerl-border-soft); border-radius:14px; padding:34px 24px; text-align:center; cursor:pointer;
  transition:all .25s ease; background:var(--oerl-surface-2); }
.cv-drop:hover, .cv-drop.dragover { border-color:var(--tg-theme-primary-500); background:rgba(63,163,215,.06); }
.cv-drop.invalid { border-color:#e0483b; }
.cv-drop.has-file { padding:18px; text-align:left; }
.cv-drop-ico { width:52px; height:52px; border-radius:14px; background:rgba(63,163,215,.12); color:var(--tg-theme-primary-500);
  display:inline-flex; align-items:center; justify-content:center; margin-bottom:14px; }
.cv-drop-ico i { width:26px; height:26px; }
.cv-drop h5 { font-size:16px; font-weight:700; color:var(--tg-heading-color); margin:0 0 6px; }
.cv-drop p { font-size:13.5px; color:var(--tg-body-color); margin:0; }
.cv-drop .browse { color:var(--tg-theme-primary-500); font-weight:700; }
.cv-file { display:flex; align-items:center; gap:14px; }
.cv-file-ico { flex:0 0 46px; width:46px; height:46px; border-radius:11px; background:rgba(63,163,215,.12); color:var(--tg-theme-primary-500);
  display:flex; align-items:center; justify-content:center; }
.cv-file-info { flex:1; min-width:0; }
.cv-file-name { font-size:14.5px; font-weight:700; color:var(--tg-heading-color); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cv-file-size { font-size:12.5px; color:var(--tg-body-color); margin:2px 0 8px; }
.cv-progress { height:6px; border-radius:6px; background:var(--oerl-border-soft); overflow:hidden; }
.cv-progress span { display:block; height:100%; width:0; background:var(--tg-theme-primary-500); transition:width .15s ease; }
.cv-file.done .cv-progress span { background:#16a34a; }
.cv-remove { flex:0 0 auto; border:0; background:transparent; color:var(--tg-body-color); cursor:pointer; padding:6px; border-radius:8px; }
.cv-remove:hover { color:var(--tg-theme-secondary-500); background:rgba(250,108,32,.1); }
.cv-remove i { width:18px; height:18px; }
.cv-err { display:flex; align-items:center; gap:8px; color:#e0483b; font-size:13.5px; }
.cv-err i { width:17px; height:17px; }

@media (max-width:575px){ .job-culture { grid-template-columns:1fr; } }
