/* SK Event Engine — uses existing tokens, no new visual language */

.sk-events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin:24px 0}
.sk-event-card{background:#fff;border:1px solid #e8dfc8;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .3s}
.sk-event-card:hover{box-shadow:0 12px 34px rgba(23,48,79,.12)}
.sk-event-card.is-live{border-color:#dc3232;box-shadow:0 0 0 2px rgba(220,50,50,.15)}
.sk-event-cover{display:block}
.sk-event-cover img{width:100%;height:180px;object-fit:cover;display:block}
.sk-event-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.sk-event-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sk-event-cat{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#8a6d1a;background:rgba(201,162,39,.12);border:1px solid rgba(201,162,39,.4);padding:3px 10px;border-radius:99px}
.sk-event-status{font-size:11px;font-weight:700;padding:3px 10px;border-radius:99px;color:#fff;background:#64748b}
.sk-event-status.s-live{background:#dc3232}
.sk-event-status.s-upcoming,.sk-event-status.s-scheduled{background:#244a76}
.sk-event-status.s-ended,.sk-event-status.s-archived{background:#64748b}
.sk-event-status.s-replay{background:#7c3aed}
.sk-event-status.s-cancelled{background:#b91c1c}
.sk-event-card h3{margin:0;font-size:18px;line-height:1.4}
.sk-event-card h3 a{color:#17304f;text-decoration:none}
.sk-event-card h3 a:hover{color:#c8a96b}
.sk-event-when{color:#64748b;font-size:14px;margin:0}
.sk-event-excerpt{color:#475569;font-size:14px;margin:0;flex:1}
.sk-event-card .btn-primary,.sk-event-card .btn-outline{align-self:flex-start;font-size:14px;padding:8px 18px}

/* filters */
.sk-event-filters{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.sk-event-filters select,.sk-event-filters input{padding:10px 14px;border:1px solid #e8dfc8;border-radius:10px;font-size:14px;background:#fff;color:#17304f}

/* headings */
.sk-events-h2{margin:36px 0 8px;color:#17304f;font-size:22px}
.sk-events-empty{color:#64748b}

/* live strip */
.sk-events-live{background:#1e293b;padding:28px 0}
.sk-events-live h2{color:#fff;margin:0 0 16px}
.sk-events-live .sk-event-card{background:#0f172a;border-color:#334155}
.sk-events-live .sk-event-card h3 a{color:#fff}

/* hero + facts on single */
.sk-event-hero{background:#17304f;color:#fff;padding:48px 0}
.sk-event-hero .container{max-width:920px}
.sk-event-cover-wrap{border-radius:16px;overflow:hidden;margin-bottom:24px}
.sk-event-cover-wrap img{width:100%;display:block}
.sk-event-hero .sk-event-meta{margin-bottom:12px}
.sk-event-hero h1{margin:0 0 12px;font-size:clamp(28px,4vw,40px)}
.sk-event-lead{font-size:17px;color:#cbd5e1;max-width:640px}
.sk-event-facts{display:flex;flex-wrap:wrap;gap:24px;margin:28px 0;padding:20px;background:rgba(255,255,255,.06);border-radius:14px}
.sk-fact{min-width:120px}
.sk-fact-k{display:block;font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.sk-event-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.sk-live-badge{background:#dc3232;color:#fff;font-weight:700;padding:12px 22px;border-radius:99px;font-size:15px}
.sk-event-cancelled-badge{background:#b91c1c;color:#fff;font-weight:700;padding:12px 22px;border-radius:99px}

/* countdown */
.sk-countdown{margin:24px 0}
.sk-cd-label{display:block;font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
.sk-cd-units{display:flex;gap:14px}
.sk-cd-unit{background:rgba(255,255,255,.08);border:1px solid rgba(201,162,39,.35);border-radius:12px;padding:12px 18px;text-align:center;min-width:74px}
.sk-cd-unit b{display:block;font-size:30px;font-weight:700;color:#c8a96b;font-variant-numeric:tabular-nums}
.sk-cd-unit i{font-size:11px;color:#94a3b8;font-style:normal;text-transform:uppercase}

/* detail layout */
.sk-event-detail{padding:48px 0}
.sk-event-detail-grid{display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}
.sk-event-main{min-width:0}

/* editorial content — elegant typography */
.sk-event-desc{font-size:16.5px;line-height:1.9;color:#3a4756;max-width:68ch}
.sk-event-desc p{margin:0 0 18px}
.sk-event-desc strong{color:#17304f}
.sk-event-desc h2{position:relative;font-size:26px;color:#17304f;margin:40px 0 16px;padding-bottom:12px}
.sk-event-desc h3{position:relative;font-size:20px;color:#17304f;margin:36px 0 14px;padding-bottom:12px}
.sk-event-desc h2::after,.sk-event-desc h3::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:3px;border-radius:2px;background:linear-gradient(90deg,#c8a96b,rgba(200,169,107,.12))}
.sk-event-desc a{color:#244a76;text-decoration:underline;text-decoration-color:rgba(200,169,107,.55);text-underline-offset:3px;transition:color .2s}
.sk-event-desc a:hover{color:#b08d4e}
.sk-event-desc ul{list-style:none;margin:0 0 24px;padding:0}
.sk-event-desc ul li{position:relative;padding:9px 0 9px 34px;border-bottom:1px solid #f0e9d8}
.sk-event-desc ul li::before{content:"";position:absolute;left:2px;top:17px;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#e8d5a8,#c8a96b);box-shadow:0 0 0 3px rgba(200,169,107,.16)}
.sk-event-desc ul li:last-child{border-bottom:0}
.sk-event-desc p:has(> em:only-child){margin:28px 0;padding:20px 24px;background:#f8f4ee;border-left:3px solid #c8a96b;border-radius:0 14px 14px 0;color:#4b5563;font-style:italic}
.sk-event-desc img{border-radius:14px}
.sk-event-desc blockquote{margin:28px 0;padding:20px 24px;background:#f8f4ee;border-left:3px solid #c8a96b;border-radius:0 14px 14px 0;color:#4b5563;font-style:italic}
.sk-event-desc hr{border:0;height:1px;margin:34px 0;background:linear-gradient(90deg,transparent,#e0d3b4,transparent)}

.sk-event-location{margin-top:36px;background:#f8f4ee;border:1px solid #ece2ca;border-radius:14px;padding:26px}
.sk-event-location h3{margin-top:0}
.sk-event-series{margin-top:36px}
.sk-series-list{list-style:none;margin:0;padding:0}
.sk-series-list li{padding:12px 0;border-bottom:1px solid #f0e9d8;display:flex;justify-content:space-between;gap:12px}
.sk-series-list li a{color:#17304f;text-decoration:none;font-weight:600}
.sk-series-list li a:hover{color:#b08d4e}
.sk-series-when{color:#64748b;font-size:13px;white-space:nowrap}

/* sidebar */
.sk-event-side{position:sticky;top:96px}
.sk-host-card{position:relative;overflow:hidden;background:#fff;border:1px solid #e8dfc8;border-radius:16px;padding:32px 24px 26px;text-align:center;box-shadow:0 6px 24px rgba(23,48,79,.06)}
.sk-host-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#17304f,#c8a96b)}
.sk-host-label{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#b08d4e;background:rgba(200,169,107,.12);border:1px solid rgba(200,169,107,.35);padding:4px 12px;border-radius:99px;margin-bottom:16px}
.sk-host-card img{border-radius:50%;width:76px;height:76px;object-fit:cover;margin-bottom:12px;box-shadow:0 0 0 3px #f8f4ee,0 0 0 5px rgba(200,169,107,.4)}
.sk-host-card strong{display:block;color:#17304f;font-size:16px;margin-bottom:8px}
.sk-host-card p{font-size:13.5px;line-height:1.7;color:#64748b;margin:0}
.sk-reg-card{background:#fff;border:1px solid #e8dfc8;border-radius:14px;padding:24px;margin-top:20px}
.sk-reg-card h3{margin:0 0 14px;color:#17304f}
.sk-reg-card input{width:100%;padding:11px 14px;border:1px solid #e8dfc8;border-radius:10px;margin-bottom:10px;font-size:14px;box-sizing:border-box}
.sk-reg-card button{width:100%}
.sk-reg-note{font-size:12px;color:#64748b;margin:10px 0 0}

/* calendar */
.sk-cal{background:#fff;border:1px solid #e8dfc8;border-radius:16px;padding:20px}
.sk-cal-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.sk-cal-nav strong{color:#17304f;font-size:17px}
.sk-cal-btn{color:#244a76;text-decoration:none;font-weight:600;font-size:14px;padding:8px 14px;border:1px solid #e8dfc8;border-radius:10px}
.sk-cal-btn:hover{background:#f8f4ee}
.sk-cal-grid{width:100%;border-collapse:collapse;table-layout:fixed}
.sk-cal-grid th{font-size:12px;color:#64748b;text-transform:uppercase;padding:8px 4px;text-align:center;letter-spacing:.05em}
.sk-cal-day{border:1px solid #f0e9d8;vertical-align:top;padding:6px;min-height:88px;height:88px;overflow:hidden}
.sk-cal-day.is-today{background:#faf6ec;box-shadow:inset 0 0 0 2px #c8a96b}
.sk-cal-num{display:block;font-size:13px;font-weight:700;color:#17304f;margin-bottom:4px}
.sk-cal-dot{display:block;font-size:11px;color:#244a76;background:#eef2f7;border-radius:6px;padding:2px 6px;margin-bottom:2px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sk-cal-dot.s-live{background:#fee2e2;color:#b91c1c}
.sk-cal-dot.s-past{opacity:.55}
.sk-cal-more{font-size:11px;color:#94a3b8}
.sk-cal-empty{background:#fafaf7}

/* related + admin status colors */
.sk-events-related{padding:32px 0 48px}
.sk-st-live{color:#b91c1c}
.sk-st-upcoming{color:#1d4ed8}
.sk-st-cancelled{color:#b91c1c}
.sk-ea-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.sk-ea-days{display:flex;flex-wrap:wrap;gap:8px}
.sk-ea-days label{display:inline-flex;align-items:center;gap:4px;font-weight:400}

@media(max-width:900px){
    .sk-event-detail-grid{grid-template-columns:1fr}
    .sk-ea-grid{grid-template-columns:1fr}
    .sk-cal-day{height:64px;min-height:64px}
    .sk-cal-dot{font-size:10px}
}
@media(max-width:560px){
    .sk-events-grid{grid-template-columns:1fr}
    .sk-cd-units{gap:8px}
    .sk-cd-unit{min-width:60px;padding:8px 10px}
    .sk-cd-unit b{font-size:22px}
}
