/* NGNS meetings hub + resources (Oct 27, 2026) */
:root { --thu: #6f8f12; --fri: #e0603f; --fri-2: #7b5cff; }
:root[data-theme="dark"] { --thu: #c5e24a; --fri: #ff9a76; --fri-2: #a993ff; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --thu: #c5e24a; --fri: #ff9a76; --fri-2: #a993ff; } }

.mt-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 860px) { .mt-grid { grid-template-columns: 1fr; } }

.mt-card { position: relative; display: flex; flex-direction: column; background: var(--card); border-radius: 28px; overflow: hidden;
  box-shadow: var(--shadow); border: 1px solid var(--line); transition: transform .3s, box-shadow .3s; }
.mt-card:hover { transform: translateY(-4px); }
.mt-card .mt-banner { display: block; width: 100%; height: auto; aspect-ratio: 5 / 2; object-fit: cover; background: #111; }
.mt-body { padding: 22px 26px 26px; display: grid; gap: 12px; flex: 1; align-content: start; }
.mt-card h3 { margin: 0; font: 700 clamp(26px, 3vw, 32px)/1.1 var(--display); }
.mt-when { display: flex; flex-wrap: wrap; gap: 8px; }
.mt-when span { font: 600 12.5px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; padding: 8px 12px; border-radius: 99px;
  background: color-mix(in srgb, var(--accent-m) 12%, transparent); color: var(--accent-m); }
.mt-card p { margin: 0; color: var(--muted); }
.mt-next { font: 600 14px/1.4 var(--mono); color: var(--text); }
.mt-next b { color: var(--accent-m); }
.mt-actions { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 4px; align-items: center; }
.mt-actions a { font: 600 15px var(--body); color: var(--accent-m); text-decoration: none; }
.mt-actions a:hover { text-decoration: underline; }
.mt-thu { --accent-m: var(--thu); }
.mt-fri { --accent-m: var(--fri); }
.mt-badge { position: absolute; top: 14px; right: 14px; z-index: 2; font: 700 13px/1 var(--body); padding: 9px 13px; border-radius: 99px;
  color: #fff; background: linear-gradient(90deg, var(--fri-2), #ff6fa5); box-shadow: 0 6px 18px rgba(123, 92, 255, .35);
  animation: mtBob 2.6s ease-in-out infinite; }
@keyframes mtBob { 50% { transform: translateY(-3px) rotate(-2deg); } }
@media (prefers-reduced-motion: reduce) { .mt-badge { animation: none; } .mt-card:hover { transform: none; } }

.mt-res { margin-top: 28px; display: grid; grid-template-columns: auto 1fr auto; gap: 20px; align-items: center; padding: 24px 28px;
  border-radius: 26px; text-decoration: none; color: var(--text); border: 1.5px dashed color-mix(in srgb, var(--mint) 55%, transparent);
  background: color-mix(in srgb, var(--mint) 7%, transparent); transition: transform .25s; }
.mt-res:hover { transform: translateY(-3px); }
.mt-res .ico { font-size: 40px; line-height: 1; }
.mt-res b { display: block; font: 700 24px/1.15 var(--display); }
.mt-res span.sub { color: var(--muted); }
.mt-res .go { font: 600 15px var(--body); color: var(--mint); white-space: nowrap; }
@media (max-width: 600px) { .mt-res { grid-template-columns: auto 1fr; } .mt-res .go { grid-column: 1 / -1; } }

/* Resources timeline */
.rs-filter { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 6px; }
.rs-filter button { font: 600 14px var(--body); padding: 10px 16px; border-radius: 99px; cursor: pointer; color: var(--text);
  background: var(--card); border: 1.5px solid var(--line); }
.rs-filter button[aria-pressed="true"] { border-color: var(--mint); background: color-mix(in srgb, var(--mint) 14%, var(--card)); }
.rs-tag { display: inline-block; font: 700 11.5px/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; padding: 6px 10px;
  border-radius: 99px; margin-right: 8px; vertical-align: 1px; }
.rs-tag.thu { color: var(--thu); background: color-mix(in srgb, var(--thu) 14%, transparent); }
.rs-tag.fri { color: var(--fri); background: color-mix(in srgb, var(--fri) 14%, transparent); }
.sct-session.rs-thu .sct-date .m { color: var(--thu); }
.sct-session.rs-fri .sct-date .m { color: var(--fri); }
.sct-session.rs-fri .go, .sct-session.rs-fri .sct-when b { color: var(--fri); }
.sct-session.rs-thu .go, .sct-session.rs-thu .sct-when b { color: var(--thu); }
.rs-month { margin: 30px 0 4px; font: 600 13px/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: var(--muted); list-style: none; }
.rs-empty { color: var(--muted); }
.rs-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; max-width: 860px; }
@media (max-width: 640px) { .rs-facts { grid-template-columns: 1fr; } }
.rs-fact { display: grid; grid-template-columns: 96px 1fr; gap: 16px; align-items: center; background: var(--card); box-shadow: var(--shadow);
  border-radius: 22px; padding: 14px; text-decoration: none; color: var(--text); }
.rs-fact img { width: 96px; height: 64px; object-fit: cover; border-radius: 12px; }
.rs-fact b { display: block; text-transform: none; letter-spacing: 0; font: 700 19px/1.15 var(--display); }
.rs-fact > span { display: grid; gap: 4px; }
.rs-fact > span > span { font: 600 12px/1.4 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
