/*
Theme Name: Coaching Dojo LMS
Template: course
Description: Reskin of the Sensei "course" theme to match The Samurai Coaching Dojo learning-site brief (restrained red, Newsreader + IBM Plex Sans, numbered kata motif, hairline rules, flat fields).
Version: 1.4.0
Author: dojo-lms project
*/

@import url('https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400&family=IBM+Plex+Sans:wght@400;500;600&display=swap');

:root {
  --dojo-rule: rgba(27, 29, 26, .22);
  --dojo-rule-strong: rgba(27, 29, 26, .42);
  --dojo-vermilion: #E14A38;
  --dojo-ink: #1B1D1A;
  --dojo-red: #B8322A;
  --dojo-red-800: #781F1B;
  --dojo-rice: #F8F7F2;
  --dojo-paper: #EEE9DD;
}

/* Locked-lesson notice: flat bordered field, no shadow */
.sensei-course-theme-locked-lesson-notice {
  background: var(--dojo-rice);
  border: 1px solid var(--dojo-rule);
  border-radius: 2px;
  box-shadow: none;
}
.sensei-course-theme-locked-lesson-notice__icon svg {
  color: var(--dojo-red);
}
.sensei-course-theme-locked-lesson-notice__title {
  font-family: 'Newsreader', Georgia, serif;
  font-weight: 500;
  text-transform: none;
}
.sensei-course-theme__button.is-primary {
  background: var(--dojo-red);
  color: var(--dojo-rice);
  border-radius: 2px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.sensei-course-theme__button.is-primary:hover {
  background: var(--dojo-red-800);
}
.sensei-course-theme__button.is-secondary {
  color: var(--dojo-ink);
  text-decoration: underline;
}

/* PMPro paywall card */
.pmpro_card {
  border: 1px solid var(--dojo-rule);
  border-radius: 2px;
  box-shadow: none;
  background: var(--dojo-rice);
}
.pmpro_card_title {
  font-family: 'Newsreader', Georgia, serif;
  font-weight: 500;
  text-transform: none;
}
.pmpro_card_title svg {
  stroke: var(--dojo-red);
}
.pmpro_btn {
  background: var(--dojo-red);
  color: var(--dojo-rice) !important;
  border-radius: 2px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border: none;
}
.pmpro_btn:hover {
  background: var(--dojo-red-800);
}

/* Navigation labels — pin to old-site body scale (16px), no fluid inflation */
.wp-block-navigation {
  font-size: 1rem;
}
.wp-block-navigation-item__content {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 1rem;
  letter-spacing: 0.02em;
}

/* Kickoff / status notice on the course landing — flat callout, red hairline accent */
.dojo-kickoff-notice {
  background: var(--dojo-rice);
  border: 1px solid var(--dojo-rule);
  border-left: 3px solid var(--dojo-red);
  border-radius: 2px;
  padding: 0.9rem 1.1rem;
  margin-bottom: 1.4rem;
}
.dojo-kickoff-notice p {
  margin: 0;
}

/* Full-bleed the opening-page cover/band sections edge-to-edge (hero, torii bands, values) */
.wp-block-cover.alignfull,
.wp-block-group.dojo-values.alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Hide the WooCommerce cart chrome (learning site, not a shop) */
.wp-block-woocommerce-cart-link,
.wc-block-mini-cart,
.wp-block-woocommerce-mini-cart {
  display: none !important;
}

/* Opening/splash page — dark values band */
.dojo-values {
  background: var(--dojo-ink);
}
.dojo-values .wp-block-separator {
  max-width: 6rem;
  border-color: rgba(248, 247, 242, .3);
}

/* Schedule/recordings call cards — bordered field, flat, hairline rules */
.dojo-call-card {
  background: #fff;
  border: 1px solid var(--dojo-rule-strong);
  border-top: 3px solid var(--dojo-red);
  border-radius: 2px;
  padding: 1.1rem 1.35rem 1.2rem;
  margin-bottom: 1.5rem;
}
.dojo-call-card .wp-block-columns {
  margin-bottom: 0;
  gap: 1.5rem;
}
.dojo-call-card p {
  margin: 0 0 0.4rem;
}
.dojo-call-card p:last-child {
  margin-bottom: 0;
}

/* Field labels inside the recording/schedule templates (Phase 2) */
.dojo-eyebrow {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--dojo-ink);
  display: inline-block;
  border-bottom: 1px solid var(--dojo-rule);
  padding-bottom: 2px;
  margin-bottom: 4px;
}
