/* "Right now" homepage card (schedule-now.js). Matches the Letterboxd /
   Last.fm glass cards in dark mode and the --km-* card in light mode. */
.schedule-now-wrap { width: 100%; max-width: 340px; margin: 0 auto; }
.schedule-now {
  --sn-class: #7FB2FF; --sn-study: #AEB8C2; --sn-train: #FFB25E; --sn-hockey: #FF7066;
  --sn-meal: #74D493; --sn-self: #6FD3DE; --sn-club: #C9A2FF; --sn-free: #E6D57C; --sn-sleep: #A9A5FF; --sn-oh: #F29BCB; --sn-laundry: #D9B98A;
  --sn-text: #ffffff; --sn-muted: rgba(255, 255, 255, 0.62); --sn-track: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  padding: 0.9rem 1rem 0.85rem;
  display: flex; flex-direction: column; gap: 0.35rem;
  font-family: 'IBM Plex Sans', sans-serif; color: var(--sn-text); text-align: left;
  transition: background-color var(--bg-fade-duration, .4s) ease, border-color var(--bg-fade-duration, .4s) ease;
}
.schedule-now [data-c="class"] { --c: var(--sn-class); }
.schedule-now [data-c="study"] { --c: var(--sn-study); }
.schedule-now [data-c="train"] { --c: var(--sn-train); }
.schedule-now [data-c="hockey"] { --c: var(--sn-hockey); }
.schedule-now [data-c="meal"] { --c: var(--sn-meal); }
.schedule-now [data-c="self"] { --c: var(--sn-self); }
.schedule-now [data-c="club"] { --c: var(--sn-club); }
.schedule-now [data-c="free"] { --c: var(--sn-free); }
.schedule-now [data-c="sleep"] { --c: var(--sn-sleep); }
.schedule-now [data-c="oh"] { --c: var(--sn-oh); }
.schedule-now [data-c="laundry"] { --c: var(--sn-laundry); }
.schedule-now .sn-kicker { font-size: 0.72rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--sn-muted); }
.schedule-now .sn-status { display: flex; align-items: center; gap: 0.55rem; font-size: 1.12rem; font-weight: 600; line-height: 1.25; }
.schedule-now .sn-dot { flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 4px color-mix(in srgb, var(--c) 22%, transparent); }
.schedule-now .sn-next { font-size: 0.82rem; color: var(--sn-muted); }
.schedule-now .sn-strip { position: relative; height: 8px; margin-top: 0.45rem; border-radius: 4px; background: var(--sn-track); overflow: hidden; }
.schedule-now .sn-strip i { position: absolute; top: 0; bottom: 0; background: var(--c); opacity: 0.85; border-right: 1px solid rgba(0, 0, 0, 0.25); }
.schedule-now .sn-mark { position: absolute; top: -2px; bottom: -2px; width: 2px; margin-left: -1px; background: var(--sn-text); border-radius: 1px; }
.schedule-now .sn-axis { position: relative; height: 0.9rem; font-size: 0.64rem; color: var(--sn-muted); }
.schedule-now .sn-axis span { position: absolute; transform: translateX(-50%); }
.schedule-now .sn-axis span:first-child { transform: none; }
.schedule-now .sn-axis span:last-child { transform: translateX(-100%); }
.schedule-now .sn-link { margin-top: 0.3rem; font-size: 0.82rem; font-weight: 600; color: var(--sn-text); text-decoration: underline; text-underline-offset: 3px; align-self: flex-start; }
.schedule-now .sn-link:hover { opacity: 0.8; }

body.theme-light .schedule-now, body.dark-foreground .schedule-now {
  --sn-class: #2F6FD0; --sn-study: #6B7784; --sn-train: #D27A12; --sn-hockey: #D13B31;
  --sn-meal: #2E9A4C; --sn-self: #1F8F9B; --sn-club: #7E47C2; --sn-free: #A48E1C; --sn-sleep: #5A55C9; --sn-oh: #B3307E; --sn-laundry: #9A7340;
  --sn-text: var(--km-text, #26242E); --sn-muted: var(--km-muted, #64606F); --sn-track: rgba(38, 36, 46, 0.08);
  background: var(--km-card, rgba(255, 255, 255, 0.74));
  border-color: rgba(38, 36, 46, 0.12);
  box-shadow: 0 12px 28px rgba(38, 36, 46, 0.05);
}
body.theme-light .schedule-now .sn-strip i { border-right-color: rgba(255, 255, 255, 0.6); }
