/* ============================================
   CUBIE FX — economic calendar
   ============================================ */
.cal-intro{background:var(--card);border:1px solid var(--line);border-radius:15px;
  padding:18px 20px;margin-bottom:16px}
.cal-intro p{font-size:13.5px;color:var(--muted);line-height:1.8;max-width:88ch}
.cal-intro strong{color:#F87171}

.cal-week{display:flex;flex-direction:column;gap:14px;margin-bottom:30px}

.cal-day{background:var(--card);border:1px solid var(--line);border-radius:15px;overflow:hidden}
.cal-day.today{border-color:rgba(124,92,255,.45)}
.cal-day-head{display:flex;align-items:center;gap:11px;padding:15px 18px;
  border-bottom:1px solid var(--line);background:rgba(255,255,255,.02)}
.cal-day-head b{font-size:14px;font-weight:800}
.cal-today{font-size:9.5px;font-weight:800;background:var(--grad);color:#fff;
  padding:3px 10px;border-radius:999px}
.cal-count{margin-left:auto;font-size:11.5px;color:var(--muted2)}

.cal-tablewrap{overflow-x:auto}
.cal-table{width:100%;border-collapse:collapse;min-width:720px}
.cal-table th{text-align:left;font-size:10px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--muted2);font-weight:800;padding:12px 14px}
.cal-table td{padding:13px 14px;border-top:1px solid rgba(255,255,255,.05);
  font-size:12.5px;color:var(--muted);vertical-align:top}
.cal-row:hover{background:rgba(255,255,255,.02)}
.cal-row td b{font-size:13px;color:var(--ink);display:block}
.cal-note{display:block;font-size:11.5px;color:var(--muted2);margin-top:4px;line-height:1.6}

.cal-time{white-space:nowrap;font-size:13px;color:var(--ink);font-weight:600}
.cal-time em{display:block;font-style:normal;font-size:10px;color:var(--muted2);font-weight:400}
.cal-cur{display:inline-block;font-family:"Manrope",sans-serif;font-weight:800;font-size:11px;
  background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:6px;padding:4px 9px}
.cal-num{text-align:right;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:12.5px;white-space:nowrap}

.cal-imp{display:inline-block;font-size:10px;font-weight:800;padding:4px 10px;border-radius:6px;white-space:nowrap}
.cal-imp.imp-high{background:rgba(239,68,68,.15);color:#F87171}
.cal-imp.imp-medium{background:rgba(245,158,11,.15);color:#FBBF24}
.cal-imp.imp-low{background:rgba(148,163,184,.14);color:#94A3B8}
.cal-row.imp-high td:first-child{box-shadow:inset 3px 0 0 #EF4444}
.cal-row.imp-medium td:first-child{box-shadow:inset 3px 0 0 #F59E0B}

.cal-empty{font-size:12.5px;color:var(--muted2);padding:18px}

.cal-h2{font-size:19px;font-weight:800;margin:6px 0 14px}
.cal-sessions{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.cal-session{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.cal-session b{display:block;font-size:14px;font-weight:800}
.cal-hours{display:block;font-size:12px;color:#A78BFA;font-family:"JetBrains Mono",ui-monospace,monospace;
  margin:6px 0 10px}
.cal-session p{font-size:12px;color:var(--muted2);line-height:1.7}

@media (max-width:640px){
  .cal-day-head{flex-wrap:wrap}
  .cal-num{text-align:left}
}
