/* ═══════════════════════════════════════════════════════════
   RESET DISCIPLINE · PREMIUM LAYOUT SYSTEM v4
   Layout-first. Safe-area-aware. No wasted space.
═══════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@400;600;700&family=Barlow:wght@300;400;500;600&display=swap');

:root {
  --gold:        #C9A84C;
  --gold-bright: #E8C96A;
  --gold-dim:    #8B6F2E;
  --gold-glow:   rgba(201,168,76,0.18);
  --gold-glow2:  rgba(201,168,76,0.32);
  --bg:   #0A0A0A;
  --bg2:  #111111;
  --bg3:  #181818;
  --bg4:  #202020;
  --surface:  rgba(255,255,255,0.04);
  --surface2: rgba(255,255,255,0.07);
  --border:  rgba(201,168,76,0.15);
  --border2: rgba(201,168,76,0.28);
  --text:  #F0EDE8;
  --text2: #A09890;
  --text3: #585450;
  --red:   #E05252;
  --blue:  #7CB8FF;
  --r:  12px;
  --r2: 18px;
  --r3: 26px;
  --shadow:      0 6px 28px rgba(0,0,0,0.7);
  --gold-shadow: 0 0 24px rgba(201,168,76,0.2);
  --t: 0.18s cubic-bezier(0.4,0,0.2,1);
  --font-d: 'Bebas Neue', sans-serif;
  --font-c: 'Barlow Condensed', sans-serif;
  --font-b: 'Barlow', sans-serif;
  --font-mono: 'Barlow Condensed', sans-serif;
  --sat: env(safe-area-inset-top, 0px);
  --sar: env(safe-area-inset-right, 0px);
  --sab: env(safe-area-inset-bottom, 0px);
  --sal: env(safe-area-inset-left, 0px);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
  background: var(--bg);
  -webkit-tap-highlight-color: transparent;
  overscroll-behavior: none;
  height: 100%;
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-b);
  font-size: 15px;
  line-height: 1.5;
  height: 100%;
  -webkit-font-smoothing: antialiased;
}

#app {
  max-width: 430px;
  margin: 0 auto;
  min-height: 100vh;
  min-height: 100dvh;
  position: relative;
}

/* ── SCREEN ── */
.screen {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  background: var(--bg);
  animation: pgIn 0.22s cubic-bezier(0.4,0,0.2,1) both;
  overflow-x: hidden;
}

@keyframes pgIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

.screen.center {
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: calc(var(--sat) + 20px) 24px calc(var(--sab) + 24px);
}

/* Scrollable area */
.screenBody {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  padding-bottom: calc(var(--sab) + 20px);
}



/* Screen needs relative positioning so absolute topbar works */
.mainHomeBg,
.courseHomeBg,
.aiPraxisScreen {
  position: relative;
}



/* ── TYPOGRAPHY ── */
h1 { font-family: var(--font-d); font-size: 38px; line-height: 1.0; letter-spacing: 0.02em; color: var(--text); }
h2 { font-family: var(--font-d); font-size: 26px; line-height: 1.1; color: var(--text); }
h3 { font-family: var(--font-c); font-size: 14px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text); }
p { color: var(--text2); font-size: 14px; line-height: 1.6; }
.small { font-size: 12px; color: var(--text3); }
label {
  display: block;
  font-family: var(--font-c);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold-dim);
  margin-bottom: 5px;
  margin-top: 14px;
}
label:first-child { margin-top: 0; }

/* ── TAGS ── */
.tag {
  display: inline-block !important;
  font-family: var(--font-c);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(201,168,76,0.10);
  border: 1px solid rgba(201,168,76,0.28);
  border-radius: 30px;
  padding: 3px 11px;
  line-height: 1.5;
  width: auto !important;
}
.cleanTag { }
.miniLabel {
  font-family: var(--font-c);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--gold);
}
.sectionLabel {
  font-family: var(--font-c);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--text3);
}

/* ── CARD ── */
.card {
  background: var(--bg3);
  border: 2px solid var(--border);
  border-radius: var(--r2);
  padding: 16px;
  margin-bottom: 10px;
}
.card.article p { color: var(--text2); font-size: 14px; line-height: 1.75; margin-bottom: 12px; }
.card.article p:last-child { margin-bottom: 0; }
.card h3 { margin-bottom: 8px; }
.card label { color: var(--gold-dim); }

/* ── MAIN HOME HERO ── */
.mainHomeHero {
  position: relative;
  width: 100%;
  flex-shrink: 0;
  height: min(56vh, 390px);
  background-size: cover;
  background-position: center top;
  overflow: hidden;
}
.mainHomeHero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,0.05) 0%, rgba(10,10,10,0.38) 55%, rgba(10,10,10,0.97) 100%);
}
.mainHomeHeroContent {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 16px 18px 18px;
  z-index: 2;
}
.mainHomeTitle {
  font-family: var(--font-d);
  font-size: clamp(30px, 8.5vw, 44px);
  line-height: 1.0;
  padding: 6px 0 0;
  text-shadow: 0 2px 14px rgba(0,0,0,0.9);
}
.mainHomeSubtitle {
  font-family: var(--font-c);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  padding: 4px 0 0;
  opacity: 0.85;
}
.mainChoiceGrid {
  padding: 10px 16px calc(var(--sab) + 16px);
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: auto;
}

/* ── COURSE / PRAXIS HERO ── */
.courseHero, .aiPraxisHero {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  height: min(36vh, 250px);
  background-size: cover;
  background-position: center top;
  overflow: hidden;
}
.courseHero::after, .aiPraxisHero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,0.08) 0%, rgba(10,10,10,0.58) 58%, rgba(10,10,10,0.97) 100%);
}
.courseHeroContent, .aiPraxisHeroContent {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 13px 18px 16px;
  z-index: 2;
}
.courseHeroTitle, .aiPraxisTitle {
  font-family: var(--font-d);
  font-size: clamp(24px, 6.5vw, 36px);
  line-height: 1.0;
  padding: 4px 0 0;
  text-shadow: 0 2px 10px rgba(0,0,0,0.9);
}
.courseHeroSub { font-size: 13px; color: rgba(240,237,232,0.72); padding: 3px 0 0; }

/* ── DAY HERO ── */
.dayHero {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  height: min(32vh, 230px);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.dayHero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,0.05) 0%, rgba(10,10,10,0.88) 100%);
}
.dayHeroContent {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 13px 18px 16px;
  z-index: 2;
}
.dayPill {
  display: inline-block;
  font-family: var(--font-c);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(10,10,10,0.7);
  border: 1px solid var(--border2);
  border-radius: 20px;
  padding: 3px 10px;
  margin-bottom: 4px;
}

/* ── GOAL HERO ── */
.goalHero {
  position: relative;
  flex-shrink: 0;
  width: 100%;
  height: min(26vh, 190px);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.goalHero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,0.1) 0%, rgba(10,10,10,0.9) 100%);
}
.goalHeroContent {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 12px 18px 15px;
  z-index: 2;
}

/* ── CHOICE CARDS ── */
.choiceCard {
  position: relative;
  height: 100px;
  border-radius: var(--r2);
  overflow: hidden;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  border: 2px solid var(--border);
  transition: var(--t);
  display: block;
  width: 100%;
}
.choiceCard::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10,10,10,0.92) 0%, rgba(10,10,10,0.28) 100%);
}
.choiceCard:active { transform: scale(0.98); border-color: var(--gold); }
.choiceInner {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 18px;
}
.choiceSubLabel {
  display: block;
  font-family: var(--font-c);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 2px;
}
.choiceText h3 {
  font-family: var(--font-d);
  font-size: 20px;
  text-transform: uppercase;
  color: var(--text);
  line-height: 1.1;
  text-shadow: 0 1px 8px rgba(0,0,0,0.8);
  letter-spacing: 0.03em;
}
.choiceArrow {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 2px solid var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 17px;
  flex-shrink: 0;
  background: rgba(201,168,76,0.08);
}

/* ── PATH GRID ── */
.pathGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  padding: 0 16px 10px;
}
.pathImageBtn {
  position: relative;
  height: 118px;
  border-radius: var(--r);
  overflow: hidden;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  border: 2px solid var(--border);
  transition: var(--t);
}
.pathImageBtn::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10,10,10,0.92) 0%, rgba(10,10,10,0.1) 100%);
}
.pathImageBtn:active { transform: scale(0.96); border-color: var(--gold); }
.pathImageBtn span {
  position: absolute;
  bottom: 9px; left: 11px; right: 11px;
  z-index: 2;
  font-family: var(--font-c);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text);
  line-height: 1.3;
}

/* ── 3-TILE GRID ── */
.grid3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  padding: 0 16px 14px;
}
.tile {
  position: relative;
  aspect-ratio: 1;
  border-radius: var(--r);
  overflow: hidden;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  border: 2px solid var(--border);
  transition: var(--t);
}
.tile::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10,10,10,0.9) 0%, rgba(10,10,10,0.15) 100%);
}
.tile:active { transform: scale(0.94); border-color: var(--gold); }
.tile span {
  position: absolute;
  bottom: 7px; left: 7px; right: 7px;
  z-index: 2;
  font-family: var(--font-c);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--text);
  line-height: 1.2;
}

/* ── METRIC GAUGES ── */
.metricGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  padding: 12px 16px 8px;
}
.courseMetricGrid { padding: 0 16px 0; }
.metricCard {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 12px 4px 10px;
  text-align: center;
  position: relative;
}
.metricCard h3 {
  font-family: var(--font-c);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold-dim);
  margin-bottom: 5px;
}
.gaugeWrap { width: 80px; height: 52px; margin: 0 auto 4px; }
.gaugeWrap svg { width: 80px; height: 52px; display: block; }
.metricValue {
  font-family: var(--font-d);
  font-size: 24px;
  line-height: 1;
  color: var(--text);
  letter-spacing: 0.02em;
}
/* Thin gold separator lines, no background */
.metricGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  padding: 0 16px;
  border-top: 1px solid rgba(201,168,76,0.18);
  border-bottom: 1px solid rgba(201,168,76,0.18);
  background: transparent;
}
.metricCard + .metricCard {
  border-left: 1px solid rgba(201,168,76,0.18);
}

/* ── MODULE CARDS ── */
.moduleGrid { display: flex; flex-direction: column; gap: 8px; padding: 8px 16px 14px; }
.moduleImageCard {
  position: relative;
  height: 78px;
  border-radius: var(--r2);
  overflow: hidden;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  border: 2px solid var(--border);
  transition: var(--t);
  display: flex;
  align-items: center;
}
.moduleImageCard::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10,10,10,0.96) 0%, rgba(10,10,10,0.55) 60%, rgba(10,10,10,0.1) 100%);
}
.moduleImageCard > * { position: relative; z-index: 2; }
.moduleImageCard:active { border-color: var(--gold); transform: scale(0.99); }
.moduleImageCard.lockedModule { opacity: 0.4; cursor: default; }
.moduleNum {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(201,168,76,0.12);
  border: 2px solid var(--gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-d);
  font-size: 18px;
  color: var(--gold);
  flex-shrink: 0;
  margin-left: 14px;
}
.moduleCardText { flex: 1; padding: 0 14px 0 12px; }
.moduleCardText h3 { font-size: 14px; margin-bottom: 2px; text-transform: none; letter-spacing: 0; }
.moduleCardText p { font-size: 11px; color: var(--text3); }

/* ── CHALLENGE CARDS ── */
.challengeCard {
  background: var(--bg3);
  border: 2px solid var(--border);
  border-radius: var(--r2);
  padding: 14px;
  margin-bottom: 8px;
  cursor: pointer;
  transition: var(--t);
  display: flex;
  align-items: center;
  gap: 14px;
}
.challengeCard:active { transform: scale(0.98); border-color: var(--gold); }
.challengeDash { display: flex; align-items: center; gap: 14px; width: 100%; }
.ring { position: relative; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.ringInner { position: absolute; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.ringInner strong { font-family: var(--font-d); font-size: 14px; color: var(--gold); line-height: 1; }
.ringInner span { font-size: 9px; color: var(--text3); margin-top: 1px; }
.historyItem { padding: 9px 0; border-bottom: 1px solid var(--border); font-size: 13px; color: var(--text2); line-height: 1.5; }
.historyItem:last-child { border-bottom: none; }
.historyItem b { color: var(--text); }

/* ── EXTRA CARDS ── */
.extraGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; padding: 8px 16px 14px; }
.extraCard {
  border-radius: var(--r2);
  overflow: hidden;
  border: 2px solid var(--border);
  cursor: pointer;
  transition: var(--t);
  background: var(--bg3);
  display: flex;
  flex-direction: column;
}
.extraCard:active { transform: scale(0.96); border-color: var(--gold); }
.extraThumb { height: 110px; background-size: cover; background-position: center; position: relative; flex-shrink: 0; }
.extraThumb::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(10,10,10,0.55), transparent 60%); }
.extraText { padding: 10px 12px 12px; flex: 1; }
.extraText h3 { font-family: var(--font-c); font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text); margin-bottom: 3px; line-height: 1.3; }
.extraText p { font-size: 11px; color: var(--gold); font-weight: 600; font-family: var(--font-c); letter-spacing: 0.07em; text-transform: uppercase; }

/* ── ARCHIVE ── */
.archiveDayCard { width: 100%; text-align: left; background: var(--bg3); border: 2px solid var(--border); border-radius: var(--r2); padding: 14px; margin-bottom: 8px; cursor: pointer; transition: var(--t); display: block; }
.archiveDayCard:active { border-color: var(--gold); transform: scale(0.99); }
.panelTitle { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.archiveChat { background: var(--bg2); }
.archiveMsg { padding: 9px 12px; border-radius: 9px; margin-bottom: 7px; font-size: 13px; line-height: 1.55; white-space: pre-wrap; }
.archiveMsg.coach { background: var(--surface); border-left: 2px solid var(--gold); color: var(--text2); }
.archiveMsg.user { background: rgba(201,168,76,0.07); border-left: 2px solid var(--gold-dim); color: var(--text); }

/* ── PROGRESS BAR ── */
.progress { height: 3px; background: var(--surface2); border-radius: 3px; overflow: hidden; margin-top: 7px; }
.bar { height: 100%; background: linear-gradient(90deg, var(--gold-dim), var(--gold)); border-radius: 3px; transition: width 0.7s cubic-bezier(0.4,0,0.2,1); }

/* ── PERFORMANCE TREND ── */
.trendCard, .performanceTrend { background: var(--bg3); border: 2px solid var(--border); border-radius: var(--r2); padding: 14px; margin: 0 16px 10px; }
.trendCard h3, .performanceTrend h3 { font-family: var(--font-c); font-size: 10px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gold); margin-bottom: 10px; }
.trendChart { width: 100%; height: 70px; }
.trendLine { fill: none; stroke: var(--gold); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 3px rgba(201,168,76,0.5)); }
.trendDot { fill: var(--gold); filter: drop-shadow(0 0 3px rgba(201,168,76,0.6)); }
.trendLabels { display: flex; justify-content: space-between; margin-top: 5px; }
.trendLabels span { font-family: var(--font-c); font-size: 9px; color: var(--text3); }

/* ── BUTTONS ── */
.btn {
  display: block;
  width: 100%;
  padding: 14px 20px;
  border-radius: var(--r);
  border: none;
  font-family: var(--font-c);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  cursor: pointer;
  transition: var(--t);
  text-align: center;
  -webkit-appearance: none;
}
.btn:not(.secondary):not(.locked):not(.praxisPrimary) {
  background: linear-gradient(135deg, var(--gold-dim) 0%, var(--gold) 100%);
  color: #080808;
  box-shadow: 0 4px 18px rgba(201,168,76,0.28);
}
.btn:not(.secondary):not(.locked):not(.praxisPrimary):active { transform: scale(0.97); }
.btn.secondary { background: var(--surface); border: 2px solid var(--border2); color: var(--text); }
.btn.secondary:active { background: var(--gold-glow); border-color: var(--gold); transform: scale(0.97); }
.btn.locked { background: transparent; border: 2px solid rgba(255,255,255,0.12); color: var(--text3); cursor: default; }
.btn.praxisPrimary { background: linear-gradient(135deg, var(--gold-dim), var(--gold)); color: #080808; box-shadow: 0 4px 14px rgba(201,168,76,0.28); }
.btn.praxisPrimary:active { transform: scale(0.97); }

/* ── COACH LAUNCH CARD ── */
.coachLaunchCard {
  position: relative;
  border-radius: var(--r2);
  overflow: hidden;
  cursor: pointer;
  margin: 8px 16px;
  border: 2px solid var(--border);
  transition: var(--t);
}
.coachLaunchCard:active { border-color: var(--gold); transform: scale(0.99); }
.coachLaunchCard img { display: block; width: 100%; height: 120px; object-fit: cover; }
.coachLaunchOverlay { background: var(--bg3); padding: 14px 16px; }
.coachLaunchHeadline { font-family: var(--font-d); font-size: 20px; line-height: 1.15; margin: 3px 0 3px; color: var(--text); }
.coachLaunchSub { font-size: 12px; color: var(--text2); line-height: 1.45; }
.coachLaunchBtnWrap { margin-top: 10px; }
.coachLaunchBtn {
  display: inline-block;
  padding: 9px 18px;
  border-radius: 8px;
  border: 2px solid var(--gold);
  background: transparent;
  color: var(--gold);
  font-family: var(--font-c);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  cursor: pointer;
  transition: var(--t);
  -webkit-appearance: none;
}
.coachLaunchBtn:active { background: var(--gold); color: #080808; }

.performanceFolderBtn { margin: 4px 16px 16px; width: calc(100% - 32px); display: flex; align-items: center; justify-content: center; gap: 8px; }

/* ── COACH PAGE — FULL SCREEN ── */
.praxisCoachPage {
  display: flex !important;
  flex-direction: column !important;
  height: 100vh !important;
  height: 100dvh !important;
  overflow: hidden !important;
}


.coachPageHero {
  flex-shrink: 0;
  padding: 14px 18px;
  display: flex;
  gap: 14px;
  align-items: center;
  background: linear-gradient(135deg, var(--bg3), var(--bg2));
  border-bottom: 1px solid var(--border);
}
.coachPageHero img {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--gold);
  box-shadow: var(--gold-shadow);
  flex-shrink: 0;
}
.coachPageHero h1 { font-size: 22px; line-height: 1; }
.coachPageHero p { font-size: 12px; margin-top: 2px; }

/* Chat shell = flex column, fills remaining height */
.chatShell {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}
.coachPageShell {
  padding: 0 16px 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

/* Messages grow to fill space */
.chatMessages {
  flex: 1;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 12px 0 8px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
}

.coachMsgRow { display: flex; gap: 9px; align-items: flex-start; }
.coachBubbleAvatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; border: 1px solid var(--gold); flex-shrink: 0; }
.chatBubble { max-width: 86%; padding: 10px 13px; border-radius: 14px; font-size: 14px; line-height: 1.6; white-space: pre-wrap; word-break: break-word; }
.chatBubble.coach { background: var(--bg3); border: 2px solid var(--border); color: var(--text2); border-radius: 4px 14px 14px 14px; }
.chatBubble.user { background: rgba(201,168,76,0.10); border: 1px solid rgba(201,168,76,0.18); color: var(--text); border-radius: 14px 4px 14px 14px; margin-left: auto; }

/* Chat input — fixed at bottom of shell */
.chatInputRow {
  flex-shrink: 0;
  display: flex;
  gap: 8px;
  padding: 10px 0 8px;
  border-top: 1px solid var(--border);
}
.chatInputRow input {
  flex: 1;
  background: var(--bg3);
  border: 2px solid var(--border);
  border-radius: 22px;
  color: var(--text);
  font-family: var(--font-b);
  font-size: 14px;
  padding: 11px 16px;
  outline: none;
  -webkit-appearance: none;
  margin: 0;
}
.chatInputRow input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px var(--gold-glow); }
.chatInputRow button {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  flex-shrink: 0;
  background: linear-gradient(135deg, var(--gold-dim), var(--gold));
  border: none;
  color: #080808;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--t);
}
.chatInputRow button:active { transform: scale(0.9); }

/* Quick panels */
.quickPanel { padding: 6px 0; flex-shrink: 0; }
.quickPanel.hidden { display: none !important; }
.dayStatusPill { display: inline-block; font-family: var(--font-c); font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gold); background: rgba(201,168,76,0.1); border: 1px solid rgba(201,168,76,0.28); border-radius: 20px; padding: 3px 11px; margin-bottom: 9px; }
.checkModalCard { background: var(--bg3); border: 2px solid var(--border); border-radius: var(--r2); padding: 14px; }
.focusInput { width: 100%; background: var(--bg2); border: 2px solid var(--border); border-radius: 10px; color: var(--text); font-family: var(--font-b); font-size: 14px; padding: 11px 13px; margin-bottom: 7px; outline: none; -webkit-appearance: none; }
.focusInput:focus { border-color: var(--gold); }

/* Dashboard back button */
.dashboardBackBtn {
  flex-shrink: 0;
  display: block;
  width: 100%;
  padding: 13px 20px calc(var(--sab) + 13px);
  border-radius: 0;
  border: none;
  border-top: 1px solid var(--border);
  background: var(--bg2);
  color: var(--text2);
  font-family: var(--font-c);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  text-align: center;
  margin: 0;
  -webkit-appearance: none;
}
.dashboardBackBtn:active { background: var(--surface); color: var(--gold); }

/* ── MODAL ── */
.checkOverlay { position: fixed; inset: 0; background: rgba(0,0,0,0.82); backdrop-filter: blur(10px); z-index: 200; display: flex; align-items: flex-end; animation: ovIn 0.2s ease both; }
@keyframes ovIn { from { opacity: 0; } to { opacity: 1; } }
.checkDialog { width: 100%; max-width: 430px; margin: 0 auto; background: var(--bg3); border: 1px solid var(--border2); border-radius: var(--r3) var(--r3) 0 0; padding: 22px 20px calc(var(--sab) + 36px); animation: sUp 0.26s cubic-bezier(0.4,0,0.2,1) both; max-height: 85dvh; overflow-y: auto; }
@keyframes sUp { from { transform: translateY(100%); } to { transform: translateY(0); } }

/* ── FORMS ── */
input:not([type]),input[type="text"],input[type="email"],input[type="password"],
input[type="number"],input[type="time"],textarea,select {
  width: 100%;
  background: var(--bg2);
  border: 2px solid var(--border);
  border-radius: 11px;
  color: var(--text);
  font-family: var(--font-b);
  font-size: 14px;
  padding: 12px 13px;
  outline: none;
  transition: var(--t);
  -webkit-appearance: none;
  appearance: none;
  margin-top: 5px;
}
input:focus, textarea:focus, select:focus { border-color: var(--gold); box-shadow: 0 0 0 3px var(--gold-glow); background: var(--bg3); }
input::placeholder, textarea::placeholder { color: rgba(240,237,232,0.48); opacity: 1; }
textarea { min-height: 88px; resize: vertical; line-height: 1.6; }
select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23C9A84C' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 13px center; padding-right: 34px; }
select option { background: var(--bg2); color: var(--text); }
input.inputError { border-color: var(--red); }
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 60px #181818 inset !important;
  -webkit-text-fill-color: #F0EDE8 !important;
  caret-color: #F0EDE8;
}

/* Range */
.rangeLine { display: flex; align-items: center; gap: 9px; margin: 7px 0; }
.rangeLine label { margin: 0; width: 76px; font-size: 10px; flex-shrink: 0; color: var(--text3); }
.rangeLine input[type="range"] { flex: 1; margin: 0; padding: 0; height: 4px; background: var(--surface2); border: none; border-radius: 4px; -webkit-appearance: none; cursor: pointer; }
.rangeLine input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 8px var(--gold-glow2); cursor: pointer; }
.rangeVal { font-family: var(--font-c); font-size: 13px; font-weight: 700; color: var(--gold); width: 34px; text-align: right; flex-shrink: 0; }
.sleepSelect { margin-top: 0; margin-bottom: 7px; }

/* ── SPLASH / AUTH ── */
.splashLogo { width: 94px; height: 94px; border-radius: 50%; object-fit: cover; border: 2px solid var(--gold); box-shadow: 0 0 36px rgba(201,168,76,0.22); animation: lPulse 2.5s ease-in-out infinite; }
@keyframes lPulse { 0%,100% { box-shadow: 0 0 36px rgba(201,168,76,0.2); } 50% { box-shadow: 0 0 56px rgba(201,168,76,0.36), 0 0 100px rgba(201,168,76,0.12); } }
.screen.center h1 { font-size: clamp(30px, 8.5vw, 44px); margin-top: 14px; }
.screen.center > p { max-width: 300px; margin-top: 8px; }
.screen.center .card { width: 100%; max-width: 380px; margin-top: 18px; }
.screen.center .grid2 { width: 100%; max-width: 380px; }

/* ── MISC ── */
.privacy { margin: 0 16px 10px; padding: 11px 14px; background: var(--surface); border: 2px solid var(--border); border-radius: var(--r); font-size: 12px; color: var(--text3); line-height: 1.5; }
.grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.grid2 .btn { margin-top: 0; }
.video { width: 100%; border-radius: var(--r); border: 2px solid var(--border); display: block; }
.card.chat { padding: 14px; }
.msg { padding: 11px 13px; border-radius: 12px; font-size: 14px; line-height: 1.6; margin-bottom: 7px; }
.msg.bot { background: var(--bg2); border: 2px solid var(--border); color: var(--text2); }

/* ── SCROLLBAR ── */
::-webkit-scrollbar { width: 3px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border2); border-radius: 3px; }

/* ── DIRECT CHILDREN OF .screen ── */
.screen > h1 { padding: 12px 16px 0; }
.screen > p { padding: 4px 16px 0; }
.screen > .tag { margin: 12px 16px 0; }
.screen > .card { margin: 10px 16px 0; }
.screen > .btn { margin: 10px 16px 0; width: calc(100% - 32px); }
.screen > .moduleGrid { }
.screen > .grid3 { }
.screen > .extraGrid { }
.screen > .archiveDayCard { margin: 0 16px 8px; width: calc(100% - 32px); }
.screen > .archiveChat { margin: 0 16px 14px; }
.screen > .performanceTrend { }
.screen > .privacy { }
.screen > .video { margin: 10px 16px; width: calc(100% - 32px); }
.screen > .small { padding: 4px 16px; }
.screen > .challengeDash { padding: 0 16px; }

/* Settings */
.settingsSection { margin: 10px 16px 0; }
.settingsSection .btn { width: 100%; margin: 7px 0 0; }
.settingsSection h3 { margin-bottom: 7px; }

/* Animations */
@keyframes fadeInUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.metricCard { animation: fadeInUp 0.35s both; }
.metricCard:nth-child(1) { animation-delay: 0.04s; }
.metricCard:nth-child(2) { animation-delay: 0.08s; }
.metricCard:nth-child(3) { animation-delay: 0.12s; }
.moduleImageCard { animation: fadeInUp 0.3s both; }
.moduleImageCard:nth-child(1) { animation-delay: 0.05s; }
.moduleImageCard:nth-child(2) { animation-delay: 0.1s; }
.moduleImageCard:nth-child(3) { animation-delay: 0.15s; }
.moduleImageCard:nth-child(4) { animation-delay: 0.2s; }
.moduleImageCard:nth-child(5) { animation-delay: 0.25s; }
.moduleImageCard:nth-child(6) { animation-delay: 0.3s; }
.moduleImageCard:nth-child(7) { animation-delay: 0.35s; }

/* ── TARGETED PATCH: 7-day home lower action buttons + 30-day button order only ── */
.sevenCourseHome .courseHero {
  height: min(44vh, 340px);
  background-position: center top;
  flex-shrink: 0;
}
.sevenCourseHome .courseHeroContent {
  padding-bottom: 20px;
}
.sevenHomeActions {
  padding: 10px 16px 4px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: auto;
  flex-shrink: 0;
}
.sevenHomeActions .choiceCard {
  height: 110px;
  border-color: rgba(201,168,76,0.24);
  box-shadow: 0 10px 30px rgba(0,0,0,0.42), 0 0 0 1px rgba(201,168,76,0.04) inset;
}
.sevenStartCard { background-position: center 38%; }
.sevenDatabaseCard { background-position: center; }
.sevenCourseHome .grid3 { padding: 10px 16px calc(var(--sab) + 14px); flex-shrink: 0; }
.sevenCourseHome .grid3 .tile { aspect-ratio: 1; height: auto; }
.thirtyCourseHome .pathGrid { margin-top: auto; }
.thirtyCourseHome .pathGrid .pathImageBtn { height: 124px; }
.thirtyCourseHome .grid3 { margin-top: 0; flex-shrink: 0; padding-bottom: calc(var(--sab) + 14px); }
.courseHomeBg { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }

/* ── TARGETED PATCH: Main Home typography position + clean gold button borders ── */
.mainHomeHero {
  height: min(62vh, 430px);
}
.mainHomeHeroContent {
  padding: 16px 18px 6px;
  transform: translateY(10px);
}
.mainChoiceGrid {
  padding: 8px 12px calc(var(--sab) + 16px);
  gap: 12px;
}
.mainChoiceGrid .choiceCard {
  height: 150px;
  border: 2px solid rgba(232,201,106,0.86);
  box-shadow:
    0 0 0 1px rgba(201,168,76,0.26) inset,
    0 0 18px rgba(201,168,76,0.22),
    0 12px 34px rgba(0,0,0,0.56);
}
.mainChoiceGrid .choiceCard:active {
  border-color: var(--gold-bright);
  box-shadow:
    0 0 0 1px rgba(232,201,106,0.36) inset,
    0 0 24px rgba(201,168,76,0.34),
    0 12px 34px rgba(0,0,0,0.56);
}
.choiceCard {
  border: 2px solid rgba(232,201,106,0.72);
  box-shadow:
    0 0 0 1px rgba(201,168,76,0.18) inset,
    0 0 14px rgba(201,168,76,0.14),
    0 8px 26px rgba(0,0,0,0.48);
}
.choiceCard:active {
  border-color: var(--gold-bright);
}
.btn,
.iconBtn,
.archiveDayCard,
.coachLaunchCard {
  border-color: rgba(232,201,106,0.72);
  box-shadow:
    0 0 0 1px rgba(201,168,76,0.16) inset,
    0 0 14px rgba(201,168,76,0.14);
}
.btn.secondary,
.btn.locked {
  border-color: rgba(232,201,106,0.58);
}

/* ── TARGETED PATCH v2: premium outlines, 30-day course home, praxis coach image ── */
:root {
  --premium-border: rgba(223,190,96,0.54);
  --premium-border-soft: rgba(223,190,96,0.28);
  --premium-glow: rgba(201,168,76,0.16);
}
.choiceCard,
.pathImageBtn,
.tile,
.moduleImageCard,
.extraCard,
.archiveDayCard,
.coachLaunchCard,
.btn.secondary,
.btn.locked,
.performanceFolderBtn,
.iconBtn {
  border: 1.5px solid var(--premium-border) !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,0.06) inset, 0 0 12px var(--premium-glow), 0 12px 30px rgba(0,0,0,0.42) !important;
}
.choiceCard:active,
.pathImageBtn:active,
.tile:active,
.moduleImageCard:active,
.extraCard:active,
.archiveDayCard:active,
.coachLaunchCard:active,
.btn.secondary:active,
.iconBtn:active {
  border-color: rgba(232,201,106,0.82) !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,0.12) inset, 0 0 18px rgba(201,168,76,0.24), 0 12px 30px rgba(0,0,0,0.48) !important;
}
.choiceArrow,
.coachLaunchBtn {
  border: 1.5px solid rgba(232,201,106,0.74) !important;
  box-shadow: 0 0 12px rgba(201,168,76,0.16);
}
.mainChoiceGrid .choiceCard {
  height: 150px;
  border-width: 1.5px !important;
  border-color: rgba(232,201,106,0.62) !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,0.05) inset, 0 0 14px rgba(201,168,76,0.18), 0 18px 38px rgba(0,0,0,0.54) !important;
}
.thirtyCourseHome .courseHero {
  height: min(50vh, 430px);
  background-size: cover;
  background-position: center top;
}
.thirtyCourseHome .courseHero::after {
  background: linear-gradient(180deg, rgba(10,10,10,0.04) 0%, rgba(10,10,10,0.32) 52%, rgba(10,10,10,0.96) 100%);
}
.thirtyCourseHome .courseHeroContent { padding: 16px 18px 24px; }
.thirtyCourseHome .courseHeroTitle {
  font-size: clamp(38px, 10vw, 52px);
  line-height: 0.96;
  padding-top: 7px;
}
.thirtyCourseHome .courseHeroSub { display: none; }
.thirtyCourseHome .pathGrid { margin-top: auto; padding: 6px 16px 10px; }
.thirtyCourseHome .pathGrid .pathImageBtn { height: 134px; border-radius: 16px; }
.thirtyCourseHome .premiumMetricGrid {
  margin: 0 16px 10px;
  width: calc(100% - 32px);
  padding: 8px 0;
  border: 1.5px solid rgba(232,201,106,0.34) !important;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.015));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 0 0 1px rgba(255,226,140,0.04) inset, 0 0 20px rgba(201,168,76,0.12), 0 16px 36px rgba(0,0,0,0.44) !important;
}
.thirtyCourseHome .premiumMetricGrid .metricCard { padding: 12px 4px 11px; }
.thirtyCourseHome .premiumMetricGrid .metricCard + .metricCard { border-left: 1px solid rgba(232,201,106,0.18); }
.thirtyCourseHome .premiumMetricGrid .metricCard h3 { color: rgba(232,201,106,0.84); font-size: 10px; }
.thirtyCourseHome .premiumMetricGrid .metricValue { font-size: 30px; }
.thirtyCourseHome .grid3 { padding-top: 0; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard {
  min-height: 275px;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-end;
  border-radius: 24px;
  overflow: hidden;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,10,10,0.05) 0%, rgba(10,10,10,0.35) 48%, rgba(10,10,10,0.84) 100%), linear-gradient(90deg, rgba(10,10,10,0.76) 0%, rgba(10,10,10,0.22) 100%);
  z-index: 1;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay {
  position: relative;
  z-index: 2;
  width: 100%;
  background: transparent;
  padding: 18px 18px 20px;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline { font-size: 28px; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub { max-width: 270px; color: rgba(240,237,232,0.72); }

/* ── TARGETED PATCH v3: fixed 30-day home + premium praxis dashboard meter ── */
.courseHomeBg.thirtyCourseHome,
.aiPraxisScreen.praxisDashboardOnly {
  height: 100vh;
  height: 100dvh;
  min-height: 100vh;
  min-height: 100dvh;
  overflow: hidden !important;
}
.thirtyCourseHome .courseHero {
  height: min(58vh, 485px) !important;
  flex: 1 1 auto;
  min-height: 390px;
  background-position: center top !important;
}
.thirtyCourseHome .courseHeroContent {
  bottom: 26px !important;
  padding: 16px 18px 18px !important;
}
.thirtyCourseHome .courseHeroTitle {
  font-size: clamp(42px, 11vw, 58px) !important;
  line-height: 0.94 !important;
}
.thirtyCourseHome .pathGrid {
  margin-top: 0 !important;
  padding: 8px 16px 10px !important;
  flex-shrink: 0;
}
.thirtyCourseHome .pathGrid .pathImageBtn { height: 126px !important; }
.thirtyCourseHome .premiumMetricGrid { display: none !important; }
.thirtyCourseHome .grid3 {
  flex-shrink: 0;
  padding: 0 16px calc(var(--sab) + 12px) !important;
}
.thirtyCourseHome .grid3 .tile { aspect-ratio: 1 !important; }

.aiPraxisScreen.praxisDashboardOnly {
  background-image: linear-gradient(180deg, rgba(10,10,10,0.1), rgba(10,10,10,0.7)), url('assets/img/home-ai.png');
  background-size: cover;
  background-position: center top;
}
.praxisDashboardOnly .aiPraxisHero {
  height: min(25vh, 205px) !important;
  background-size: cover;
  background-position: center top;
}
.praxisDashboardOnly .aiPraxisHero::after { background: linear-gradient(180deg, rgba(10,10,10,0.05) 0%, rgba(10,10,10,0.36) 54%, rgba(10,10,10,0.72) 100%) !important; }
.praxisDashboardOnly .aiPraxisHeroContent { padding: 12px 18px 10px !important; }
.praxisDashboardOnly .aiPraxisTitle { font-size: clamp(28px, 7.2vw, 38px) !important; }
.praxisDashboardOnly > .metricGrid {
  margin: 0 16px 8px;
  padding: 7px 0 6px !important;
  width: calc(100% - 32px);
  border: 1px solid rgba(223,190,96,0.26) !important;
  border-radius: 18px;
  background: rgba(10,10,10,0.34) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 0 0 1px rgba(255,226,140,0.035) inset, 0 10px 26px rgba(0,0,0,0.35) !important;
}
.praxisDashboardOnly > .metricGrid .metricCard { padding: 6px 2px 4px !important; }
.praxisDashboardOnly > .metricGrid .metricCard h3 { font-size: 8px !important; margin-bottom: 2px !important; }
.praxisDashboardOnly > .metricGrid .gaugeWrap { width: 68px !important; height: 41px !important; margin-bottom: 0 !important; }
.praxisDashboardOnly > .metricGrid .gaugeWrap svg { width: 68px !important; height: 44px !important; }
.praxisDashboardOnly > .metricGrid .metricValue { font-size: 21px !important; }
.praxisMeterCard {
  position: relative;
  margin: 0 16px 8px;
  height: 142px;
  border: 1px solid rgba(223,190,96,0.28);
  border-radius: 22px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(18,18,18,0.50), rgba(8,8,8,0.26));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 0 0 1px rgba(255,226,140,0.035) inset, 0 0 18px rgba(201,168,76,0.08), 0 14px 34px rgba(0,0,0,0.34);
  flex-shrink: 0;
}
.praxisMeterHead { display:flex; align-items:center; justify-content:space-between; padding:12px 18px 0; font-family:var(--font-c); font-weight:700; letter-spacing:.16em; font-size:10px; color:rgba(232,201,106,.88); }
.praxisMeterHead strong { color:rgba(240,237,232,.58); font-size:9px; letter-spacing:.18em; }
.praxisMeterDial { position:absolute; left:50%; bottom:-42px; width:210px; height:210px; transform:translateX(-50%); border-radius:50%; }
.meterArc { position:absolute; inset:34px; border-radius:50%; border:10px solid rgba(255,255,255,0.055); border-top-color:rgba(232,201,106,0.92); border-right-color:rgba(232,201,106,0.72); border-bottom-color:transparent; transform:rotate(135deg); filter:drop-shadow(0 0 10px rgba(201,168,76,0.22)); }
.meterTicks { position:absolute; inset:0; }
.meterTicks span { position:absolute; left:50%; top:50%; width:2px; height:13px; margin-left:-1px; background:rgba(232,201,106,.42); border-radius:2px; transform-origin:50% 50px; }
.meterNeedle { position:absolute; left:50%; top:50%; width:4px; height:66px; margin-top:-64px; border-radius:10px; background:linear-gradient(180deg, #E8C96A, #8B6F2E); transform-origin:50% 64px; box-shadow:0 0 14px rgba(201,168,76,.34); }
.meterHub { position:absolute; left:50%; top:50%; width:18px; height:18px; transform:translate(-50%,-50%); border-radius:50%; background:#101010; border:2px solid rgba(232,201,106,.72); box-shadow:0 0 12px rgba(201,168,76,.24); }
.meterValue { position:absolute; left:0; right:0; top:112px; text-align:center; font-family:var(--font-d); font-size:34px; line-height:1; color:var(--text); text-shadow:0 2px 14px rgba(0,0,0,.9); }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard { min-height:0 !important; height:190px !important; margin:0 16px 8px !important; flex-shrink:0; border-radius:22px !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay { padding:14px 16px 16px !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline { font-size:25px !important; margin:2px 0 !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub { font-size:12px !important; line-height:1.35 !important; }
.praxisDashboardOnly .coachLaunchBtnWrap { margin-top:8px !important; }
.praxisDashboardOnly .coachLaunchBtn { padding:8px 17px !important; }
.praxisDashboardOnly .performanceFolderBtn { height:54px; margin:0 16px calc(var(--sab) + 10px) !important; flex-shrink:0; }

/* ── TARGETED PATCH v4: praxis dashboard only — transparent full-hero + 3 tachometer gauges ── */
.aiPraxisScreen.praxisDashboardOnly {
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  background-image: linear-gradient(180deg, rgba(5,5,5,0.02) 0%, rgba(5,5,5,0.18) 32%, rgba(5,5,5,0.50) 66%, rgba(5,5,5,0.82) 100%), url('assets/img/home-ai.png') !important;
  background-size: cover !important;
  background-position: center top !important;
}
.praxisDashboardOnly .aiPraxisHero { height: 28.5vh !important; min-height: 205px !important; max-height: 245px !important; flex: 0 0 auto !important; background-image: none !important; background: transparent !important; border-bottom: 0 !important; }
.praxisDashboardOnly .aiPraxisHero::after { display: none !important; }
.praxisDashboardOnly .aiPraxisHeroContent { padding: 0 18px 8px !important; bottom: 0 !important; }
.praxisDashboardOnly .aiPraxisTitle { font-size: clamp(33px, 9vw, 45px) !important; line-height: .9 !important; }
.praxisDashboardOnly > .metricGrid { margin: 4px 10px 8px !important; padding: 0 !important; width: calc(100% - 20px) !important; height: 128px !important; flex: 0 0 128px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; display: grid !important; grid-template-columns: repeat(3, 1fr) !important; }
.praxisDashboardOnly > .metricGrid .metricCard { position: relative !important; min-height: 128px !important; padding: 9px 0 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.praxisDashboardOnly > .metricGrid .metricCard + .metricCard { border-left: 1px solid rgba(225,190,92,0.20) !important; }
.praxisDashboardOnly > .metricGrid .metricCard h3 { height: 22px !important; margin: 0 0 5px !important; font-size: 8px !important; line-height: 1.08 !important; letter-spacing: .15em !important; color: rgba(225,190,92,.88) !important; }
.praxisDashboardOnly > .metricGrid .gaugeWrap { width: 92px !important; height: 58px !important; margin: 0 auto !important; filter: drop-shadow(0 0 9px rgba(201,168,76,.20)) !important; }
.praxisDashboardOnly > .metricGrid .gaugeWrap svg { width: 92px !important; height: 58px !important; }
.praxisDashboardOnly > .metricGrid .metricValue { margin-top: -2px !important; font-size: 28px !important; line-height: .9 !important; text-shadow: 0 2px 14px rgba(0,0,0,.9) !important; }
.praxisDashboardOnly .praxisMeterCard { display: none !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard { height: 248px !important; min-height: 248px !important; flex: 0 0 248px !important; margin: 2px 16px 8px !important; border: 1.35px solid rgba(225,190,92,.66) !important; border-radius: 24px !important; background-size: cover !important; background-position: center center !important; box-shadow: 0 0 0 1px rgba(255,226,140,.05) inset, 0 0 20px rgba(201,168,76,.10), 0 16px 34px rgba(0,0,0,.32) !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard::before { background: linear-gradient(90deg, rgba(5,5,5,.84) 0%, rgba(5,5,5,.58) 40%, rgba(5,5,5,.16) 100%) !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay { padding: 22px 18px !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline { font-size: 31px !important; line-height: .96 !important; margin: 4px 0 7px !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub { font-size: 13px !important; line-height: 1.35 !important; max-width: 290px !important; }
.praxisDashboardOnly .coachLaunchBtnWrap { margin-top: 14px !important; }
.praxisDashboardOnly .coachLaunchBtn { padding: 10px 22px !important; }
.praxisDashboardOnly .performanceFolderBtn { height: 58px !important; flex: 0 0 58px !important; margin: 0 16px calc(var(--sab) + 8px) !important; border: 1.35px solid rgba(225,190,92,.66) !important; border-radius: 18px !important; background: rgba(8,8,8,.18) !important; box-shadow: 0 0 0 1px rgba(255,226,140,.05) inset, 0 0 18px rgba(201,168,76,.08) !important; }
@media (max-height: 740px) { .praxisDashboardOnly .aiPraxisHero { height: 25vh !important; min-height: 178px !important; } .praxisDashboardOnly > .metricGrid { height: 113px !important; flex-basis: 113px !important; margin-bottom: 6px !important; } .praxisDashboardOnly > .metricGrid .metricCard { min-height: 113px !important; padding-top: 6px !important; } .praxisDashboardOnly > .metricGrid .gaugeWrap { width: 82px !important; height: 50px !important; } .praxisDashboardOnly > .metricGrid .gaugeWrap svg { width: 82px !important; height: 50px !important; } .praxisDashboardOnly > .metricGrid .metricValue { font-size: 24px !important; } .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard { height: 220px !important; min-height: 220px !important; flex-basis: 220px !important; } .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline { font-size: 28px !important; } .praxisDashboardOnly .performanceFolderBtn { height: 52px !important; flex-basis: 52px !important; } }

/* ── TARGETED PATCH v5: praxis dashboard only — new image, transparent tachometers, fixed one-screen layout ── */
.aiPraxisScreen.praxisDashboardOnly {
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  background-image:
    linear-gradient(180deg, rgba(4,4,4,0.00) 0%, rgba(4,4,4,0.10) 30%, rgba(4,4,4,0.36) 58%, rgba(4,4,4,0.82) 100%),
    url('assets/img/praxis-bg.jpeg') !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
}
.praxisDashboardOnly .aiPraxisHero {
  height: 30vh !important;
  min-height: 214px !important;
  max-height: 260px !important;
  flex: 0 0 auto !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
}
.praxisDashboardOnly .aiPraxisHero::after { display: none !important; }
.praxisDashboardOnly .aiPraxisHeroContent {
  bottom: 0 !important;
  padding: 0 18px 10px !important;
}
.praxisDashboardOnly .aiPraxisHeroContent .miniLabel {
  font-size: 13px !important;
  letter-spacing: .16em !important;
  color: rgba(225,190,92,.92) !important;
}
.praxisDashboardOnly .aiPraxisTitle {
  font-size: clamp(33px, 8.8vw, 44px) !important;
  line-height: .9 !important;
}
.praxisDashboardOnly > .metricGrid {
  margin: 4px 13px 8px !important;
  padding: 0 !important;
  width: calc(100% - 26px) !important;
  height: 130px !important;
  flex: 0 0 130px !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.praxisDashboardOnly > .metricGrid .metricCard,
.praxisDashboardOnly > .metricGrid .praxisGaugeCard {
  position: relative !important;
  min-height: 130px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.praxisDashboardOnly > .metricGrid .metricCard + .metricCard { border-left: 0 !important; }
.praxisDashboardOnly > .metricGrid .metricCard h3 {
  height: 20px !important;
  margin: 0 0 0 !important;
  font-size: 8.5px !important;
  line-height: 1.05 !important;
  letter-spacing: .15em !important;
  color: rgba(225,190,92,.9) !important;
  text-shadow: 0 2px 9px rgba(0,0,0,.95) !important;
}
.praxisDashboardOnly > .metricGrid .praxisGaugeWrap {
  width: 108px !important;
  height: 76px !important;
  margin: -2px auto 0 !important;
  filter: drop-shadow(0 0 10px rgba(201,168,76,.22)) !important;
}
.praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg {
  width: 108px !important;
  height: 76px !important;
  display: block !important;
}
.praxisDashboardOnly .praxisTicks line {
  stroke: rgba(225,190,92,.46);
  stroke-width: 2;
  stroke-linecap: round;
}
.praxisDashboardOnly > .metricGrid .metricValue {
  margin-top: -12px !important;
  font-size: 29px !important;
  line-height: .9 !important;
  color: rgba(248,245,238,.96) !important;
  text-shadow: 0 3px 13px rgba(0,0,0,.95), 0 0 8px rgba(201,168,76,.12) !important;
}
.praxisDashboardOnly .praxisMeterCard,
.praxisDashboardOnly .performanceTrend { display: none !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard {
  height: 260px !important;
  min-height: 260px !important;
  flex: 0 0 260px !important;
  margin: 4px 16px 10px !important;
  border: 1.2px solid rgba(225,190,92,.62) !important;
  border-radius: 24px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,.05) inset, 0 0 18px rgba(201,168,76,.10), 0 16px 34px rgba(0,0,0,.34) !important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard::before {
  background: linear-gradient(90deg, rgba(5,5,5,.82) 0%, rgba(5,5,5,.55) 42%, rgba(5,5,5,.14) 100%) !important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay { padding: 23px 18px 20px !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline { font-size: 32px !important; line-height: .95 !important; margin: 4px 0 7px !important; }
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub { font-size: 13px !important; line-height: 1.35 !important; max-width: 285px !important; }
.praxisDashboardOnly .coachLaunchBtnWrap { margin-top: 14px !important; }
.praxisDashboardOnly .coachLaunchBtn { padding: 10px 22px !important; border-width: 1.2px !important; }
.praxisDashboardOnly .performanceFolderBtn {
  height: 58px !important;
  flex: 0 0 58px !important;
  margin: 0 16px calc(var(--sab) + 8px) !important;
  border: 1.2px solid rgba(225,190,92,.62) !important;
  border-radius: 18px !important;
  background: rgba(5,5,5,.18) !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,.05) inset, 0 0 18px rgba(201,168,76,.08) !important;
}
@media (max-height: 760px) {
  .praxisDashboardOnly .aiPraxisHero { height: 27vh !important; min-height: 188px !important; max-height: 218px !important; }
  .praxisDashboardOnly > .metricGrid { height: 116px !important; flex-basis: 116px !important; margin-top: 2px !important; margin-bottom: 6px !important; }
  .praxisDashboardOnly > .metricGrid .metricCard { min-height: 116px !important; }
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap { width: 96px !important; height: 67px !important; }
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg { width: 96px !important; height: 67px !important; }
  .praxisDashboardOnly > .metricGrid .metricValue { font-size: 25px !important; margin-top: -13px !important; }
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard { height: 226px !important; min-height: 226px !important; flex-basis: 226px !important; margin-bottom: 8px !important; }
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline { font-size: 28px !important; }
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub { font-size: 12px !important; }
  .praxisDashboardOnly .performanceFolderBtn { height: 52px !important; flex-basis: 52px !important; }
}
@media (max-height: 700px) {
  .praxisDashboardOnly .aiPraxisHero { height: 24vh !important; min-height: 170px !important; }
  .praxisDashboardOnly > .metricGrid { height: 106px !important; flex-basis: 106px !important; }
  .praxisDashboardOnly > .metricGrid .metricCard h3 { font-size: 7.5px !important; }
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap { width: 88px !important; height: 60px !important; }
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg { width: 88px !important; height: 60px !important; }
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard { height: 205px !important; min-height: 205px !important; flex-basis: 205px !important; }
  .praxisDashboardOnly .performanceFolderBtn { height: 48px !important; flex-basis: 48px !important; }
}

/* FINAL TARGETED PATCH — Praxis-Dashboard + Chat only */
.aiPraxisScreen.praxisDashboardOnly{height:100vh!important;height:100dvh!important;min-height:100vh!important;min-height:100dvh!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;background-image:linear-gradient(180deg,rgba(2,2,2,0) 0%,rgba(2,2,2,.04) 42%,rgba(2,2,2,.46) 72%,rgba(2,2,2,.93) 100%),url('assets/img/praxis-bg.jpeg')!important;background-size:cover!important;background-position:center top!important;background-repeat:no-repeat!important}.praxisDashboardOnly .aiPraxisHero{height:36.5vh!important;min-height:300px!important;max-height:390px!important;flex:0 0 auto!important;background:transparent!important;background-image:none!important;border:0!important}.praxisDashboardOnly .aiPraxisHero:after{display:none!important}.praxisDashboardOnly .aiPraxisHeroContent{bottom:0!important;padding:0 18px 8px!important}.praxisDashboardOnly .aiPraxisHeroContent .miniLabel{font-size:13px!important;letter-spacing:.16em!important;color:rgba(225,190,92,.94)!important;text-shadow:0 2px 10px rgba(0,0,0,.85)!important}.praxisDashboardOnly .aiPraxisTitle{font-size:clamp(34px,9vw,46px)!important;line-height:.9!important;text-shadow:0 3px 16px rgba(0,0,0,.95)!important}.praxisDashboardOnly>.metricGrid{margin:0 10px 10px!important;width:calc(100% - 20px)!important;height:124px!important;flex:0 0 124px!important;padding:0!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.praxisDashboardOnly>.metricGrid .metricCard,.praxisDashboardOnly>.metricGrid .praxisGaugeCard{min-height:124px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.praxisDashboardOnly>.metricGrid .metricCard+.metricCard{border-left:0!important}.praxisDashboardOnly>.metricGrid .metricCard h3{height:18px!important;margin:0!important;font-size:8.5px!important;line-height:1!important;letter-spacing:.15em!important;color:rgba(225,190,92,.92)!important;text-shadow:0 2px 10px rgba(0,0,0,.95)!important}.praxisDashboardOnly>.metricGrid .praxisGaugeWrap,.praxisDashboardOnly>.metricGrid .gaugeWrap{width:106px!important;height:75px!important;margin:0 auto!important;filter:drop-shadow(0 0 13px rgba(201,168,76,.30))!important}.praxisDashboardOnly>.metricGrid .praxisGaugeWrap svg,.praxisDashboardOnly>.metricGrid .gaugeWrap svg{width:106px!important;height:75px!important}.praxisDashboardOnly .praxisTicks line{stroke:rgba(225,190,92,.56)!important;stroke-width:2!important;stroke-linecap:round!important}.praxisDashboardOnly>.metricGrid .metricValue{margin-top:-13px!important;font-size:28px!important;line-height:.9!important;color:rgba(248,245,238,.98)!important;text-shadow:0 3px 14px rgba(0,0,0,.95),0 0 10px rgba(201,168,76,.18)!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{height:235px!important;min-height:235px!important;flex:0 0 235px!important;margin:0 16px 9px!important;background-image:url('assets/img/coach-open-bg.jpeg')!important;background-size:cover!important;background-position:center center!important;border:1.15px solid rgba(225,190,92,.67)!important;border-radius:24px!important;box-shadow:0 0 0 1px rgba(255,226,140,.10) inset,0 0 22px rgba(201,168,76,.18),0 18px 36px rgba(0,0,0,.42)!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard:before{background:linear-gradient(90deg,rgba(4,4,4,.80) 0%,rgba(4,4,4,.54) 44%,rgba(4,4,4,.10) 100%)!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay{padding:24px 18px 18px!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline{font-size:32px!important;line-height:.95!important;margin:4px 0 7px!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub{font-size:13px!important;line-height:1.35!important;max-width:285px!important}.praxisDashboardOnly .coachLaunchBtnWrap{margin-top:14px!important}.praxisDashboardOnly .coachLaunchBtn{padding:10px 22px!important;border:1.15px solid rgba(225,190,92,.74)!important;box-shadow:0 0 16px rgba(201,168,76,.18),inset 0 0 0 1px rgba(255,230,160,.08)!important}.praxisDashboardOnly .performanceFolderBtn{height:58px!important;flex:0 0 58px!important;margin:0 16px calc(var(--sab) + 8px)!important;border:1.15px solid rgba(225,190,92,.67)!important;border-radius:18px!important;background:rgba(5,5,5,.25)!important;box-shadow:0 0 0 1px rgba(255,226,140,.10) inset,0 0 22px rgba(201,168,76,.18)!important}.praxisCoachPage .dashboardBackBtn{display:none!important}.praxisCoachPage .dashboardReviewBtn{margin:12px 16px calc(var(--sab) + 12px)!important;width:calc(100% - 32px)!important;min-height:58px!important;border:1.15px solid rgba(225,190,92,.72)!important;border-radius:18px!important;background:rgba(11,11,11,.88)!important;color:rgba(248,245,238,.98)!important;box-shadow:0 0 0 1px rgba(255,226,140,.08) inset,0 0 22px rgba(201,168,76,.18)!important}.choiceCard,.largeCourseCard,.smallFeatureCard,.coachLaunchCard,.performanceFolderBtn,.dashboardReviewBtn,.btn.secondary{box-shadow:0 0 0 1px rgba(255,226,140,.08) inset,0 0 22px rgba(201,168,76,.18),0 12px 30px rgba(0,0,0,.36)!important}@media(max-height:760px){.praxisDashboardOnly .aiPraxisHero{height:34vh!important;min-height:270px!important;max-height:330px!important}.praxisDashboardOnly>.metricGrid{height:112px!important;flex-basis:112px!important;margin-bottom:7px!important}.praxisDashboardOnly>.metricGrid .metricCard{min-height:112px!important}.praxisDashboardOnly>.metricGrid .praxisGaugeWrap,.praxisDashboardOnly>.metricGrid .gaugeWrap{width:94px!important;height:66px!important}.praxisDashboardOnly>.metricGrid .praxisGaugeWrap svg,.praxisDashboardOnly>.metricGrid .gaugeWrap svg{width:94px!important;height:66px!important}.praxisDashboardOnly>.metricGrid .metricValue{font-size:25px!important;margin-top:-13px!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{height:212px!important;min-height:212px!important;flex-basis:212px!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline{font-size:28px!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchSub{font-size:12px!important}.praxisDashboardOnly .performanceFolderBtn{height:50px!important;flex-basis:50px!important}}@media(max-height:700px){.praxisDashboardOnly .aiPraxisHero{height:31vh!important;min-height:230px!important}.praxisDashboardOnly>.metricGrid{height:102px!important;flex-basis:102px!important}.praxisDashboardOnly>.metricGrid .metricCard h3{font-size:7.5px!important}.praxisDashboardOnly>.metricGrid .praxisGaugeWrap,.praxisDashboardOnly>.metricGrid .gaugeWrap{width:84px!important;height:59px!important}.praxisDashboardOnly>.metricGrid .praxisGaugeWrap svg,.praxisDashboardOnly>.metricGrid .gaugeWrap svg{width:84px!important;height:59px!important}.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{height:192px!important;min-height:192px!important;flex-basis:192px!important}.praxisDashboardOnly .performanceFolderBtn{height:46px!important;flex-basis:46px!important}}

/* targeted final praxis coach fixes */
.eveningReviewDialog{max-height:calc(100vh - 80px);overflow:auto;}
.praxisCoachPage #activePanel{display:none!important;}
@media(max-width:700px){
  .choiceCard,.largeCourseCard,.smallFeatureCard,.coachLaunchCard,.performanceFolderBtn,.dashboardReviewBtn,.btn.secondary,.coachLaunchBtn{
    box-shadow:0 0 0 1px rgba(255,226,140,.12) inset,0 0 20px rgba(201,168,76,.30),0 0 36px rgba(201,168,76,.14),0 14px 30px rgba(0,0,0,.42)!important;
  }
}

/* FINAL PATCH — unified mobile button glow + larger non-scroll coach chat */
:root{
  --rd-premium-border: rgba(225,190,92,.72);
  --rd-premium-glow: rgba(201,168,76,.34);
  --rd-premium-glow-soft: rgba(201,168,76,.18);
}
.choiceCard,
.largeCourseCard,
.smallFeatureCard,
.coachLaunchCard,
.performanceFolderBtn,
.dashboardReviewBtn,
.btn.secondary,
.coachLaunchBtn{
  border-color: var(--rd-premium-border) !important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.11) inset,
    0 0 24px var(--rd-premium-glow),
    0 0 46px var(--rd-premium-glow-soft),
    0 14px 34px rgba(0,0,0,.44) !important;
}
.choiceCard:active,
.largeCourseCard:active,
.smallFeatureCard:active,
.coachLaunchCard:active,
.performanceFolderBtn:active,
.dashboardReviewBtn:active,
.btn.secondary:active,
.coachLaunchBtn:active{
  box-shadow:
    0 0 0 1px rgba(255,226,140,.16) inset,
    0 0 30px rgba(201,168,76,.42),
    0 0 56px rgba(201,168,76,.22),
    0 14px 34px rgba(0,0,0,.48) !important;
}
.praxisCoachPage{
  height:100vh!important;
  height:100dvh!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
.praxisCoachPage .compactCoachHero{
  flex:0 0 auto!important;
}
.praxisCoachPage #praxisChatShell{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:0 16px!important;
}
.praxisCoachPage #praxisChatMessages{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:12px 0 8px!important;
  overflow-y:auto!important;
}
.praxisCoachPage .chatInputRow{
  flex:0 0 auto!important;
  padding:10px 0 10px!important;
}
.praxisCoachPage .dashboardReviewBtn{
  flex:0 0 58px!important;
  min-height:58px!important;
  margin:8px 16px calc(var(--sab) + 10px)!important;
  width:calc(100% - 32px)!important;
}
@media(max-height:760px){
  .praxisCoachPage .compactCoachHero{padding:10px 18px!important;}
  .praxisCoachPage .dashboardReviewBtn{flex-basis:54px!important;min-height:54px!important;margin-top:6px!important;margin-bottom:calc(var(--sab) + 8px)!important;}
  .praxisCoachPage .chatInputRow{padding:8px 0 8px!important;}
}

/* FINAL TARGETED PATCH — einheitlicher dezenter Button-Glow auf allen Kurs-/Home-Buttons */
:root{
  --rd-unified-border: rgba(225,190,92,.66);
  --rd-unified-glow: rgba(201,168,76,.22);
  --rd-unified-glow-soft: rgba(201,168,76,.10);
}
.choiceCard,
.mainChoiceGrid .choiceCard,
.sevenHomeActions .choiceCard,
.thirtyCourseHome .pathGrid .pathImageBtn,
.pathImageBtn,
.tile,
.sevenCourseHome .grid3 .tile,
.thirtyCourseHome .grid3 .tile,
.coachLaunchCard,
.coachLaunchBtn,
.performanceFolderBtn,
.dashboardReviewBtn,
.btn.secondary{
  border-color: var(--rd-unified-border) !important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.075) inset,
    0 0 16px var(--rd-unified-glow),
    0 0 30px var(--rd-unified-glow-soft),
    0 12px 30px rgba(0,0,0,.42) !important;
}
.choiceCard:active,
.mainChoiceGrid .choiceCard:active,
.sevenHomeActions .choiceCard:active,
.thirtyCourseHome .pathGrid .pathImageBtn:active,
.pathImageBtn:active,
.tile:active,
.sevenCourseHome .grid3 .tile:active,
.thirtyCourseHome .grid3 .tile:active,
.coachLaunchCard:active,
.coachLaunchBtn:active,
.performanceFolderBtn:active,
.dashboardReviewBtn:active,
.btn.secondary:active{
  border-color: rgba(232,201,106,.76) !important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.10) inset,
    0 0 18px rgba(201,168,76,.26),
    0 0 34px rgba(201,168,76,.12),
    0 12px 30px rgba(0,0,0,.46) !important;
}
@media(max-width:700px){
  .choiceCard,
  .mainChoiceGrid .choiceCard,
  .sevenHomeActions .choiceCard,
  .thirtyCourseHome .pathGrid .pathImageBtn,
  .pathImageBtn,
  .tile,
  .sevenCourseHome .grid3 .tile,
  .thirtyCourseHome .grid3 .tile,
  .coachLaunchCard,
  .coachLaunchBtn,
  .performanceFolderBtn,
  .dashboardReviewBtn,
  .btn.secondary{
    border-color: var(--rd-unified-border) !important;
    box-shadow:
      0 0 0 1px rgba(255,226,140,.075) inset,
      0 0 16px var(--rd-unified-glow),
      0 0 30px var(--rd-unified-glow-soft),
      0 12px 30px rgba(0,0,0,.42) !important;
  }
}


/* MICRO PATCH — softer premium outlines, 7-day hero/title position, live morning values */
:root{
  --rd-unified-border: rgba(225,190,92,.55);
  --rd-unified-glow: rgba(201,168,76,.20);
  --rd-unified-glow-soft: rgba(201,168,76,.085);
}
.choiceCard,
.mainChoiceGrid .choiceCard,
.sevenHomeActions .choiceCard,
.thirtyCourseHome .pathGrid .pathImageBtn,
.pathImageBtn,
.tile,
.sevenCourseHome .grid3 .tile,
.thirtyCourseHome .grid3 .tile,
.coachLaunchCard,
.coachLaunchBtn,
.performanceFolderBtn,
.dashboardReviewBtn,
.btn.secondary{
  border-width: 1px !important;
  border-color: var(--rd-unified-border) !important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.045) inset,
    0 0 14px var(--rd-unified-glow),
    0 0 26px var(--rd-unified-glow-soft),
    0 12px 28px rgba(0,0,0,.42) !important;
}
.sevenCourseHome .courseHero{
  min-height: 47vh !important;
  height: 47vh !important;
  background-size: cover !important;
  background-position: center top !important;
}
.sevenCourseHome .courseHeroContent{
  padding: 0 18px 24px !important;
  transform: translateY(18px) !important;
}
.sevenCourseHome .courseHeroTitle{
  font-size: clamp(38px, 10.4vw, 54px) !important;
  line-height: .92 !important;
}
.sevenCourseHome .courseHeroSub{
  font-size: 15px !important;
  margin-top: 4px !important;
}
@media(max-height:760px){
  .sevenCourseHome .courseHero{min-height:45vh!important;height:45vh!important;}
  .sevenCourseHome .courseHeroContent{transform:translateY(14px)!important;padding-bottom:18px!important;}
  .sevenCourseHome .courseHeroTitle{font-size:clamp(34px,9.4vw,48px)!important;}
}

/* Goal Blueprint image update: fullscreen hero to top */
.goalHero{
  height: min(44vh, 390px) !important;
  min-height: 330px !important;
  background-size: cover !important;
  background-position: center top !important;
  border-bottom: 0 !important;
}
.goalHero::after{
  background: linear-gradient(180deg, rgba(10,10,10,0.02) 0%, rgba(10,10,10,0.18) 46%, rgba(10,10,10,0.92) 100%) !important;
}
.goalHeroContent{
  bottom: 0 !important;
  padding: 0 18px 18px !important;
}
@media (max-height: 760px){
  .goalHero{height: min(40vh, 330px) !important; min-height: 285px !important;}
}

/* FINAL USER PATCH — Zusatzbild, Goal Hero bis Top, zentrierte Buttontexte, Praxis weiter nach unten */
.goalScreen{
  height:100vh!important;
  height:100dvh!important;
  overflow:hidden!important;
  background:#050505!important;
}

.goalScreen .goalHero{
  height:48vh!important;
  min-height:390px!important;
  margin-top:0!important;
  padding-top:0!important;
  background-size:cover!important;
  background-position:center top!important;
  border-bottom:0!important;
}
.goalScreen .goalHeroContent{
  padding:0 18px 20px!important;
}
.sevenCourseHome .choiceCard .choiceInner,
.sevenCourseHome .sevenHomeActions .choiceInner{
  justify-content:center!important;
  text-align:center!important;
}
.sevenCourseHome .choiceText,
.sevenCourseHome .choiceText h3,
.sevenCourseHome .choiceSubLabel{
  text-align:center!important;
  align-items:center!important;
}
.sevenCourseHome .choiceArrow{
  position:absolute!important;
  right:22px!important;
}
.thirtyCourseHome .pathImageBtn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.thirtyCourseHome .pathImageBtn span{
  left:50%!important;
  right:auto!important;
  bottom:18px!important;
  transform:translateX(-50%)!important;
  text-align:center!important;
  width:calc(100% - 34px)!important;
  white-space:normal!important;
}
.sevenCourseHome .grid3 .tile span,
.thirtyCourseHome .grid3 .tile span{
  left:50%!important;
  transform:translateX(-50%)!important;
  width:calc(100% - 16px)!important;
  text-align:center!important;
}
/* Praxis Dashboard: gleiche Hintergrundgrafik behalten, Inhalt kompakt weiter nach unten setzen */
.aiPraxisScreen.praxisDashboardOnly{
  overflow:hidden!important;
  background-position:center top!important;
}
.praxisDashboardOnly .aiPraxisHero{
  height:39vh!important;
  min-height:320px!important;
  max-height:405px!important;
}
.praxisDashboardOnly .aiPraxisHeroContent{
  padding:0 18px 12px!important;
}
.praxisDashboardOnly > .metricGrid{
  margin-top:2px!important;
  margin-bottom:8px!important;
  height:118px!important;
  flex-basis:118px!important;
}
.praxisDashboardOnly > .metricGrid .metricCard,
.praxisDashboardOnly > .metricGrid .praxisGaugeCard{
  min-height:118px!important;
}
.praxisDashboardOnly > .metricGrid .praxisGaugeWrap,
.praxisDashboardOnly > .metricGrid .gaugeWrap{
  width:100px!important;
  height:70px!important;
}
.praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg,
.praxisDashboardOnly > .metricGrid .gaugeWrap svg{
  width:100px!important;
  height:70px!important;
}
.praxisDashboardOnly > .metricGrid .metricValue{
  font-size:27px!important;
  margin-top:-13px!important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{
  height:218px!important;
  min-height:218px!important;
  flex-basis:218px!important;
  margin:0 16px 8px!important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay{
  padding:20px 18px 16px!important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline{
  font-size:30px!important;
}
.praxisDashboardOnly .performanceFolderBtn{
  height:56px!important;
  flex-basis:56px!important;
  margin:0 16px calc(var(--sab) + 8px)!important;
}
@media(max-height:760px){
  .praxisDashboardOnly .aiPraxisHero{height:36vh!important;min-height:285px!important;max-height:330px!important;}
  .praxisDashboardOnly > .metricGrid{height:106px!important;flex-basis:106px!important;margin-bottom:6px!important;}
  .praxisDashboardOnly > .metricGrid .metricCard,.praxisDashboardOnly > .metricGrid .praxisGaugeCard{min-height:106px!important;}
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap,.praxisDashboardOnly > .metricGrid .gaugeWrap{width:88px!important;height:62px!important;}
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg,.praxisDashboardOnly > .metricGrid .gaugeWrap svg{width:88px!important;height:62px!important;}
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{height:195px!important;min-height:195px!important;flex-basis:195px!important;}
  .praxisDashboardOnly .performanceFolderBtn{height:50px!important;flex-basis:50px!important;}
}

/* FINAL MICRO PATCH — Praxis + Goal Blueprint spacing only */
/* Praxis Dashboard: same background, move complete content group lower while keeping one-screen fixed layout */
.aiPraxisScreen.praxisDashboardOnly{
  overflow:hidden!important;
  background-position:center top!important;
}
.praxisDashboardOnly .aiPraxisHero{
  height:42vh!important;
  min-height:352px!important;
  max-height:430px!important;
}
.praxisDashboardOnly .aiPraxisHeroContent{
  padding:0 18px 14px!important;
}
.praxisDashboardOnly > .metricGrid{
  height:108px!important;
  flex-basis:108px!important;
  margin:0 10px 8px!important;
}
.praxisDashboardOnly > .metricGrid .metricCard,
.praxisDashboardOnly > .metricGrid .praxisGaugeCard{
  min-height:108px!important;
}
.praxisDashboardOnly > .metricGrid .metricCard h3{
  font-size:8px!important;
  height:17px!important;
}
.praxisDashboardOnly > .metricGrid .praxisGaugeWrap,
.praxisDashboardOnly > .metricGrid .gaugeWrap{
  width:92px!important;
  height:64px!important;
}
.praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg,
.praxisDashboardOnly > .metricGrid .gaugeWrap svg{
  width:92px!important;
  height:64px!important;
}
.praxisDashboardOnly > .metricGrid .metricValue{
  font-size:26px!important;
  margin-top:-13px!important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{
  height:200px!important;
  min-height:200px!important;
  flex-basis:200px!important;
  margin:0 16px 8px!important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchOverlay{
  padding:19px 18px 15px!important;
}
.praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline{
  font-size:29px!important;
  line-height:.96!important;
}
.praxisDashboardOnly .performanceFolderBtn{
  height:56px!important;
  flex-basis:56px!important;
  margin:0 16px calc(var(--sab) + 8px)!important;
}
@media(max-height:760px){
  .praxisDashboardOnly .aiPraxisHero{height:39vh!important;min-height:312px!important;max-height:350px!important;}
  .praxisDashboardOnly > .metricGrid{height:98px!important;flex-basis:98px!important;margin-bottom:6px!important;}
  .praxisDashboardOnly > .metricGrid .metricCard,.praxisDashboardOnly > .metricGrid .praxisGaugeCard{min-height:98px!important;}
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap,.praxisDashboardOnly > .metricGrid .gaugeWrap{width:82px!important;height:58px!important;}
  .praxisDashboardOnly > .metricGrid .praxisGaugeWrap svg,.praxisDashboardOnly > .metricGrid .gaugeWrap svg{width:82px!important;height:58px!important;}
  .praxisDashboardOnly > .metricGrid .metricValue{font-size:23px!important;}
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{height:180px!important;min-height:180px!important;flex-basis:180px!important;}
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard .coachLaunchHeadline{font-size:26px!important;}
  .praxisDashboardOnly .performanceFolderBtn{height:48px!important;flex-basis:48px!important;}
}

/* Goal Blueprint: hero/text group slightly lower + more premium spacing between the two info cards */
.goalScreen .goalHero{
  height:51vh!important;
  min-height:420px!important;
  max-height:455px!important;
  background-position:center top!important;
}
.goalScreen .goalHeroContent{
  padding:0 18px 22px!important;
}
.goalScreen .card{
  margin-top:20px!important;
}
.goalScreen .privacy{
  margin-top:16px!important;
  margin-bottom:0!important;
}
.goalScreen .btn{
  margin-top:24px!important;
}
@media(max-height:760px){
  .goalScreen .goalHero{height:47vh!important;min-height:350px!important;max-height:380px!important;}
  .goalScreen .card{margin-top:16px!important;}
  .goalScreen .privacy{margin-top:14px!important;}
  .goalScreen .btn{margin-top:18px!important;}
}

/* FINAL PRECISION FIX: keep original hero/card images from previous good build; center only the 7/30 course button text */
.mainChoiceGrid .choiceCard .choiceInner{
  justify-content:center!important;
  text-align:center!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
.mainChoiceGrid .choiceCard .choiceText,
.mainChoiceGrid .choiceCard .choiceText h3,
.mainChoiceGrid .choiceCard .choiceSubLabel{
  width:100%!important;
  text-align:center!important;
  align-items:center!important;
}
.mainChoiceGrid .choiceCard .choiceArrow{
  position:absolute!important;
  right:22px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
/* also center the two large course buttons inside the 7-day home */
.sevenCourseHome .sevenHomeActions .choiceInner{
  justify-content:center!important;
  text-align:center!important;
}
.sevenCourseHome .sevenHomeActions .choiceText,
.sevenCourseHome .sevenHomeActions .choiceText h3,
.sevenCourseHome .sevenHomeActions .choiceSubLabel{
  width:100%!important;
  text-align:center!important;
  align-items:center!important;
}
.sevenCourseHome .sevenHomeActions .choiceArrow{
  position:absolute!important;
  right:22px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}

/* Auth UX: clear pressed/loading feedback */
#registerBtn:active,
#loginBtn:active {
  transform: scale(0.965) !important;
  filter: brightness(1.12) !important;
}
#registerBtn.btnWorking,
#loginBtn.btnWorking {
  transform: scale(0.985) !important;
  filter: brightness(1.08) !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,.14) inset, 0 0 26px rgba(201,168,76,.26) !important;
}
#registerBtn:disabled,
#loginBtn:disabled {
  cursor: default !important;
}

/* Targeted 7-day intro flow patch */
.courseIntroStartBtn {
  margin-top: 16px !important;
}
.introVideoScreen {
  justify-content: flex-start;
  padding-top: max(18px, env(safe-area-inset-top));
}
.introVideoLayout {
  width: 100%;
  min-height: calc(100dvh - 28px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 16px 18px;
}
.introVideoPlayer {
  width: 100%;
  height: calc(100dvh - 128px);
  max-height: 78dvh;
  object-fit: contain;
  background: #000;
  border-radius: var(--r-xl);
  border: 1px solid var(--border2);
  box-shadow: 0 0 28px rgba(201,168,76,0.14);
}
.introContinueBtn {
  width: 100%;
  margin: 0 !important;
}

/* 7-day intro/video usability fix */
.introVideoScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  justify-content:flex-start!important;
}

.introVideoLayout{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:10px 16px calc(var(--sab) + 14px)!important;
}
.introVideoPlayer{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  width:100%!important;
  object-fit:contain!important;
  background:#000!important;
}
.introContinueBtn{
  flex:0 0 auto!important;
  margin:0!important;
}
.introArticleScreen,
.dayCourseTextScreen{
  padding-bottom:calc(var(--sab) + 30px)!important;
  scroll-padding-top:0!important;
}
.introArticleScreen .card.article,
.dayCourseTextScreen .card.article{
  margin-bottom:14px!important;
}
.introArticleScreen .card.article p,
.dayCourseTextScreen .card.article p{
  font-size:15.5px!important;
  line-height:1.82!important;
}
.introArticleScreen > .btn,
.dayCourseTextScreen > .btn{
  margin-bottom:calc(var(--sab) + 34px)!important;
}


/* Welcome video: fixed to user's actual video, premium rounded card, one-screen layout */
.introVideoScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  padding-bottom:0!important;
}
.introVideoLayout{
  width:100%!important;
  flex:1 1 auto!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:12px 16px calc(var(--sab) + 16px)!important;
  overflow:hidden!important;
}
.introVideoPlayer{
  width:100%!important;
  aspect-ratio:9/16!important;
  height:auto!important;
  max-height:calc(100dvh - 154px)!important;
  min-height:0!important;
  object-fit:cover!important;
  background:#050505!important;
  border-radius:28px!important;
  border:1px solid rgba(213,184,96,.62)!important;
  box-shadow:0 0 0 1px rgba(213,184,96,.14),0 0 34px rgba(201,168,76,.18),0 16px 44px rgba(0,0,0,.55)!important;
  overflow:hidden!important;
}
.introContinueBtn{
  flex:0 0 auto!important;
  margin:0!important;
}

/* Targeted patch: day intro hero fullscreen-feel + premium lock/journal start screen */
.dayIntroScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#050505!important;
}

.dayIntroScreen .dayIntroHero{
  height:43dvh!important;
  min-height:330px!important;
  width:100%!important;
  background-size:cover!important;
  background-position:center top!important;
}
.dayIntroScreen .dayHeroContent{
  padding:0 18px 22px!important;
}
.dayIntroScreen .dayInfoCard{
  margin-top:14px!important;
  flex-shrink:0!important;
}
.dayIntroScreen > .btn{
  flex-shrink:0!important;
}

.lockStartScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#050505!important;
  position:relative!important;
}

.lockStartHero{
  position:relative;
  width:100%;
  flex:1 1 auto;
  min-height:0;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:flex-end;
  padding:calc(var(--sat) + 94px) 18px 24px;
}
.lockStartHero::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,5,5,.05) 0%,rgba(5,5,5,.28) 42%,rgba(5,5,5,.93) 100%);
}
.lockStartContent{
  position:relative;
  z-index:2;
  width:100%;
  text-align:left;
}
.lockStartContent h1{
  font-family:var(--font-d);
  font-size:clamp(38px,11vw,58px);
  line-height:.94;
  padding:6px 0 0;
  margin:0;
  text-shadow:0 4px 22px rgba(0,0,0,.9);
}
.lockStartContent p{
  max-width:340px;
  margin:12px 0 0;
  padding:0;
  color:rgba(240,237,232,.74);
  font-size:15px;
  line-height:1.48;
}
.lockJournalBtn{
  width:calc(100% - 32px)!important;
  margin:0 16px calc(var(--sab) + 18px)!important;
  flex-shrink:0!important;
}

/* Targeted patch: day intro hero fullscreen-feel + premium lock/journal start screen */
.dayIntroScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#050505!important;
}

.dayIntroScreen .dayIntroHero{
  height:43dvh!important;
  min-height:330px!important;
  width:100%!important;
  background-size:cover!important;
  background-position:center top!important;
}
.dayIntroScreen .dayHeroContent{
  padding:0 18px 22px!important;
}
.dayIntroScreen .dayInfoCard{
  margin-top:14px!important;
  flex-shrink:0!important;
}
.dayIntroScreen > .btn{
  flex-shrink:0!important;
}

.lockStartScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#050505!important;
  position:relative!important;
}

.lockStartHero{
  position:relative;
  width:100%;
  flex:1 1 auto;
  min-height:0;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:flex-end;
  padding:calc(var(--sat) + 94px) 18px 24px;
}
.lockStartHero::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,5,5,.05) 0%,rgba(5,5,5,.28) 42%,rgba(5,5,5,.93) 100%);
}
.lockStartContent{
  position:relative;
  z-index:2;
  width:100%;
  text-align:left;
}
.lockStartContent h1{
  font-family:var(--font-d);
  font-size:clamp(38px,11vw,58px);
  line-height:.94;
  padding:6px 0 0;
  margin:0;
  text-shadow:0 4px 22px rgba(0,0,0,.9);
}
.lockStartContent p{
  max-width:340px;
  margin:12px 0 0;
  padding:0;
  color:rgba(240,237,232,.74);
  font-size:15px;
  line-height:1.48;
}
.lockJournalBtn{
  width:calc(100% - 32px)!important;
  margin:0 16px calc(var(--sab) + 18px)!important;
  flex-shrink:0!important;
}

/* TARGETED FIX 2026-05-03: 7-day lesson heroes + completion/lock screens only */
.dayCourseTextScreen.sevenCourseTextScreen{
  position:relative!important;
  background:#050505!important;
}

.dayCourseTextScreen.sevenCourseTextScreen .dayHero{
  width:100%!important;
  height:43dvh!important;
  min-height:330px!important;
  background-size:cover!important;
  background-position:center top!important;
  margin:0!important;
}
.dayCourseTextScreen.sevenCourseTextScreen .dayHeroContent{
  padding:0 18px 22px!important;
}
.dayCourseTextScreen.sevenCourseTextScreen .card.article{
  margin-top:14px!important;
}

.dayCompleteScreen{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#050505!important;
  justify-content:flex-start!important;
  align-items:stretch!important;
  text-align:center!important;
  padding:0!important;
}


.dayCompleteScreen > .btn{
  flex:0 0 auto!important;
  width:calc(100% - 32px)!important;
  margin:0 16px calc(var(--sab) + 24px)!important;
}

/* FINAL TARGETED PATCH 2026-05-03: requested only spacing changes */
/* Main system-selection Home: move Welcome block slightly lower, closer to course buttons */
.mainHomeBg .mainHomeHeroContent{
  transform: translateY(22px) !important;
}
@media(max-height:760px){
  .mainHomeBg .mainHomeHeroContent{ transform: translateY(16px) !important; }
}

/* Praxis dashboard: keep same background/top nav; move title, gauges, coach card and folder lower */
.aiPraxisScreen.praxisDashboardOnly{
  overflow:hidden!important;
}
.praxisDashboardOnly .aiPraxisHero{
  height:45vh!important;
  min-height:382px!important;
  max-height:468px!important;
  background:transparent!important;
  background-image:none!important;
}
.praxisDashboardOnly .aiPraxisHeroContent{
  padding:0 18px 16px!important;
}
.praxisDashboardOnly > .metricGrid{
  margin:0 10px 8px!important;
}
.praxisDashboardOnly .performanceFolderBtn{
  margin:0 16px calc(var(--sab) + 10px)!important;
}
@media(max-height:760px){
  .praxisDashboardOnly .aiPraxisHero{
    height:42vh!important;
    min-height:338px!important;
    max-height:382px!important;
  }
  .praxisDashboardOnly > .metricGrid{
    height:94px!important;
    flex-basis:94px!important;
  }
  .praxisDashboardOnly .coachLaunchCard.praxisCoachImageCard{
    height:174px!important;
    min-height:174px!important;
    flex-basis:174px!important;
  }
  .praxisDashboardOnly .performanceFolderBtn{
    height:46px!important;
    flex-basis:46px!important;
    margin-bottom:calc(var(--sab) + 6px)!important;
  }
}

/* Goal Blueprint goal-entry screen: pull form area up and make all goal inputs fit on one mobile screen */
.goalFormScreen{
  height:100vh!important;
  height:100dvh!important;
  overflow:hidden!important;
}
.goalFormScreen .goalHero{
  height:33vh!important;
  min-height:255px!important;
  max-height:305px!important;
  background-position:center top!important;
}
.goalFormScreen .goalHeroContent{
  padding:0 18px 12px!important;
}
.goalFormScreen .card{
  margin:8px 16px 0!important;
  padding:14px 16px!important;
  border-radius:22px!important;
}
.goalFormScreen label{
  margin-top:10px!important;
  margin-bottom:6px!important;
  font-size:10px!important;
  line-height:1.1!important;
}
.goalFormScreen label:first-child{
  margin-top:0!important;
}
.goalFormScreen textarea{
  min-height:58px!important;
  height:58px!important;
  padding:10px 12px!important;
  font-size:14px!important;
  line-height:1.25!important;
  border-radius:14px!important;
}
.goalFormScreen .btn{
  height:50px!important;
  min-height:50px!important;
  margin-top:12px!important;
}
@media(max-height:760px){
  .goalFormScreen .goalHero{
    height:30vh!important;
    min-height:220px!important;
    max-height:260px!important;
  }
  .goalFormScreen .card{
    margin-top:6px!important;
    padding:12px 14px!important;
  }
  .goalFormScreen textarea{
    min-height:50px!important;
    height:50px!important;
    font-size:13px!important;
  }
  .goalFormScreen label{
    margin-top:8px!important;
    font-size:9.5px!important;
  }
  .goalFormScreen .btn{
    height:46px!important;
    min-height:46px!important;
    margin-top:10px!important;
  }
}

/* Challenge Katalog v2: info-first flow + premium tracker */
.challengeInfoScreen h1,
.challengeDetailScreen h1{
  font-size:clamp(30px,9vw,46px);
  line-height:.94;
  margin-bottom:14px;
}
.challengeInfoHero{
  position:relative;
  overflow:hidden;
  padding:18px;
  border-color:rgba(218,188,92,.34);
  background:linear-gradient(145deg,rgba(26,26,24,.94),rgba(9,9,8,.98));
  box-shadow:0 0 28px rgba(201,168,76,.09), inset 0 0 22px rgba(201,168,76,.035);
}
.challengeInfoHero:before{
  content:"";
  position:absolute;
  inset:-40% -20% auto auto;
  width:180px;
  height:180px;
  background:radial-gradient(circle,rgba(201,168,76,.16),transparent 65%);
  pointer-events:none;
}
.challengeInfoKpi{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:end;
  gap:3px 12px;
  padding-bottom:14px;
  margin-bottom:14px;
  border-bottom:1px solid rgba(201,168,76,.2);
}
.challengeInfoKpi span,
.challengeStats span{
  font-family:var(--font-c);
  letter-spacing:.16em;
  color:var(--gold-dim);
  font-size:10px;
  font-weight:800;
}
.challengeInfoKpi strong{
  grid-row:1 / span 2;
  font-family:var(--font-display);
  font-size:46px;
  line-height:.9;
  color:var(--gold);
  text-shadow:0 0 18px rgba(201,168,76,.22);
}
.challengeInfoKpi em,
.challengeStats em{
  font-style:normal;
  color:var(--text3);
  font-size:12px;
}
.challengeInfoText p{
  color:var(--text2);
  font-size:14px;
  line-height:1.65;
  margin:0 0 12px;
}
.challengeInfoText p:last-child{margin-bottom:0;color:var(--text);}
.challengeStartBtn{margin:14px 16px 20px;width:calc(100% - 32px);}
.challengeProCard{
  margin:10px 16px 10px;
  padding:16px;
  border:1.5px solid rgba(218,188,92,.36);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(22,22,20,.88),rgba(7,7,7,.96));
  box-shadow:0 0 26px rgba(201,168,76,.10), inset 0 0 30px rgba(255,255,255,.025);
}
.challengeProTop{display:flex;align-items:center;gap:16px;}
.challengeBigRing{position:relative;width:118px;height:118px;display:flex;align-items:center;justify-content:center;flex:0 0 118px;}
.challengeBigRingText strong{font-size:24px;color:var(--text);}
.challengeBigRingText span{font-size:8px;letter-spacing:.12em;color:var(--gold-dim);}
.challengeStats{flex:1;display:grid;gap:8px;}
.challengeStats div{
  border:1px solid rgba(201,168,76,.18);
  border-radius:16px;
  padding:9px 10px;
  background:rgba(0,0,0,.2);
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:2px 8px;
}
.challengeStats b{
  grid-row:1 / span 2;
  grid-column:2;
  font-family:var(--font-display);
  color:var(--text);
  font-size:24px;
  line-height:.9;
}
.challengeProProgress{height:5px;margin-top:14px;background:rgba(255,255,255,.08);}
.challengeEntryCard input,
.challengeEntryCard textarea{
  background:rgba(0,0,0,.22);
  border:1.5px solid rgba(201,168,76,.18);
}
.challengeHistoryCard{padding-bottom:12px;}
@media (max-width:380px){
  .challengeProTop{gap:10px;}
  .challengeBigRing{width:104px;height:104px;flex-basis:104px;}
  .challengeBigRing svg{width:104px;height:104px;}
  .challengeStats b{font-size:21px;}
}


/* FINAL TARGETED PATCH — visibility bottom padding + 30-day journal database + compact goal form */
/* General long content screens: enough bottom space so the last content is always reachable on iOS browser/PWA */
.screen:not(.mainHomeBg):not(.courseHomeBg):not(.aiPraxisScreen):not(.praxisCoachPage):not(.dayIntroScreen):not(.lockStartScreen):not(.introVideoScreen):not(.goalScreen){
  padding-bottom: calc(var(--sab) + 78px) !important;
}
.extraDetailScreen,
.challengeDetailScreen,
.challengeInfoScreen,
.journalArchiveScreen{
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:calc(var(--sab) + 90px) !important;
}
.card.article,
.challengeHistoryCard,
.journalArchiveList{ margin-bottom:calc(var(--sab) + 70px) !important; }

/* 30 Tage AI Home: add one full-width database button under the two existing path buttons */
.thirtyCourseHome .pathGrid{
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
}
.thirtyCourseHome .pathGrid .pathImageBtnWide{
  grid-column:1 / -1 !important;
  height:78px !important;
  border-radius:16px !important;
  background-position:center !important;
}
.thirtyCourseHome .pathGrid .pathImageBtnWide span{
  bottom:50% !important;
  transform:translate(-50%,50%) !important;
}
@media(max-height:760px){
  .thirtyCourseHome .courseHero{height:50vh!important;min-height:330px!important;}
  .thirtyCourseHome .pathGrid .pathImageBtn{height:110px!important;}
  .thirtyCourseHome .pathGrid .pathImageBtnWide{height:68px!important;}
  .thirtyCourseHome .grid3{padding-bottom:calc(var(--sab) + 10px)!important;}
}

/* Goal Blueprint form: bring the form up and compact it so all goal fields stay visible/reachable */
.goalFormScreen{
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:calc(var(--sab) + 70px) !important;
}
.goalFormScreen .goalHero{
  height:34vh!important;
  min-height:250px!important;
  max-height:300px!important;
}
.goalFormScreen .goalHeroContent{
  padding:0 18px 12px!important;
}
.goalFormScreen > .card{
  margin-top:8px!important;
  padding:14px 18px 16px!important;
}
.goalFormScreen label{
  margin-top:10px!important;
  font-size:12px!important;
}
.goalFormScreen textarea{
  min-height:68px!important;
  height:68px!important;
  padding:12px 14px!important;
  font-size:15px!important;
  line-height:1.35!important;
}
.goalFormScreen .btn{
  margin-top:12px!important;
}
@media(max-height:760px){
  .goalFormScreen .goalHero{height:29vh!important;min-height:220px!important;max-height:250px!important;}
  .goalFormScreen textarea{min-height:58px!important;height:58px!important;}
  .goalFormScreen > .card{padding:12px 16px 14px!important;}
  .goalFormScreen label{margin-top:8px!important;}
}

.journalArchiveCard p{
  padding:8px 0 0 !important;
  font-size:14px !important;
  line-height:1.6 !important;
}
.journalArchiveCard b{ color:var(--gold); font-family:var(--font-c); letter-spacing:.05em; text-transform:uppercase; }

/* FINAL PATCH — tactile press feedback + Safari/PWA viewport-safe course homes */
:root{
  --rd-press-glow: rgba(212,174,85,.38);
}
button,
.btn,
.iconBtn,
.choiceCard,
.pathImageBtn,
.tile,
.coachLaunchBtn,
.performanceFolderBtn,
.dashboardReviewBtn,
.challengeStartBtn,
.challengeProCard button,
.moduleCard,
.langBtn,
.menuBtn{
  transition: transform 120ms ease, box-shadow 120ms ease, filter 120ms ease, border-color 120ms ease !important;
  will-change: transform, filter;
}
button:active,
.btn:active,
.iconBtn:active,
.choiceCard:active,
.pathImageBtn:active,
.tile:active,
.coachLaunchBtn:active,
.performanceFolderBtn:active,
.dashboardReviewBtn:active,
.challengeStartBtn:active,
.challengeProCard button:active,
.moduleCard:active,
.langBtn:active,
.menuBtn:active{
  transform: scale(.975) !important;
  filter: brightness(1.08) !important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.12) inset,
    0 0 20px var(--rd-press-glow),
    0 12px 30px rgba(0,0,0,.46) !important;
  border-color: rgba(232,201,106,.82) !important;
}
.iconBtn:active,
.chatInputRow button:active{
  transform: scale(.92) !important;
}

/* Mobile Safari browser-safe layout: keep labels readable and bottom buttons reachable */
.mainHomeBg,
.courseHomeBg{
  min-height:100svh !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:calc(var(--sab) + 18px) !important;
}
.mainHomeBg .mainHomeHeroContent{
  transform:translateY(8px) !important;
  padding-bottom:18px !important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:18px !important;
  padding-bottom:calc(var(--sab) + 38px) !important;
}
.thirtyCourseHome{
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:calc(var(--sab) + 76px) !important;
}
.thirtyCourseHome .grid3{
  padding-bottom:12px !important;
}
.thirtyCourseHome .pathGrid{
  margin-bottom:0 !important;
}
@media(max-height:760px){
  .mainHomeBg .mainHomeHeroContent{
    transform:translateY(4px) !important;
    padding-bottom:20px !important;
  }
  .mainHomeBg .mainChoiceGrid{
    margin-top:20px !important;
    padding-bottom:calc(var(--sab) + 48px) !important;
  }
  .thirtyCourseHome{
    padding-bottom:calc(var(--sab) + 92px) !important;
  }
}

/* FINAL FIX 2026-05-03: tactile buttons + Safari/PWA-safe course selection + 30-day database bottom */
:root{--rd-press-glow:rgba(212,174,85,.40);} 
button,.btn,.iconBtn,.choiceCard,.pathImageBtn,.tile,.coachLaunchBtn,.performanceFolderBtn,.dashboardReviewBtn,.challengeStartBtn,.challengeProCard button,.moduleCard,.moduleImageCard,.langBtn,.menuBtn,.journalDatabaseBtn{
  transition:transform 120ms ease,box-shadow 120ms ease,filter 120ms ease,border-color 120ms ease!important;
  will-change:transform,filter!important;
  -webkit-tap-highlight-color:rgba(212,174,85,.12)!important;
  touch-action:manipulation!important;
}
button:active,.btn:active,.iconBtn:active,.choiceCard:active,.pathImageBtn:active,.tile:active,.coachLaunchBtn:active,.performanceFolderBtn:active,.dashboardReviewBtn:active,.challengeStartBtn:active,.challengeProCard button:active,.moduleCard:active,.moduleImageCard:active,.langBtn:active,.menuBtn:active,.journalDatabaseBtn:active{
  transform:scale(.975)!important;
  filter:brightness(1.08)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.12) inset,0 0 20px var(--rd-press-glow),0 12px 30px rgba(0,0,0,.46)!important;
  border-color:rgba(232,201,106,.82)!important;
}
.iconBtn:active,.chatInputRow button:active{transform:scale(.92)!important;}

/* Kursauswahl: Browser und Home-Screen stabilisieren, ohne schwarze Top-Lücke und ohne abgeschnittene Buttons */
.mainHomeBg{
  min-height:100dvh!important;
  min-height:100svh!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  padding-bottom:calc(env(safe-area-inset-bottom) + 18px)!important;
  background:#050505!important;
}

.mainHomeBg .mainHomeHero{
  margin-top:0!important;
  height:56svh!important;
  min-height:430px!important;
  max-height:560px!important;
  background-position:center top!important;
}
.mainHomeBg .mainHomeHeroContent{
  transform:none!important;
  padding:0 18px 24px!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:-6px!important;
  gap:14px!important;
  padding:0 16px calc(env(safe-area-inset-bottom) + 26px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:148px!important;
  min-height:148px!important;
}
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:50svh!important;min-height:365px!important;max-height:440px!important;}
  .mainHomeBg .mainHomeHeroContent{padding-bottom:20px!important;}
  .mainHomeBg .mainChoiceGrid{gap:12px!important;padding-bottom:calc(env(safe-area-inset-bottom) + 34px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:136px!important;min-height:136px!important;}
}
@media(max-height:700px){
  .mainHomeBg .mainHomeHero{height:47svh!important;min-height:330px!important;max-height:385px!important;}
  .mainHomeBg .mainHomeTitle{font-size:clamp(30px,8.2vw,42px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:126px!important;min-height:126px!important;}
}

/* 30-Tage-AI Home: Datenbank immer als letzter Button unten, gleiche Breite/Glow */
.thirtyCourseHome .thirtyDatabaseBottom{
  display:block!important;
  width:calc(100% - 32px)!important;
  height:82px!important;
  min-height:82px!important;
  margin:10px 16px calc(env(safe-area-inset-bottom) + 14px)!important;
  border-radius:18px!important;
  border:1.15px solid rgba(225,190,92,.64)!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.08) inset,0 0 22px rgba(201,168,76,.18),0 12px 30px rgba(0,0,0,.36)!important;
  flex:0 0 auto!important;
}
.thirtyCourseHome .thirtyDatabaseBottom span{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:50%!important;
  transform:translate(-50%,50%)!important;
  width:calc(100% - 34px)!important;
  text-align:center!important;
  font-family:var(--font-c)!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:var(--text)!important;
  z-index:2!important;
}
.thirtyCourseHome .thirtyDatabaseBottom::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.76),rgba(10,10,10,.26));z-index:1;}
.thirtyCourseHome .pathGrid .journalDatabaseBtn:not(.thirtyDatabaseBottom){display:none!important;}
.thirtyCourseHome .grid3{padding-bottom:0!important;}
@media(max-height:760px){.thirtyCourseHome .thirtyDatabaseBottom{height:72px!important;min-height:72px!important;margin-top:8px!important;}}

/* FINAL ONLY PATCH — uniform premium press haptic on every clickable button/card */
.rd-pressable,
button,
.btn,
.iconBtn,
.choiceCard,
.pathImageBtn,
.tile,
.coachLaunchBtn,
.performanceFolderBtn,
.dashboardReviewBtn,
.challengeStartBtn,
.challengeProCard button,
.moduleCard,
.moduleImageCard,
.langBtn,
.menuBtn,
.journalDatabaseBtn,
[role="button"],
a[href],
[onclick]:not(input):not(textarea):not(select){
  transition: transform 115ms cubic-bezier(.2,.8,.2,1), filter 115ms ease, box-shadow 115ms ease, border-color 115ms ease !important;
  -webkit-tap-highlight-color: transparent !important;
  touch-action: manipulation !important;
  cursor: pointer;
  transform-origin: center center !important;
}
.rd-pressed,
.rd-pressable:active,
button:active,
.btn:active,
.iconBtn:active,
.choiceCard:active,
.pathImageBtn:active,
.tile:active,
.coachLaunchBtn:active,
.performanceFolderBtn:active,
.dashboardReviewBtn:active,
.challengeStartBtn:active,
.challengeProCard button:active,
.moduleCard:active,
.moduleImageCard:active,
.langBtn:active,
.menuBtn:active,
.journalDatabaseBtn:active,
[role="button"]:active,
a[href]:active,
[onclick]:not(input):not(textarea):not(select):active{
  transform: scale(.975) !important;
  filter: brightness(1.10) saturate(1.04) !important;
  border-color: rgba(232,201,106,.84) !important;
  box-shadow: 0 0 0 1px rgba(255,226,140,.13) inset, 0 0 22px rgba(212,174,85,.40), 0 12px 30px rgba(0,0,0,.44) !important;
}
.iconBtn.rd-pressed,
.iconBtn:active,
.chatInputRow button.rd-pressed,
.chatInputRow button:active{
  transform: scale(.93) !important;
  filter: brightness(1.12) saturate(1.04) !important;
}

/* Additional Lessons 9-screen system */
.addonHome .addonGrid{gap:14px;}
.addonModuleCard .extraText{padding:14px 14px 16px;}
.addonModuleTop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text3);}
.addonModuleTop span:last-child{color:var(--gold);}
.addonDetail h1{font-size:32px;line-height:.95;margin-bottom:14px;}
.addonProgressHead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:8px 0 8px;}
.addonProgressHead div{display:flex;flex-direction:column;gap:4px;min-width:0;}
.addonProgressHead b{font-size:13px;color:var(--gold);letter-spacing:.12em;}
.addonProgressHead span{font-size:13px;color:var(--text2);line-height:1.25;}
.addonProgressHead em{font-style:normal;font-size:12px;color:var(--text3);}
.addonProgress{height:7px;margin-bottom:14px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;}
.addonProgress .bar{height:100%;background:linear-gradient(90deg,var(--gold),rgba(255,255,255,.65));border-radius:999px;}
.addonGoal{margin:12px 0;background:rgba(255,255,255,.045);border:1px solid rgba(214,178,103,.18);}
.addonGoal h3{font-size:12px;letter-spacing:.16em;color:var(--gold);margin:0 0 8px;text-transform:uppercase;}
.addonGoal p{font-size:14px;line-height:1.55;color:var(--text2);margin:0;}
.addonLessonCard{margin-top:12px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09);}
.addonScreenKicker{font-size:10px;letter-spacing:.18em;color:var(--gold);text-transform:uppercase;margin-bottom:8px;}
.addonLessonCard h2{font-size:22px;line-height:1.08;margin:0 0 16px;color:var(--text);}
.addonBlock{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);}
.addonBlock.primary{border-top:0;padding-top:0;margin-top:0;}
.addonBlock.aha{background:rgba(214,178,103,.08);border:1px solid rgba(214,178,103,.16);border-radius:18px;padding:14px;margin-top:16px;}
.addonBlockLabel{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
.addonBlock p{font-size:15px;line-height:1.62;color:var(--text2);margin:0 0 12px;}
.addonBlock p:last-child{margin-bottom:0;}
.addonInputBox{margin-top:16px;padding:14px;border-radius:18px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.08);}
.addonInputBox label{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
.addonInputBox p{font-size:13px;line-height:1.45;color:var(--text3);margin:0 0 10px;}
.addonInputBox textarea{width:100%;min-height:110px;resize:vertical;border-radius:15px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.45);color:var(--text);padding:13px;font:inherit;font-size:14px;outline:none;}
.addonInputBox textarea:focus{border-color:rgba(214,178,103,.45);box-shadow:0 0 0 3px rgba(214,178,103,.08);}
.addonNavRow{display:grid;grid-template-columns:.78fr 1.22fr;gap:10px;margin:16px 0 2px;}
.addonNavRow .btn{margin:0;min-height:52px;font-size:12px;line-height:1.15;padding:12px 10px;}
@media (max-width:380px){.addonDetail h1{font-size:28px}.addonLessonCard h2{font-size:20px}.addonNavRow{grid-template-columns:1fr}.addonBlock p{font-size:14px}}

/* addon customer final patch */
.addonDetail{padding-top:calc(28px + env(safe-area-inset-top));}
.addonDetail .addonProgressHead{margin-top:10px;}

/* Addon final polish: progress matches content width */
.addonDetail > .addonProgressHead,
.addonDetail > .addonProgress{
  margin-left:16px;
  margin-right:16px;
  width:calc(100% - 32px);
}
.addonBlock.aha .addonBlockLabel{display:none;}


/* Premium motion layer - buttons intentionally untouched */
.screen.rd-screen-enter{opacity:0;transform:translateY(10px);transition:opacity .26s ease, transform .26s ease;}
.screen.rd-screen-visible{opacity:1;transform:translateY(0);}
.progress .bar,.addonProgress .bar{transition:width .42s cubic-bezier(.22,1,.36,1);box-shadow:0 0 10px rgba(214,178,103,.24);}
.chatBubble{animation:rdMsgIn .28s ease both;}
.coachMsgRow{animation:rdMsgIn .28s ease both;}
@keyframes rdMsgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
input:focus,textarea:focus,select:focus{border-color:rgba(214,178,103,.45)!important;box-shadow:0 0 0 3px rgba(214,178,103,.08)!important;}
.addonLessonCard,.card,.coachLaunchCard,.performanceFolderBtn{transition:box-shadow .26s ease, border-color .26s ease;}
.addonLessonCard:hover,.card:focus-within,.coachLaunchCard:hover,.performanceFolderBtn:hover{box-shadow:0 0 16px rgba(214,178,103,.11);}
@media (prefers-reduced-motion: reduce){.screen.rd-screen-enter,.progress .bar,.addonProgress .bar,.chatBubble,.coachMsgRow{transition:none!important;animation:none!important;transform:none!important;opacity:1!important}}

/* Targeted database folder polish */
.databaseScreen .databaseFolder{margin:16px 0;padding:18px;border-radius:22px;}
.databaseScreen .databaseFolderBody{margin-top:12px;}
.databaseSubFolder{border-top:1px solid rgba(212,175,55,.16);padding-top:14px;margin-top:14px;}
.databaseSubFolder:first-child{border-top:0;padding-top:0;margin-top:0;}
.databaseSubFolder h3{font-family:var(--font-display);font-size:18px;letter-spacing:.06em;color:var(--text);margin:0 0 10px;text-transform:uppercase;}
.databaseEntry{border:1px solid rgba(212,175,55,.14);border-radius:16px;padding:12px 14px;margin:10px 0;background:rgba(255,255,255,.025);}
.databaseEntry h4{font-family:var(--font-display);font-size:15px;letter-spacing:.05em;color:var(--gold);margin:0 0 8px;text-transform:uppercase;}
.databaseEntry p,.databaseFolder p{font-size:14px;line-height:1.55;color:var(--text2);padding:4px 0 0;}
.addonInputBox p{display:none;}


/* VISUAL LOCK PATCH - only cards that are logically locked */
.moduleImageCard,
.pathImageBtn { position: relative; overflow: hidden; }
.lockedVisual::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(180deg, rgba(0,0,0,0.20), rgba(0,0,0,0.58));
  backdrop-filter: saturate(0.8) brightness(0.86);
  -webkit-backdrop-filter: saturate(0.8) brightness(0.86);
  pointer-events: none;
}
.rdLockBadge {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 5;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  border: 1px solid rgba(225,190,92,0.72);
  background: rgba(8,8,8,0.78);
  color: var(--gold);
  font-size: 17px;
  box-shadow: 0 0 0 1px rgba(255,226,140,0.08) inset, 0 0 18px rgba(201,168,76,0.22), 0 12px 24px rgba(0,0,0,0.42);
  pointer-events: none;
}
.lockedVisual .moduleNum,
.lockedVisual > div:not(.rdLockBadge),
.lockedVisual span {
  position: relative;
  z-index: 4;
}
.lockedVisual {
  filter: grayscale(0.18) brightness(0.82);
}
.lockedVisual:active {
  transform: none !important;
}

/* FINAL HOME LOCK UI FIX: keep original button image/text layout, center lock icon only */
.courseHomeBg .pathImageBtn.lockedVisual::before,
.courseHomeBg .choiceCard.lockedVisual::before {
  display: none !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.courseHomeBg .pathImageBtn.lockedVisual,
.courseHomeBg .choiceCard.lockedVisual {
  filter: none !important;
}
.courseHomeBg .pathImageBtn.lockedVisual span,
.courseHomeBg .choiceCard.lockedVisual span,
.courseHomeBg .pathImageBtn.lockedVisual .choiceInner,
.courseHomeBg .choiceCard.lockedVisual .choiceInner {
  position: relative !important;
  z-index: 3 !important;
}
.courseHomeBg .pathImageBtn.lockedVisual .rdLockBadge,
.courseHomeBg .choiceCard.lockedVisual .rdLockBadge {
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  transform: translate(-50%, -50%) !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 16px !important;
  background: rgba(8,8,8,0.62) !important;
  z-index: 6 !important;
}

/* FINAL PRACTICE CARD TEXT FIX - only locked AI Practice button on course home */
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn.lockedVisual span {
  position: absolute !important;
  top: auto !important;
  bottom: 18px !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: calc(100% - 34px) !important;
  text-align: center !important;
  z-index: 7 !important;
  display: block !important;
  pointer-events: none !important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn.lockedVisual .rdLockBadge {
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  transform: translate(-50%, -50%) !important;
}
.choiceCard.lockedCourseCard{filter:grayscale(.25) brightness(.68); cursor:default; pointer-events:none; opacity:.78;}
.choiceCard.lockedCourseCard .choiceArrow{font-size:20px; opacity:.95;}

/* v13 modal + premium test access polish */
.rdModalOverlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.78);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:22px;}
.rdModalBox{width:100%;max-width:390px;border:1px solid rgba(201,162,74,.45);border-radius:28px;background:linear-gradient(180deg,rgba(25,24,20,.98),rgba(5,5,5,.98));box-shadow:0 28px 80px rgba(0,0,0,.65),0 0 34px rgba(201,162,74,.14);padding:28px 22px;text-align:left;}
.rdModalBox h2{font-family:var(--font-display);font-size:clamp(30px,8vw,44px);line-height:.95;margin:16px 0 14px;color:var(--text);text-transform:uppercase;letter-spacing:.02em;}
.rdModalBox p{color:var(--text2);font-size:16px;line-height:1.6;margin:0 0 22px;padding:0;}
.settingsSection input#ownerTestCode{width:100%;box-sizing:border-box;border:1px solid rgba(201,162,74,.45);border-radius:16px;background:rgba(0,0,0,.24);color:var(--text);padding:16px 14px;font:700 16px var(--font-ui);outline:none;}
.settingsSection input#ownerTestCode:focus{border-color:rgba(230,198,114,.8);box-shadow:0 0 0 3px rgba(201,162,74,.12);}

/* OPTIK STEP 2 — proportional course selection + journal waiting screen + stricter locked visual */
.mainHomeBg .mainHomeHero{
  height:52svh!important;
  min-height:365px!important;
  max-height:475px!important;
  background-position:center top!important;
}
.mainHomeBg .mainHomeHero::after{
  background:linear-gradient(180deg,rgba(5,5,5,.03) 0%,rgba(5,5,5,.12) 42%,rgba(5,5,5,.68) 78%,#050505 100%)!important;
}
.mainHomeBg .mainHomeHeroContent{
  padding:0 18px 18px!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:0!important;
  gap:14px!important;
  padding:0 16px calc(env(safe-area-inset-bottom) + 18px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:142px!important;
  min-height:142px!important;
  border-radius:20px!important;
}
.mainHomeBg .choiceText h3{font-size:clamp(22px,6.8vw,31px)!important;line-height:.95!important;}
.mainHomeBg .choiceSubLabel{font-size:13px!important;letter-spacing:.20em!important;}
.lockedCourseCard{filter:saturate(.55) brightness(.54)!important;cursor:not-allowed!important;}
.lockedCourseCard::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.24);z-index:1;pointer-events:none;}
.lockedCourseCard .choiceInner{position:relative;z-index:2;}
.lockedCourseCard .choiceArrow{font-size:22px!important;background:rgba(5,5,5,.58)!important;border-color:rgba(225,190,92,.55)!important;}

.lockStartScreen{
  min-height:100svh!important;
  min-height:100dvh!important;
  height:auto!important;
  overflow-y:auto!important;
  background:#050505!important;
  position:relative!important;
  padding-bottom:calc(env(safe-area-inset-bottom) + 18px)!important;
}

.lockStartScreen .lockStartHero{
  flex:0 0 auto!important;
  width:100%!important;
  height:46svh!important;
  min-height:330px!important;
  max-height:430px!important;
  background-size:cover!important;
  background-position:center top!important;
  display:block!important;
  padding:0!important;
  position:relative!important;
}
.lockStartScreen .lockStartHero::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(5,5,5,.02) 0%,rgba(5,5,5,.10) 42%,rgba(5,5,5,.72) 82%,#050505 100%)!important;
}
.lockStartScreen .lockStartContent{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  padding:14px 18px 0!important;
  margin-top:-18px!important;
  text-align:left!important;
}
.lockStartScreen .lockStartContent h1{
  font-size:clamp(44px,13vw,64px)!important;
  line-height:.90!important;
  padding:8px 0 0!important;
  margin:0!important;
}
.lockStartScreen .lockStartContent p{
  max-width:360px!important;
  padding:14px 0 0!important;
  font-size:18px!important;
  line-height:1.55!important;
}
.lockStartScreen .lockJournalBtn{
  flex:0 0 auto!important;
  margin:22px 18px 0!important;
  width:calc(100% - 36px)!important;
  height:72px!important;
  min-height:72px!important;
}
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:48svh!important;min-height:330px!important;max-height:405px!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:132px!important;min-height:132px!important;}
  .lockStartScreen .lockStartHero{height:42svh!important;min-height:285px!important;max-height:360px!important;}
  .lockStartScreen .lockStartContent h1{font-size:clamp(40px,12vw,56px)!important;}
  .lockStartScreen .lockStartContent p{font-size:17px!important;line-height:1.48!important;}
  .lockStartScreen .lockJournalBtn{height:64px!important;min-height:64px!important;margin-top:18px!important;}
}
@media(max-height:700px){
  .mainHomeBg .mainHomeHero{height:45svh!important;min-height:300px!important;max-height:350px!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:122px!important;min-height:122px!important;}
  .lockStartScreen .lockStartHero{height:39svh!important;min-height:250px!important;max-height:315px!important;}
  .lockStartScreen .lockStartContent{padding-top:10px!important;}
  .lockStartScreen .lockStartContent p{font-size:18px!important;}
}

/* STEP 3 — surgical visual corrections from screenshots: course selection proportions + 7-day database order */
.mainHomeBg{
  padding-top:0!important;
  background:#050505!important;
}

.mainHomeBg .mainHomeHero{
  margin-top:calc(-1 * env(safe-area-inset-top))!important;
  height:59svh!important;
  min-height:455px!important;
  max-height:590px!important;
  background-size:cover!important;
  background-position:center top!important;
}
.mainHomeBg .mainHomeHero::after{
  background:linear-gradient(to bottom,rgba(0,0,0,.02) 0%,rgba(0,0,0,.12) 38%,rgba(0,0,0,.66) 76%,#050505 100%)!important;
}
.mainHomeBg .mainHomeHeroContent{
  transform:translateY(24px)!important;
  padding:0 18px 18px!important;
}
.mainHomeBg .mainHomeTitle{
  font-size:clamp(43px,11.1vw,58px)!important;
  line-height:.91!important;
  letter-spacing:.015em!important;
}
.mainHomeBg .mainHomeSubtitle{
  margin-top:14px!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:8px!important;
  gap:18px!important;
  padding:0 16px calc(env(safe-area-inset-bottom) + 56px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:166px!important;
  min-height:166px!important;
  border-radius:24px!important;
}
.mainHomeBg .mainChoiceGrid .choiceText h3{
  font-size:clamp(25px,7.05vw,35px)!important;
  line-height:.96!important;
  letter-spacing:.035em!important;
  max-width:calc(100% - 76px)!important;
  white-space:normal!important;
}
.mainHomeBg .mainChoiceGrid .choiceSubLabel{
  font-size:13px!important;
  letter-spacing:.24em!important;
  margin-bottom:9px!important;
}
.mainHomeBg .mainChoiceGrid .choiceArrow{
  width:54px!important;
  height:54px!important;
  right:22px!important;
}
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:55svh!important;min-height:410px!important;max-height:500px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(20px)!important;padding-bottom:16px!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:6px!important;gap:15px!important;padding-bottom:calc(env(safe-area-inset-bottom) + 72px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:154px!important;min-height:154px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3{font-size:clamp(23px,6.55vw,31px)!important;}
}
@media(max-height:700px){
  .mainHomeBg .mainHomeHero{height:53svh!important;min-height:365px!important;max-height:430px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(18px)!important;}
  .mainHomeBg .mainHomeTitle{font-size:clamp(36px,9.5vw,48px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:140px!important;min-height:140px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3{font-size:clamp(21px,5.9vw,28px)!important;}
}

/* Locked 7-day tile for direct 30-day customers: visually darker with compact premium lock */
.mainHomeBg .choiceCard.lockedCourseCard{
  filter:saturate(.82) brightness(.58)!important;
  pointer-events:none!important;
}
.mainHomeBg .choiceCard.lockedCourseCard::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:rgba(0,0,0,.26)!important;
  z-index:1!important;
}
.mainHomeBg .choiceCard.lockedCourseCard .choiceInner{position:relative!important;z-index:2!important;}
.mainHomeBg .choiceCard.lockedCourseCard .choiceArrow{
  font-size:24px!important;
  opacity:.94!important;
}

/* 7-day course home: start course first, 3 equal modules, database last as lower slim button */
.sevenCourseHome .sevenHomeActions{
  display:block!important;
  padding:0 16px!important;
  margin-top:14px!important;
}
.sevenCourseHome .sevenHomeActions .sevenStartCard{
  height:128px!important;
  min-height:128px!important;
  margin:0!important;
}
.sevenCourseHome .sevenHomeActions .sevenDatabaseCard{display:none!important;}
.sevenCourseHome .grid3{
  margin-top:18px!important;
  padding:0 16px!important;
}
.sevenCourseHome .sevenDatabaseBottom{
  display:block!important;
  width:calc(100% - 32px)!important;
  height:74px!important;
  min-height:74px!important;
  margin:18px 16px calc(env(safe-area-inset-bottom) + 28px)!important;
  border-radius:18px!important;
  border:1.15px solid rgba(225,190,92,.64)!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.08) inset,0 0 22px rgba(201,168,76,.18),0 12px 30px rgba(0,0,0,.36)!important;
  position:relative!important;
  overflow:hidden!important;
}
.sevenCourseHome .sevenDatabaseBottom::after{
  content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.80),rgba(10,10,10,.32));z-index:1;
}
.sevenCourseHome .sevenDatabaseBottom span{
  position:absolute!important;
  left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;
  width:calc(100% - 34px)!important;text-align:center!important;
  font-family:var(--font-c)!important;font-size:14px!important;font-weight:700!important;
  letter-spacing:.09em!important;text-transform:uppercase!important;color:var(--text)!important;z-index:2!important;
}

/* Strong Start / journal-wait screen: reduce hero dominance and fix premium spacing */
.lockStartScreen{
  min-height:100svh!important;
  overflow-y:auto!important;
  padding-bottom:calc(env(safe-area-inset-bottom) + 28px)!important;
}

.lockStartHero{
  height:43svh!important;
  min-height:310px!important;
  max-height:390px!important;
  background-size:cover!important;
  background-position:center top!important;
}
.lockStartHero::after{
  background:linear-gradient(to bottom,rgba(0,0,0,.04) 0%,rgba(0,0,0,.10) 42%,rgba(0,0,0,.76) 82%,#050505 100%)!important;
}
.lockStartContent{
  margin-top:4px!important;
  padding:0 18px!important;
}
.lockStartContent h1{
  font-size:clamp(46px,13vw,66px)!important;
  line-height:.88!important;
  margin-top:20px!important;
}
.lockStartContent p{
  margin-top:22px!important;
  font-size:19px!important;
  line-height:1.55!important;
}
.lockJournalBtn{
  width:calc(100% - 32px)!important;
  min-height:72px!important;
  margin:34px 16px 0!important;
  border-radius:20px!important;
}
@media(max-height:760px){
  .lockStartHero{height:38svh!important;min-height:280px!important;max-height:340px!important;}
  .lockStartContent{margin-top:0!important;}
  .lockStartContent h1{font-size:clamp(42px,11.6vw,58px)!important;margin-top:17px!important;}
  .lockStartContent p{font-size:17px!important;margin-top:18px!important;}
  .lockJournalBtn{min-height:66px!important;margin-top:26px!important;}
}

/* STEP 4 — targeted cleanup from screenshots: cleaner course selection, no right arrows, corrected spacing */
/* Full-bleed start: keep hero behind the iOS status area as far as Safari/PWA allows */
.mainHomeBg{
  padding-top:0!important;
  margin-top:calc(-1 * env(safe-area-inset-top, 0px))!important;
  min-height:calc(100svh + env(safe-area-inset-top, 0px))!important;
  background:#050505!important;
}

.mainHomeBg .mainHomeHero{
  margin-top:0!important;
  height:57svh!important;
  min-height:430px!important;
  max-height:535px!important;
  background-size:cover!important;
  background-position:center top!important;
}
.mainHomeBg .mainHomeHeroContent{
  transform:translateY(30px)!important;
  padding:0 18px 18px!important;
}
.mainHomeBg .mainHomeTitle{
  font-size:clamp(40px,10.4vw,54px)!important;
  line-height:.92!important;
}
.mainHomeBg .mainHomeSubtitle{
  display:block!important;
  margin-top:15px!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.22em!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:20px!important;
  gap:15px!important;
  padding:0 16px calc(env(safe-area-inset-bottom, 0px) + 58px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:148px!important;
  min-height:148px!important;
  border-radius:23px!important;
}
.mainHomeBg .mainChoiceGrid .choiceInner{
  justify-content:center!important;
  padding:0 18px!important;
}
.mainHomeBg .mainChoiceGrid .choiceText{
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  align-items:center!important;
}
.mainHomeBg .mainChoiceGrid .choiceSubLabel{
  font-size:12px!important;
  letter-spacing:.28em!important;
  margin-bottom:8px!important;
}
.mainHomeBg .mainChoiceGrid .choiceText h3{
  max-width:none!important;
  width:100%!important;
  font-size:clamp(18px,5.15vw,25px)!important;
  line-height:1!important;
  letter-spacing:.045em!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.mainHomeBg .mainChoiceGrid .choiceArrow{
  display:none!important;
}
.mainHomeBg .choiceCard.lockedCourseCard .choiceInner{z-index:2!important;}

/* Compact browser-height variant: keep text in one line and avoid bottom crowding */
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:54svh!important;min-height:390px!important;max-height:470px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(26px)!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:16px!important;gap:13px!important;padding-bottom:calc(env(safe-area-inset-bottom, 0px) + 70px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:136px!important;min-height:136px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3{font-size:clamp(17px,4.75vw,23px)!important;}
}
@media(max-height:700px){
  .mainHomeBg .mainHomeHero{height:52svh!important;min-height:350px!important;max-height:410px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(22px)!important;}
  .mainHomeBg .mainHomeTitle{font-size:clamp(36px,9.4vw,48px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:126px!important;min-height:126px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3{font-size:clamp(16px,4.45vw,21px)!important;}
}

/* 7-day home: remove right-arrow circles from start/database cards and make labels sit calmer */
.sevenCourseHome .sevenStartCard .choiceArrow,
.sevenCourseHome .sevenDatabaseBottom .choiceArrow{
  display:none!important;
}
.sevenCourseHome .sevenStartCard .choiceInner{
  justify-content:center!important;
  padding:0 18px!important;
}
.sevenCourseHome .sevenStartCard .choiceText{
  width:100%!important;
  text-align:center!important;
  align-items:center!important;
}
.sevenCourseHome .sevenStartCard .choiceText h3{
  font-size:clamp(20px,5.6vw,27px)!important;
  line-height:1!important;
  letter-spacing:.04em!important;
  max-width:100%!important;
  white-space:nowrap!important;
}
.sevenCourseHome .sevenStartCard .choiceSubLabel{
  font-size:12px!important;
  letter-spacing:.25em!important;
  margin-bottom:7px!important;
}
.sevenCourseHome .sevenDatabaseBottom{
  height:68px!important;
  min-height:68px!important;
  margin-top:16px!important;
}
.sevenCourseHome .sevenDatabaseBottom span{
  font-size:13px!important;
  letter-spacing:.11em!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  text-align:center!important;
}

/* STEP 6 — precise course-selection repair from 11:44 screenshots
   Goal: undo the over-compressed layout, keep both course cards usable in Safari + PWA,
   center all card labels, remove the visual arrow circles, and stop text clipping. */
.mainHomeBg{
  margin-top:0!important;
  padding-top:0!important;
  min-height:100dvh!important;
  overflow-x:hidden!important;
  background:#050505!important;
}

.mainHomeBg .mainHomeHero{
  height:46dvh!important;
  min-height:360px!important;
  max-height:430px!important;
  margin-top:0!important;
  background-size:cover!important;
  background-position:center top!important;
  overflow:visible!important;
}
.mainHomeBg .mainHomeHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.20) 47%,rgba(0,0,0,.82) 82%,rgba(0,0,0,.98) 100%)!important;
}
.mainHomeBg .mainHomeHeroContent{
  bottom:0!important;
  transform:none!important;
  padding:0 18px 14px!important;
  z-index:3!important;
}
.mainHomeBg .mainHomeTitle{
  font-size:clamp(34px,9.1vw,46px)!important;
  line-height:.92!important;
  padding-top:6px!important;
}
.mainHomeBg .mainHomeSubtitle{
  display:block!important;
  margin:14px 0 0!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1.1!important;
  letter-spacing:.23em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  max-width:none!important;
  opacity:.92!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:12px!important;
  gap:14px!important;
  padding:0 16px calc(env(safe-area-inset-bottom,0px) + 26px)!important;
  width:100%!important;
  overflow:visible!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:138px!important;
  min-height:138px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background-position:center center!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard::after{
  background:linear-gradient(180deg,rgba(0,0,0,.46) 0%,rgba(0,0,0,.58) 100%)!important;
}
.mainHomeBg .mainChoiceGrid .choiceInner{
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 18px!important;
}
.mainHomeBg .mainChoiceGrid .choiceText{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  width:100%!important;
  max-width:100%!important;
}
.mainHomeBg .mainChoiceGrid .choiceSubLabel{
  display:block!important;
  margin:0 0 8px!important;
  font-size:12px!important;
  line-height:1!important;
  letter-spacing:.29em!important;
  text-align:center!important;
}
.mainHomeBg .mainChoiceGrid .choiceText h3{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font-size:clamp(17px,4.65vw,23px)!important;
  line-height:1.02!important;
  letter-spacing:.045em!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.mainHomeBg .mainChoiceGrid .choiceArrow{display:none!important;}
.mainHomeBg .mainChoiceGrid .lockedCourseCard{
  filter:grayscale(.20) brightness(.64)!important;
  opacity:.82!important;
}

/* Browser-with-toolbar height: keep everything visible and non-clipped. */
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:43dvh!important;min-height:320px!important;max-height:365px!important;}
  .mainHomeBg .mainHomeHeroContent{padding-bottom:12px!important;}
  .mainHomeBg .mainHomeTitle{font-size:clamp(32px,8.3vw,42px)!important;}
  .mainHomeBg .mainHomeSubtitle{font-size:11px!important;margin-top:12px!important;letter-spacing:.22em!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:10px!important;gap:12px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 86px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:126px!important;min-height:126px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3{font-size:clamp(15px,4.2vw,20px)!important;letter-spacing:.035em!important;}
  .mainHomeBg .mainChoiceGrid .choiceSubLabel{font-size:11px!important;margin-bottom:7px!important;}
}
@media(max-height:680px){
  .mainHomeBg .mainHomeHero{height:41dvh!important;min-height:290px!important;max-height:325px!important;}
  .mainHomeBg .mainHomeTitle{font-size:clamp(30px,7.8vw,38px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:116px!important;min-height:116px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3{font-size:clamp(14px,3.8vw,18px)!important;}
}

/* PWA / Home-screen version: keep it calm, full-screen and not over-scrolled. */
@media(display-mode: standalone){
  .mainHomeBg{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;}
  .mainHomeBg .mainHomeHero{height:47dvh!important;min-height:370px!important;max-height:440px!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:14px!important;gap:14px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 20px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:140px!important;min-height:140px!important;}
}

/* 7-Day course home: remove arrow circles, center start/database labels, keep database last and calmer. */
.sevenCourseHome .sevenStartCard .choiceArrow,
.sevenCourseHome .sevenDatabaseBottom .choiceArrow,
.sevenCourseHome .journalDatabaseBtn .choiceArrow{display:none!important;}
.sevenCourseHome .sevenStartCard .choiceInner{
  justify-content:center!important;
  align-items:center!important;
  padding:0 18px!important;
}
.sevenCourseHome .sevenStartCard .choiceText{
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  align-items:center!important;
}
.sevenCourseHome .sevenStartCard .choiceSubLabel{
  margin:0 0 6px!important;
  font-size:12px!important;
  letter-spacing:.23em!important;
}
.sevenCourseHome .sevenStartCard .choiceText h3{
  font-size:clamp(18px,5.0vw,24px)!important;
  line-height:1!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
  text-align:center!important;
}
.sevenCourseHome .sevenDatabaseBottom{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:66px!important;
  min-height:66px!important;
  margin:14px 16px calc(env(safe-area-inset-bottom,0px) + 24px)!important;
}
.sevenCourseHome .sevenDatabaseBottom span{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:14px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
}

/* STEP 7 — course selection final alignment pass
   Only course selection visual spacing + locked-card text centering. */
.mainHomeBg{
  min-height:100dvh!important;
  background:
    radial-gradient(ellipse at 50% 78%, rgba(196,154,89,.12) 0%, rgba(196,154,89,.055) 28%, rgba(0,0,0,0) 58%),
    linear-gradient(180deg,#050505 0%,#050505 100%)!important;
  overflow-x:hidden!important;
}

.mainHomeBg .mainHomeHero{
  margin-top:calc(-1 * env(safe-area-inset-top,0px))!important;
  height:52dvh!important;
  min-height:430px!important;
  max-height:520px!important;
  background-position:center top!important;
  background-size:cover!important;
}
.mainHomeBg .mainHomeHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.10) 38%,rgba(0,0,0,.72) 78%,#050505 100%)!important;
}
.mainHomeBg .mainHomeHeroContent{
  bottom:0!important;
  transform:translateY(18px)!important;
  padding:0 18px 18px!important;
}
.mainHomeBg .mainHomeTitle{
  font-size:clamp(34px,9.0vw,46px)!important;
  line-height:.92!important;
  letter-spacing:.015em!important;
}
.mainHomeBg .mainHomeSubtitle{
  margin-top:20px!important;
  font-size:12px!important;
  line-height:1.15!important;
  letter-spacing:.26em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  opacity:.94!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:30px!important;
  gap:16px!important;
  padding:0 16px calc(env(safe-area-inset-bottom,0px) + 42px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:146px!important;
  min-height:146px!important;
  border-radius:24px!important;
  background-position:center center!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard::after{
  background:linear-gradient(180deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.58) 100%)!important;
}
.mainHomeBg .mainChoiceGrid .choiceInner,
.mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceInner{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 18px!important;
  z-index:3!important;
}
.mainHomeBg .mainChoiceGrid .choiceText,
.mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText{
  width:100%!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  transform:none!important;
  margin:0!important;
}
.mainHomeBg .mainChoiceGrid .choiceSubLabel,
.mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceSubLabel{
  position:static!important;
  display:block!important;
  margin:0 0 9px!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1!important;
  letter-spacing:.29em!important;
  text-align:center!important;
  transform:none!important;
}
.mainHomeBg .mainChoiceGrid .choiceText h3,
.mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText h3{
  position:static!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  font-size:clamp(18px,4.55vw,23px)!important;
  line-height:1.02!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
  text-align:center!important;
  transform:none!important;
}
.mainHomeBg .mainChoiceGrid .choiceArrow{display:none!important;}
.mainHomeBg .mainChoiceGrid .lockedCourseCard{
  filter:saturate(.68) brightness(.56)!important;
  opacity:.84!important;
}
.mainHomeBg .mainChoiceGrid .lockedCourseCard::before{
  background:rgba(0,0,0,.30)!important;
}

/* Safari with visible browser toolbar: same composition, just slightly tighter. */
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:50dvh!important;min-height:395px!important;max-height:455px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(18px)!important;padding-bottom:16px!important;}
  .mainHomeBg .mainHomeSubtitle{margin-top:18px!important;font-size:11.5px!important;letter-spacing:.24em!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:26px!important;gap:14px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 86px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:136px!important;min-height:136px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3,
  .mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText h3{font-size:clamp(16px,4.15vw,21px)!important;}
}
@media(max-height:680px){
  .mainHomeBg .mainHomeHero{height:48dvh!important;min-height:355px!important;max-height:395px!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:22px!important;gap:12px!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:124px!important;min-height:124px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3,
  .mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText h3{font-size:clamp(15px,3.9vw,19px)!important;}
}

/* Installed PWA/Home-screen: no clipping at top, balanced lower area, no micro-scroll. */
@media(display-mode: standalone){
  .mainHomeBg{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;}
  .mainHomeBg .mainHomeHero{height:53dvh!important;min-height:445px!important;max-height:535px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(20px)!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:32px!important;gap:16px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 28px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:148px!important;min-height:148px!important;}
}

/* STEP 8 — targeted fixes only: course selection no-scroll, database label center, 7-day module dashboard hero + start gate */
.mainHomeBg{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  background:
    radial-gradient(ellipse at 50% 88%, rgba(196,154,89,.10) 0%, rgba(196,154,89,.04) 34%, rgba(0,0,0,0) 68%),
    #050505!important;
}
.mainHomeBg .mainHomeHero{
  flex:0 0 auto!important;
  height:50dvh!important;
  min-height:405px!important;
  max-height:485px!important;
}
.mainHomeBg .mainHomeHeroContent{
  transform:translateY(12px)!important;
  padding-bottom:12px!important;
}
.mainHomeBg .mainChoiceGrid{
  flex:0 0 auto!important;
  margin-top:24px!important;
  gap:14px!important;
  padding:0 16px calc(env(safe-area-inset-bottom,0px) + 18px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:140px!important;
  min-height:140px!important;
}
@media(max-height:760px){
  .mainHomeBg .mainHomeHero{height:45dvh!important;min-height:330px!important;max-height:380px!important;}
  .mainHomeBg .mainHomeHeroContent{transform:translateY(8px)!important;padding-bottom:10px!important;}
  .mainHomeBg .mainHomeTitle{font-size:clamp(31px,8.1vw,40px)!important;}
  .mainHomeBg .mainHomeSubtitle{margin-top:14px!important;font-size:11px!important;letter-spacing:.24em!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:18px!important;gap:12px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 78px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:124px!important;min-height:124px!important;}
  .mainHomeBg .mainChoiceGrid .choiceText h3,
  .mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText h3{font-size:clamp(15px,4.0vw,19px)!important;}
}
@media(display-mode: standalone){
  .mainHomeBg{height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;}
  .mainHomeBg .mainHomeHero{height:52dvh!important;min-height:430px!important;max-height:515px!important;}
  .mainHomeBg .mainChoiceGrid{margin-top:24px!important;gap:15px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 18px)!important;}
  .mainHomeBg .mainChoiceGrid .choiceCard{height:144px!important;min-height:144px!important;}
}

/* 7-day home database label: exactly centered and slightly larger */
.sevenCourseHome .sevenDatabaseBottom,
.sevenCourseHome .journalDatabaseBtn.sevenDatabaseBottom{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.sevenCourseHome .sevenDatabaseBottom span,
.sevenCourseHome .journalDatabaseBtn.sevenDatabaseBottom span{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:auto!important;
  min-width:max-content!important;
  text-align:center!important;
  font-size:18px!important;
  line-height:1!important;
  letter-spacing:.11em!important;
}

/* New 7-day course dashboard: hero image from Start Course, premium spacing, clearer day images */
.moduleDashboardScreen{
  background:#050505!important;
  padding-bottom:calc(env(safe-area-inset-bottom,0px) + 20px)!important;
}

.moduleDashboardHero{
  position:relative;
  min-height:405px;
  height:48dvh;
  max-height:500px;
  margin-top:calc(-1 * env(safe-area-inset-top,0px));
  background-size:cover;
  background-position:center 35%;
  overflow:hidden;
  border-bottom:1px solid rgba(201,168,76,.08);
}
.moduleDashboardHero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.18) 44%,rgba(0,0,0,.78) 82%,#050505 100%);
  pointer-events:none;
}
.moduleDashboardHeroContent{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:2;
}
.moduleDashboardHeroContent h1{
  padding:10px 0 0!important;
  font-size:clamp(38px,10vw,52px)!important;
  line-height:.92!important;
}
.moduleDashboardHeroContent p{
  max-width:360px!important;
  padding:12px 0 0!important;
  color:rgba(240,237,232,.72)!important;
  font-size:15px!important;
  line-height:1.45!important;
}
.moduleDashboardHeroContent .courseIntroStartBtn{
  margin:18px 0 0!important;
  width:100%!important;
  height:58px!important;
  border-radius:18px!important;
}
.premiumModuleGrid{
  padding:14px 16px 0!important;
  gap:13px!important;
}
.premiumModuleGrid .premiumDayCard,
.moduleDashboardScreen .moduleImageCard{
  min-height:108px!important;
  height:108px!important;
  padding:18px 76px 18px 18px!important;
  border-radius:22px!important;
  background-size:cover!important;
  background-position:center center!important;
}
.premiumModuleGrid .moduleImageCard::before{
  background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.44) 52%,rgba(0,0,0,.58) 100%)!important;
}
.premiumModuleGrid .moduleImageCard.lockedVisual::before{
  background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.56) 55%,rgba(0,0,0,.70) 100%)!important;
}
.premiumModuleGrid .moduleNum{
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  font-size:24px!important;
}
.premiumModuleGrid .moduleCopy h3{
  font-size:18px!important;
  line-height:1.05!important;
}
.premiumModuleGrid .moduleCopy p{
  font-size:13px!important;
  margin-top:4px!important;
}
@media(max-height:760px){
  .moduleDashboardHero{height:44dvh;min-height:350px;max-height:410px;}
  .moduleDashboardHeroContent h1{font-size:clamp(34px,8.8vw,46px)!important;}
  .moduleDashboardHeroContent p{font-size:14px!important;padding-top:9px!important;}
  .moduleDashboardHeroContent .courseIntroStartBtn{height:54px!important;margin-top:14px!important;}
  .premiumModuleGrid .premiumDayCard,.moduleDashboardScreen .moduleImageCard{height:104px!important;min-height:104px!important;}
}

/* STEP 9 — 7-day module dashboard visual rebuild only: fuller hero, calmer spacing, clearer day imagery */
.moduleDashboardScreen{
  position:relative!important;
  background:#050505!important;
  overflow-x:hidden!important;
}

.moduleDashboardHero{
  margin-top:calc(-1 * env(safe-area-inset-top,0px))!important;
  padding-top:env(safe-area-inset-top,0px)!important;
  min-height:560px!important;
  height:59dvh!important;
  max-height:620px!important;
  background-size:cover!important;
  background-position:center top!important;
  border-bottom:0!important;
  overflow:hidden!important;
}
.moduleDashboardHero::after{
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.06) 26%,rgba(0,0,0,.34) 58%,rgba(0,0,0,.86) 91%,#050505 100%),
    radial-gradient(ellipse at 50% 78%,rgba(201,168,76,.09),rgba(0,0,0,0) 58%)!important;
}
.moduleDashboardHeroContent{
  left:20px!important;
  right:20px!important;
  bottom:26px!important;
}
.moduleDashboardHeroContent .cleanTag{
  margin-bottom:12px!important;
}
.moduleDashboardHeroContent h1{
  font-size:clamp(42px,10.4vw,58px)!important;
  line-height:.9!important;
  letter-spacing:.015em!important;
  max-width:350px!important;
}
.moduleDashboardHeroContent p{
  max-width:380px!important;
  padding-top:16px!important;
  font-size:18px!important;
  line-height:1.5!important;
  color:rgba(240,237,232,.78)!important;
}
.moduleDashboardHeroContent .courseIntroStartBtn{
  margin-top:24px!important;
  height:62px!important;
  border-radius:20px!important;
  box-shadow:0 14px 36px rgba(201,168,76,.18)!important;
}
.premiumModuleGrid{
  padding:20px 16px calc(env(safe-area-inset-bottom,0px) + 22px)!important;
  gap:16px!important;
}
.premiumModuleGrid .premiumDayCard,
.moduleDashboardScreen .moduleImageCard{
  min-height:128px!important;
  height:128px!important;
  padding:20px 78px 20px 20px!important;
  border-radius:24px!important;
  background-size:cover!important;
  background-position:center center!important;
  box-shadow:0 14px 34px rgba(0,0,0,.42),0 0 22px rgba(201,168,76,.08)!important;
}
.premiumModuleGrid .moduleImageCard::before{
  background:linear-gradient(90deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.24) 48%,rgba(0,0,0,.42) 100%)!important;
}
.premiumModuleGrid .moduleImageCard.lockedVisual::before{
  background:linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.42) 52%,rgba(0,0,0,.58) 100%)!important;
}
.premiumModuleGrid .moduleNum{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  font-size:25px!important;
}
.premiumModuleGrid .moduleCopy h3{
  font-size:20px!important;
  line-height:1.02!important;
  max-width:100%!important;
}
.premiumModuleGrid .moduleCopy p{
  font-size:14px!important;
  margin-top:7px!important;
  line-height:1.28!important;
  color:rgba(240,237,232,.68)!important;
}
.premiumModuleGrid .lockBadge{
  right:20px!important;
  width:56px!important;
  height:56px!important;
}
@media(max-height:760px){
  .moduleDashboardHero{
    min-height:500px!important;
    height:57dvh!important;
    max-height:560px!important;
  }
  .moduleDashboardHeroContent{bottom:22px!important;}
  .moduleDashboardHeroContent h1{font-size:clamp(38px,9.4vw,52px)!important;}
  .moduleDashboardHeroContent p{font-size:15px!important;padding-top:13px!important;}
  .moduleDashboardHeroContent .courseIntroStartBtn{height:58px!important;margin-top:20px!important;}
  .premiumModuleGrid{padding-top:18px!important;gap:14px!important;}
  .premiumModuleGrid .premiumDayCard,.moduleDashboardScreen .moduleImageCard{height:120px!important;min-height:120px!important;}
}
@media(display-mode:standalone){
  .moduleDashboardHero{
    min-height:545px!important;
    height:58dvh!important;
    max-height:610px!important;
  }
}

/* STEP 10 — targeted visual tuning from 12:40 screenshots only
   - 7-day module dashboard hero copy moves up
   - course-selection cards slightly taller, labels slightly larger, whole selection lower
   - no logic / Stripe / Supabase changes */

/* Course selection: preserve current composition, but make cards more substantial and lower */
.mainHomeBg .mainHomeHero{
  height:52dvh!important;
  min-height:420px!important;
  max-height:510px!important;
}
.mainHomeBg .mainHomeHeroContent{
  transform:translateY(30px)!important;
  padding-bottom:8px!important;
}
.mainHomeBg .mainChoiceGrid{
  margin-top:30px!important;
  gap:16px!important;
  padding-left:16px!important;
  padding-right:16px!important;
  padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px)!important;
}
.mainHomeBg .mainChoiceGrid .choiceCard{
  height:156px!important;
  min-height:156px!important;
  border-radius:24px!important;
}
.mainHomeBg .mainChoiceGrid .choiceText h3,
.mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText h3{
  font-size:clamp(18px,4.55vw,22px)!important;
  line-height:1.05!important;
  letter-spacing:.045em!important;
  white-space:nowrap!important;
}
.mainHomeBg .mainChoiceGrid .choiceSubLabel{
  font-size:12px!important;
  letter-spacing:.34em!important;
  margin-bottom:8px!important;
}

@media(max-height:760px){
  .mainHomeBg .mainHomeHero{
    height:45dvh!important;
    min-height:360px!important;
    max-height:405px!important;
  }
  .mainHomeBg .mainHomeHeroContent{
    transform:translateY(24px)!important;
  }
  .mainHomeBg .mainChoiceGrid{
    margin-top:22px!important;
    gap:14px!important;
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 70px)!important;
  }
  .mainHomeBg .mainChoiceGrid .choiceCard{
    height:142px!important;
    min-height:142px!important;
  }
  .mainHomeBg .mainChoiceGrid .choiceText h3,
  .mainHomeBg .mainChoiceGrid .lockedCourseCard .choiceText h3{
    font-size:clamp(17px,4.2vw,20px)!important;
  }
}

@media(display-mode:standalone){
  .mainHomeBg .mainHomeHero{
    height:53dvh!important;
    min-height:435px!important;
    max-height:530px!important;
  }
  .mainHomeBg .mainHomeHeroContent{
    transform:translateY(34px)!important;
  }
  .mainHomeBg .mainChoiceGrid{
    margin-top:32px!important;
    gap:16px!important;
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 16px)!important;
  }
  .mainHomeBg .mainChoiceGrid .choiceCard{
    height:160px!important;
    min-height:160px!important;
  }
}

/* 7-day course dashboard: keep hero visible, but move text/start block higher */
.moduleDashboardHeroContent{
  bottom:58px!important;
}
.moduleDashboardHeroContent .cleanTag{
  margin-bottom:10px!important;
}
.moduleDashboardHeroContent h1{
  font-size:clamp(40px,9.8vw,54px)!important;
  line-height:.9!important;
}
.moduleDashboardHeroContent p{
  padding-top:12px!important;
  font-size:15.5px!important;
  line-height:1.46!important;
}
.moduleDashboardHeroContent .courseIntroStartBtn{
  margin-top:20px!important;
}

@media(max-height:760px){
  .moduleDashboardHero{
    min-height:485px!important;
    height:55dvh!important;
    max-height:540px!important;
  }
  .moduleDashboardHeroContent{
    bottom:48px!important;
  }
  .moduleDashboardHeroContent h1{
    font-size:clamp(36px,8.9vw,48px)!important;
  }
  .moduleDashboardHeroContent p{
    font-size:14.5px!important;
    padding-top:10px!important;
  }
  .moduleDashboardHeroContent .courseIntroStartBtn{
    margin-top:17px!important;
    height:58px!important;
  }
}

@media(display-mode:standalone){
  .moduleDashboardHeroContent{
    bottom:62px!important;
  }
}

/* STEP 13 · Premium readability upgrade for 7-day course content only */
.dayTaskScreen.sevenCourseTextScreen{
  padding-top:calc(var(--sat) + 28px)!important;
}
.readyInfoCard p{
  font-size:18px!important;
  line-height:1.72!important;
}
.premiumCourseArticle{
  padding:22px 20px!important;
  background:linear-gradient(180deg, rgba(28,28,27,.94), rgba(18,18,17,.96))!important;
  border-color:rgba(196,161,78,.28)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.premiumCourseArticle p{
  font-size:17.4px!important;
  line-height:1.86!important;
  color:rgba(238,235,228,.72)!important;
  letter-spacing:.005em!important;
  margin:0 0 18px!important;
}
.premiumCourseArticle p:last-child{ margin-bottom:0!important; }
.premiumCourseArticle .courseLead{
  color:rgba(245,242,234,.92)!important;
  font-size:18.2px!important;
  line-height:1.72!important;
  margin-bottom:22px!important;
}
.courseLeadMark{
  color:var(--gold)!important;
  font-size:.72em!important;
  margin-right:8px!important;
  vertical-align:1px!important;
}
.premiumCourseArticle .courseHighlight{
  position:relative!important;
  color:rgba(255,255,255,.94)!important;
  font-size:18.6px!important;
  line-height:1.68!important;
  font-weight:600!important;
  padding:14px 0 14px 18px!important;
  margin:22px 0!important;
  border-left:2px solid rgba(196,161,78,.74)!important;
  text-shadow:0 2px 14px rgba(0,0,0,.42)!important;
}
.premiumCourseArticle .courseReflection,
.premiumCourseArticle .courseQuestion{
  color:rgba(219,188,105,.94)!important;
  font-size:18.1px!important;
  line-height:1.68!important;
  letter-spacing:.01em!important;
  margin:20px 0!important;
}
.premiumCourseArticle .courseAction{
  color:rgba(245,242,234,.86)!important;
  font-size:18px!important;
  line-height:1.7!important;
  margin:18px 0!important;
}
.courseMiniMark{
  color:var(--gold)!important;
  font-size:.72em!important;
  margin-right:8px!important;
  vertical-align:2px!important;
}
.premiumTaskArticle{
  margin-top:18px!important;
}
@media (max-width:390px){
  .premiumCourseArticle{ padding:20px 18px!important; }
  .premiumCourseArticle p{ font-size:16.8px!important; line-height:1.82!important; }
  .premiumCourseArticle .courseHighlight{ font-size:17.8px!important; }
  .premiumCourseArticle .courseQuestion,
  .premiumCourseArticle .courseReflection,
  .premiumCourseArticle .courseAction{ font-size:17.2px!important; }
  .readyInfoCard p{ font-size:15.6px!important; }
}

/* STEP 14 · Premium intro readability only */
.premiumIntroArticle{
  margin-top:16px!important;
}
.premiumIntroArticle p:first-child{
  color:rgba(255,255,255,.94)!important;
  font-size:18.4px!important;
  line-height:1.7!important;
  font-weight:600!important;
  padding-left:18px!important;
  border-left:2px solid rgba(196,161,78,.74)!important;
}
@media (max-width:390px){
  .premiumIntroArticle p:first-child{font-size:17.6px!important;}
}

/* ── Praxis Dashboard V2: isolated premium rebuild ── */
.aiPraxisScreen.praxisDashboardV2{
  min-height:100dvh!important;
  height:auto!important;
  overflow-y:auto!important;
  background:
    radial-gradient(circle at 50% 0%, rgba(218,184,91,.18), transparent 32%),
    linear-gradient(180deg, rgba(0,0,0,.38), rgba(0,0,0,.95) 54%, #030303 100%),
    url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
  padding:calc(var(--sab) + 76px) 14px calc(var(--sab) + 26px)!important;
}
.praxisDashboardV2 .praxisPremiumWrap{display:flex;flex-direction:column;gap:16px;width:100%;max-width:430px;margin:0 auto;}
.praxisDashboardV2 .praxisLevelCard,
.praxisDashboardV2 .praxisOverviewCard,
.praxisDashboardV2 .praxisProgressCard{
  border:1px solid rgba(255,220,135,.18);
  background:linear-gradient(135deg, rgba(19,19,19,.82), rgba(5,5,5,.78));
  box-shadow:0 18px 38px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.05);
  border-radius:24px;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.praxisDashboardV2 .praxisLevelCard{display:grid;grid-template-columns:1fr 130px 1fr;align-items:center;gap:8px;min-height:184px;padding:18px 14px;}
.praxisDashboardV2 .praxisScoreBlock span,.praxisDashboardV2 h2,.praxisDashboardV2 .praxisSideStats span{
  font-family:var(--font-c);letter-spacing:.12em;font-weight:800;color:rgba(232,201,106,.9);
}
.praxisDashboardV2 .praxisScoreBlock strong{display:block;font-size:48px;line-height:.95;color:#f7f4ee;letter-spacing:-.04em;}
.praxisDashboardV2 .praxisScoreBlock small{font-size:22px;font-weight:600;margin-left:3px;}
.praxisDashboardV2 .praxisScoreBlock em{display:block;margin-top:8px;font-style:normal;font-family:var(--font-c);font-size:11px;letter-spacing:.12em;color:#6dff72;}
.praxisDashboardV2 .praxisScoreBlock p{margin-top:12px;font-size:12px;line-height:1.35;color:rgba(245,241,232,.62);padding:0;}
.praxisDashboardV2 .praxisLevelRing{width:130px;height:130px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(from -90deg,#e4c463 var(--score),rgba(255,255,255,.11) 0);filter:drop-shadow(0 0 18px rgba(226,193,95,.28));position:relative;}
.praxisDashboardV2 .praxisLevelRing:before{content:"";position:absolute;inset:13px;border-radius:50%;background:radial-gradient(circle,rgba(32,32,32,.92),rgba(7,7,7,.98));box-shadow:inset 0 0 25px rgba(0,0,0,.7);}
.praxisDashboardV2 .praxisLevelRing div{position:relative;text-align:center;font-family:var(--font-c);font-weight:800;letter-spacing:.12em;}
.praxisDashboardV2 .praxisLevelRing span{display:block;font-size:13px;color:#e0bf61;}
.praxisDashboardV2 .praxisLevelRing strong{display:block;font-size:54px;line-height:.95;color:#e4c463;}
.praxisDashboardV2 .praxisLevelRing em{font-style:normal;font-size:10px;color:#fff;}
.praxisDashboardV2 .praxisSideStats{display:flex;flex-direction:column;gap:10px;}
.praxisDashboardV2 .praxisSideStats div{display:grid;grid-template-columns:24px 1fr;column-gap:7px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:9px;}
.praxisDashboardV2 .praxisSideStats b{grid-row:1/3;color:#e4c463;font-size:20px;line-height:1;}
.praxisDashboardV2 .praxisSideStats span{font-size:9px;color:rgba(245,241,232,.62);}
.praxisDashboardV2 .praxisSideStats strong{font-family:var(--font-c);font-size:13px;color:#75ff75;letter-spacing:.06em;}
.praxisDashboardV2 .praxisOverviewCard,.praxisDashboardV2 .praxisProgressCard{padding:16px 12px;}
.praxisDashboardV2 h2{margin:0 0 12px;font-size:16px;color:#f4efe4;}
.praxisDashboardV2 .praxisOverviewGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.praxisDashboardV2 .praxisMiniGauge{border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(0,0,0,.25);padding:8px 2px 7px;text-align:center;min-width:0;}
.praxisDashboardV2 .praxisMiniGauge .metricCard{min-height:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.praxisDashboardV2 .praxisMiniGauge .metricCard h3{font-size:9px!important;margin:0 0 2px!important;color:#f4efe4!important;letter-spacing:.1em!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:66px!important;height:45px!important;margin:0 auto!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:66px!important;height:48px!important;}
.praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:22px!important;line-height:1!important;margin-top:-4px!important;}
.praxisDashboardV2 .praxisMiniGauge>span{display:block;margin-top:2px;font-family:var(--font-c);font-size:9px;letter-spacing:.08em;color:#73ff70;}
.praxisDashboardV2 .praxisProgressCard{display:flex;flex-direction:column;gap:8px;}
.praxisDashboardV2 .praxisProgressRow{appearance:none;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.025));min-height:68px;padding:8px 10px;display:grid;grid-template-columns:46px 1fr 58px;align-items:center;gap:10px;color:#fff;text-align:left;}
.praxisDashboardV2 .praxisRowIcon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#e4c463;font-size:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.praxisDashboardV2 .praxisRowText strong{display:block;font-family:var(--font-c);font-size:17px;line-height:1;letter-spacing:.07em;color:#f5f1ea;}
.praxisDashboardV2 .praxisRowText em{display:block;margin-top:5px;font-style:normal;font-size:12px;color:rgba(245,241,232,.58);}
.praxisDashboardV2 .praxisRowBar{display:block;height:5px;border-radius:999px;margin-top:8px;background:rgba(255,255,255,.08);overflow:hidden;}
.praxisDashboardV2 .praxisRowBar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#b99542,#f1d36d);box-shadow:0 0 10px rgba(226,193,95,.35);}
.praxisDashboardV2 .praxisRowCount{text-align:right;font-family:var(--font-c);font-weight:800;color:#e4c463;}
.praxisDashboardV2 .praxisRowCount b{display:block;font-size:18px;}
.praxisDashboardV2 .praxisRowCount i{font-style:normal;color:rgba(255,255,255,.55);font-size:26px;line-height:.7;}
.praxisDashboardV2 .praxisAreaBtn{width:100%!important;margin:0!important;height:58px!important;border-radius:18px!important;font-family:var(--font-c);letter-spacing:.12em;font-size:16px;}
.praxisDashboardV2 .praxisFolderNew{width:100%!important;margin:0!important;height:54px!important;border-radius:18px!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{grid-template-columns:1fr 116px 1fr;padding:16px 11px;}
  .praxisDashboardV2 .praxisLevelRing{width:116px;height:116px;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:42px;}
  .praxisDashboardV2 .praxisOverviewGrid{gap:6px;}
  .praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:58px!important;}
  .praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:58px!important;}
}

/* STEP 15 · Praxis Dashboard V3 — scoped rebuild only, no other screens affected */
.aiPraxisScreen.praxisDashboardV2{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 78px) 12px calc(var(--sab) + 10px)!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.14) 31%, rgba(0,0,0,.76) 62%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
}
.praxisDashboardV2 .praxisPremiumWrap{
  height:calc(100dvh - var(--sab) - 88px)!important;
  max-width:430px!important;
  gap:9px!important;
  justify-content:flex-start!important;
}
/* top level area: no separate card/background; sits directly on hero */
.praxisDashboardV2 .praxisLevelCard{
  height:246px!important;
  min-height:246px!important;
  padding:6px 8px 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  display:grid!important;
  grid-template-columns:1fr 156px 1fr!important;
  gap:8px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisScoreBlock span,
.praxisDashboardV2 .praxisSideStats span{
  color:rgba(232,201,106,.96)!important;
  text-shadow:0 2px 12px rgba(0,0,0,.9)!important;
}
.praxisDashboardV2 .praxisScoreBlock strong{
  font-size:52px!important;
  text-shadow:0 4px 18px rgba(0,0,0,.98)!important;
}
.praxisDashboardV2 .praxisScoreBlock em,
.praxisDashboardV2 .praxisSideStats strong{
  color:#79ff75!important;
  text-shadow:0 0 11px rgba(80,255,95,.28),0 2px 10px rgba(0,0,0,.95)!important;
}
.praxisDashboardV2 .praxisScoreBlock p{font-size:13px!important;color:rgba(247,244,236,.74)!important;text-shadow:0 2px 12px rgba(0,0,0,.95)!important;}
.praxisDashboardV2 .praxisLevelRing{
  width:156px!important;
  height:156px!important;
  background:conic-gradient(from -90deg,#ffe482 0deg,#e0b948 var(--score),rgba(255,255,255,.10) var(--score),rgba(255,255,255,.10) 360deg)!important;
  filter:drop-shadow(0 0 18px rgba(255,223,116,.55)) drop-shadow(0 0 34px rgba(195,143,42,.26))!important;
}
.praxisDashboardV2 .praxisLevelRing:before{
  inset:9px!important;
  background:radial-gradient(circle at 50% 45%,rgba(15,15,15,.96),rgba(2,2,2,.98) 68%)!important;
  box-shadow:inset 0 0 28px rgba(0,0,0,.88),0 0 22px rgba(247,210,95,.22)!important;
}
.praxisDashboardV2 .praxisLevelRing:after{
  content:"";position:absolute;inset:-2px;border-radius:50%;
  background:conic-gradient(from -90deg,rgba(255,242,166,.95) 0 13deg,transparent 24deg 306deg,rgba(255,242,166,.92) 318deg 339deg,transparent 350deg);
  filter:blur(1.1px);pointer-events:none;
}
.praxisDashboardV2 .praxisLevelRing div{z-index:1;text-shadow:0 2px 12px rgba(0,0,0,.95)!important;}
.praxisDashboardV2 .praxisLevelRing span{font-size:14px!important;color:#e9c867!important;}
.praxisDashboardV2 .praxisLevelRing strong{font-size:62px!important;color:#e9c867!important;}
.praxisDashboardV2 .praxisLevelRing em{font-size:11px!important;color:rgba(255,255,255,.94)!important;}
.praxisDashboardV2 .praxisSideStats{gap:8px!important;}
.praxisDashboardV2 .praxisSideStats div{grid-template-columns:24px 1fr!important;padding-bottom:8px!important;border-bottom:1px solid rgba(255,255,255,.24)!important;}
.praxisDashboardV2 .praxisSideStats b{font-size:22px!important;color:#f0c850!important;text-shadow:0 0 14px rgba(225,190,92,.36)!important;}
.praxisDashboardV2 .praxisSideStats strong{font-size:14px!important;}
/* thinner / more professional lower sections */
.praxisDashboardV2 .praxisOverviewCard,
.praxisDashboardV2 .praxisProgressCard{
  border:1px solid rgba(255,220,135,.13)!important;
  background:linear-gradient(135deg,rgba(8,8,8,.58),rgba(0,0,0,.48))!important;
  box-shadow:0 12px 28px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.035)!important;
  border-radius:22px!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
.praxisDashboardV2 .praxisOverviewCard{height:124px!important;min-height:124px!important;padding:12px 10px 10px!important;}
.praxisDashboardV2 h2{font-size:15px!important;margin:0 0 8px!important;color:#f3eee5!important;}
.praxisDashboardV2 .praxisOverviewGrid{gap:7px!important;}
.praxisDashboardV2 .praxisMiniGauge{
  min-height:76px!important;
  padding:5px 1px 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.praxisDashboardV2 .praxisMiniGauge + .praxisMiniGauge{border-left:1px solid rgba(255,255,255,.13)!important;}
.praxisDashboardV2 .praxisMiniGauge .metricCard h3{font-size:8px!important;margin:0!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:62px!important;height:39px!important;filter:drop-shadow(0 0 10px rgba(218,184,91,.24))!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:62px!important;height:43px!important;}
.praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:20px!important;margin-top:-5px!important;}
.praxisDashboardV2 .praxisMiniGauge>span{font-size:8px!important;margin-top:0!important;}
.praxisDashboardV2 .praxisProgressCard{height:284px!important;min-height:284px!important;padding:13px 10px 10px!important;gap:6px!important;}
.praxisDashboardV2 .praxisProgressRow{
  min-height:43px!important;
  height:43px!important;
  border-radius:12px!important;
  grid-template-columns:38px 1fr 48px!important;
  gap:8px!important;
  padding:5px 8px!important;
  background:linear-gradient(90deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;
  border-color:rgba(255,255,255,.075)!important;
}
.praxisDashboardV2 .praxisRowIcon{width:32px!important;height:32px!important;border-radius:10px!important;font-size:18px!important;background:rgba(255,255,255,.07)!important;}
.praxisDashboardV2 .praxisRowText strong{font-size:13.8px!important;letter-spacing:.075em!important;}
.praxisDashboardV2 .praxisRowText em{font-size:10px!important;margin-top:2px!important;}
.praxisDashboardV2 .praxisRowBar{height:4px!important;margin-top:5px!important;}
.praxisDashboardV2 .praxisRowCount b{font-size:15px!important;}
.praxisDashboardV2 .praxisRowCount i{font-size:20px!important;}
.praxisDashboardV2 .praxisAreaBtn{height:54px!important;min-height:54px!important;border-radius:17px!important;margin:1px 0 0!important;box-shadow:0 0 28px rgba(226,193,95,.22),inset 0 1px 0 rgba(255,255,255,.22)!important;}
.praxisDashboardV2 .praxisFolderNew{height:48px!important;min-height:48px!important;border-radius:16px!important;margin:0!important;background:rgba(0,0,0,.33)!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{grid-template-columns:1fr 142px 1fr!important;height:238px!important;min-height:238px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:142px!important;height:142px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:56px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:46px!important;}
  .praxisDashboardV2 .praxisScoreBlock p{font-size:12px!important;}
}
@media(max-height:760px){
  .aiPraxisScreen.praxisDashboardV2{padding-top:calc(var(--sab) + 72px)!important;}
  .praxisDashboardV2 .praxisPremiumWrap{height:calc(100dvh - var(--sab) - 82px)!important;gap:7px!important;}
  .praxisDashboardV2 .praxisLevelCard{height:220px!important;min-height:220px!important;grid-template-columns:1fr 136px 1fr!important;}
  .praxisDashboardV2 .praxisLevelRing{width:136px!important;height:136px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:53px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:43px!important;}
  .praxisDashboardV2 .praxisScoreBlock p{font-size:11px!important;margin-top:8px!important;}
  .praxisDashboardV2 .praxisOverviewCard{height:112px!important;min-height:112px!important;padding-top:10px!important;}
  .praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:55px!important;height:35px!important;}
  .praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:55px!important;height:38px!important;}
  .praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:18px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:262px!important;min-height:262px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:39px!important;min-height:39px!important;}
  .praxisDashboardV2 .praxisAreaBtn{height:48px!important;min-height:48px!important;}
  .praxisDashboardV2 .praxisFolderNew{height:43px!important;min-height:43px!important;}
}

/* STEP 16 · Praxis Dashboard exact cleanup — isolated to praxis dashboard only */
.aiPraxisScreen.praxisDashboardV2{
  padding:calc(var(--sab) + 66px) 12px calc(var(--sab) + 6px)!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.10) 34%, rgba(0,0,0,.68) 61%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}


.praxisDashboardV2 .praxisPremiumWrap{
  height:calc(100dvh - var(--sab) - 72px)!important;
  gap:7px!important;
}
.praxisDashboardV2 .praxisLevelCard{
  height:226px!important;
  min-height:226px!important;
  grid-template-columns:1fr 172px 1fr!important;
  padding:0 8px 0!important;
  gap:6px!important;
}
.praxisDashboardV2 .praxisLevelRing{
  width:172px!important;
  height:172px!important;
  background:
    repeating-conic-gradient(from -90deg, transparent 0 34deg, rgba(0,0,0,.96) 34deg 36deg),
    conic-gradient(from -90deg, #fff1a5 0deg, #e6bd4d var(--score), rgba(255,255,255,.105) var(--score), rgba(255,255,255,.105) 360deg)!important;
  filter:drop-shadow(0 0 18px rgba(255,223,116,.54)) drop-shadow(0 0 28px rgba(195,143,42,.20))!important;
  box-shadow:0 0 34px rgba(226,193,95,.18)!important;
}
.praxisDashboardV2 .praxisLevelRing:before{
  inset:13px!important;
  background:radial-gradient(circle at 50% 50%,rgba(8,8,8,.98),rgba(0,0,0,.99) 72%)!important;
  box-shadow:inset 0 0 30px rgba(0,0,0,.95)!important;
}
.praxisDashboardV2 .praxisLevelRing:after{display:none!important;content:none!important;}
.praxisDashboardV2 .praxisLevelRing span{font-size:13px!important;}
.praxisDashboardV2 .praxisLevelRing strong{font-size:64px!important;}
.praxisDashboardV2 .praxisLevelRing em{font-size:10px!important;}
.praxisDashboardV2 .praxisScoreBlock strong{font-size:50px!important;}
.praxisDashboardV2 .praxisScoreBlock p{font-size:12px!important;line-height:1.32!important;margin-top:9px!important;}
.praxisDashboardV2 .praxisSideStats{gap:6px!important;}
.praxisDashboardV2 .praxisSideStats div{padding-bottom:6px!important;}
.praxisDashboardV2 .praxisSideStats b{font-size:21px!important;}
.praxisDashboardV2 .praxisSideStats strong{font-size:13px!important;}
.praxisDashboardV2 .praxisOverviewCard{
  height:108px!important;
  min-height:108px!important;
  padding:10px 10px 8px!important;
  border-radius:20px!important;
}
.praxisDashboardV2 h2{font-size:14px!important;margin:0 0 6px!important;letter-spacing:.12em!important;}
.praxisDashboardV2 .praxisOverviewGrid{gap:4px!important;}
.praxisDashboardV2 .praxisMiniGauge{min-height:64px!important;padding:3px 0 0!important;}
.praxisDashboardV2 .praxisMiniGauge .metricCard h3{font-size:7.6px!important;margin-bottom:0!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:58px!important;height:35px!important;margin:0 auto!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:58px!important;height:41px!important;}
.praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:18px!important;margin-top:-8px!important;}
.praxisDashboardV2 .praxisMiniGauge>span{display:none!important;}
.praxisDashboardV2 .praxisTicks{display:none!important;}
.praxisDashboardV2 .praxisProgressCard{
  height:248px!important;
  min-height:248px!important;
  padding:11px 10px 8px!important;
  gap:5px!important;
  border-radius:20px!important;
}
.praxisDashboardV2 .praxisProgressRow{
  height:35px!important;
  min-height:35px!important;
  border-radius:11px!important;
  grid-template-columns:34px 1fr 45px!important;
  gap:7px!important;
  padding:4px 7px!important;
}
.praxisDashboardV2 .praxisRowIcon{width:28px!important;height:28px!important;border-radius:9px!important;font-size:18px!important;}
.praxisDashboardV2 .praxisRowText strong{font-size:12.7px!important;letter-spacing:.07em!important;}
.praxisDashboardV2 .praxisRowText em{font-size:9px!important;margin-top:1px!important;}
.praxisDashboardV2 .praxisRowBar{height:3.5px!important;margin-top:4px!important;}
.praxisDashboardV2 .praxisRowCount b{font-size:14px!important;}
.praxisDashboardV2 .praxisRowCount i{font-size:18px!important;}
.praxisDashboardV2 .praxisAreaBtn{height:48px!important;min-height:48px!important;border-radius:16px!important;margin:0!important;}
.praxisDashboardV2 .praxisFolderNew{height:44px!important;min-height:44px!important;border-radius:15px!important;display:flex!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{grid-template-columns:1fr 156px 1fr!important;height:214px!important;min-height:214px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:156px!important;height:156px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:58px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:44px!important;}
}
@media(max-height:760px){
  .aiPraxisScreen.praxisDashboardV2{padding-top:calc(var(--sab) + 62px)!important;}
  .praxisDashboardV2 .praxisPremiumWrap{height:calc(100dvh - var(--sab) - 68px)!important;gap:6px!important;}
  .praxisDashboardV2 .praxisLevelCard{height:204px!important;min-height:204px!important;grid-template-columns:1fr 150px 1fr!important;}
  .praxisDashboardV2 .praxisLevelRing{width:150px!important;height:150px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:55px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:42px!important;}
  .praxisDashboardV2 .praxisScoreBlock p{font-size:10.5px!important;margin-top:7px!important;}
  .praxisDashboardV2 .praxisOverviewCard{height:100px!important;min-height:100px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:235px!important;min-height:235px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:32px!important;min-height:32px!important;}
  .praxisDashboardV2 .praxisAreaBtn{height:45px!important;min-height:45px!important;}
  .praxisDashboardV2 .praxisFolderNew{height:41px!important;min-height:41px!important;}
}

/* STEP 17 · Praxis dashboard final structural correction — isolated only to .praxisDashboardV2 */
.aiPraxisScreen.praxisDashboardV2{
  overflow-y:auto!important;
  padding:calc(var(--sab) + 60px) 12px calc(var(--sab) + 6px)!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.10) 34%, rgba(0,0,0,.62) 63%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.praxisDashboardV2 .praxisPremiumWrap{
  height:auto!important;
  min-height:0!important;
  gap:6px!important;
}
.praxisDashboardV2 .praxisLevelCard{
  height:212px!important;
  min-height:212px!important;
  grid-template-columns:112px 1fr 174px!important;
  align-items:center!important;
  padding:0 4px!important;
  gap:2px!important;
}
.praxisDashboardV2 .praxisSideStats{
  order:1!important;
  gap:6px!important;
  align-self:center!important;
}
.praxisDashboardV2 .praxisSideStats div{
  grid-template-columns:22px 1fr!important;
  column-gap:5px!important;
  padding-bottom:6px!important;
}
.praxisDashboardV2 .praxisSideStats b{font-size:20px!important;}
.praxisDashboardV2 .praxisSideStats span{font-size:8px!important;letter-spacing:.11em!important;}
.praxisDashboardV2 .praxisSideStats strong{font-size:12px!important;}
.praxisDashboardV2 .praxisScoreBlock{
  order:2!important;
  text-align:center!important;
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
}
.praxisDashboardV2 .praxisScoreBlock strong{
  font-size:48px!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
}
.praxisDashboardV2 .praxisScoreBlock small{font-size:21px!important;}
.praxisDashboardV2 .praxisScoreBlock span{
  display:block!important;
  margin-top:6px!important;
  font-size:10px!important;
  line-height:1.15!important;
  color:rgba(232,201,106,.96)!important;
}
.praxisDashboardV2 .praxisScoreBlock em{display:none!important;}
.praxisDashboardV2 .praxisScoreBlock p{
  margin:20px auto 0!important;
  max-width:120px!important;
  font-size:11px!important;
  line-height:1.24!important;
  color:rgba(247,244,236,.78)!important;
}
.praxisDashboardV2 .praxisLevelRing{
  order:3!important;
  width:174px!important;
  height:174px!important;
  background:
    repeating-conic-gradient(from 0deg, transparent 0deg 34deg, rgba(0,0,0,.96) 34deg 36deg),
    conic-gradient(from 0deg, #fff1a5 0deg, #e6bd4d var(--score), rgba(255,255,255,.105) var(--score), rgba(255,255,255,.105) 360deg)!important;
  filter:drop-shadow(0 0 20px rgba(255,223,116,.45)) drop-shadow(0 0 34px rgba(195,143,42,.18))!important;
  box-shadow:0 0 30px rgba(226,193,95,.16)!important;
}
.praxisDashboardV2 .praxisLevelRing:before{
  inset:15px!important;
  background:radial-gradient(circle at 50% 50%,rgba(8,8,8,.99),rgba(0,0,0,.995) 72%)!important;
  box-shadow:inset 0 0 30px rgba(0,0,0,.96)!important;
}
.praxisDashboardV2 .praxisLevelRing:after{display:none!important;content:none!important;}
.praxisDashboardV2 .praxisLevelRing span{font-size:13px!important;}
.praxisDashboardV2 .praxisLevelRing strong{font-size:66px!important;}
.praxisDashboardV2 .praxisLevelRing em{font-size:10px!important;}
.praxisDashboardV2 .praxisOverviewCard{
  height:84px!important;
  min-height:84px!important;
  padding:6px 10px!important;
  border-radius:20px!important;
}
.praxisDashboardV2 .praxisOverviewCard h2{display:none!important;}
.praxisDashboardV2 .praxisOverviewGrid{
  height:100%!important;
  align-items:center!important;
  gap:3px!important;
}
.praxisDashboardV2 .praxisMiniGauge{
  min-height:70px!important;
  height:70px!important;
  padding:2px 0 0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.praxisDashboardV2 .praxisMiniGauge .metricCard h3{font-size:7.5px!important;margin:0 0 1px!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:72px!important;height:41px!important;margin:0 auto!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:72px!important;height:47px!important;}
.praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:19px!important;margin-top:-6px!important;}
.praxisDashboardV2 .praxisMiniGauge>span{display:none!important;}
.praxisDashboardV2 .praxisProgressCard{
  height:220px!important;
  min-height:220px!important;
  padding:8px 10px!important;
  gap:5px!important;
  border-radius:20px!important;
}
.praxisDashboardV2 .praxisProgressCard h2{display:none!important;}
.praxisDashboardV2 .praxisProgressRow{
  height:38px!important;
  min-height:38px!important;
  border-radius:11px!important;
  grid-template-columns:32px 1fr 42px!important;
  gap:7px!important;
  padding:4px 7px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisRowIcon{width:28px!important;height:28px!important;border-radius:9px!important;font-size:15px!important;}
.praxisDashboardV2 .praxisRowText{min-width:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
.praxisDashboardV2 .praxisRowText strong{font-size:12.2px!important;line-height:1.02!important;letter-spacing:.07em!important;}
.praxisDashboardV2 .praxisRowText em{font-size:8.8px!important;line-height:1.05!important;margin-top:1px!important;}
.praxisDashboardV2 .praxisRowBar{height:3px!important;margin-top:3px!important;width:100%!important;}
.praxisDashboardV2 .praxisRowCount{align-self:center!important;}
.praxisDashboardV2 .praxisRowCount b{font-size:14px!important;line-height:1!important;}
.praxisDashboardV2 .praxisRowCount i{display:none!important;}
.praxisDashboardV2 .praxisAreaBtn{height:50px!important;min-height:50px!important;border-radius:16px!important;margin-top:2px!important;}
.praxisDashboardV2 .praxisFolderNew{height:48px!important;min-height:48px!important;border-radius:16px!important;margin-top:0!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{grid-template-columns:102px 1fr 158px!important;height:204px!important;min-height:204px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:158px!important;height:158px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:58px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:42px!important;}
  .praxisDashboardV2 .praxisSideStats b{font-size:18px!important;}
  .praxisDashboardV2 .praxisSideStats strong{font-size:11px!important;}
}
@media(max-height:760px){
  .aiPraxisScreen.praxisDashboardV2{padding-top:calc(var(--sab) + 55px)!important;}
  .praxisDashboardV2 .praxisPremiumWrap{gap:5px!important;}
  .praxisDashboardV2 .praxisLevelCard{height:192px!important;min-height:192px!important;grid-template-columns:104px 1fr 150px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:150px!important;height:150px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:54px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:40px!important;}
  .praxisDashboardV2 .praxisScoreBlock p{font-size:10px!important;margin-top:12px!important;}
  .praxisDashboardV2 .praxisOverviewCard{height:76px!important;min-height:76px!important;}
  .praxisDashboardV2 .praxisMiniGauge{height:62px!important;min-height:62px!important;}
  .praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:64px!important;height:36px!important;}
  .praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:64px!important;height:42px!important;}
  .praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:17px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:208px!important;min-height:208px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:35px!important;min-height:35px!important;}
  .praxisDashboardV2 .praxisAreaBtn{height:46px!important;min-height:46px!important;}
  .praxisDashboardV2 .praxisFolderNew{height:44px!important;min-height:44px!important;}
}

/* STEP 18 · Praxis dashboard requested V6 refinement — scoped only to .praxisDashboardV2 */
.aiPraxisScreen.praxisDashboardV2{
  background:
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.10) 34%, rgba(0,0,0,.64) 63%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.praxisDashboardV2 .praxisPremiumWrap{
  gap:8px!important;
}
/* Restore the stronger original hero structure: score left, level center, momentum right */
.praxisDashboardV2 .praxisLevelCard{
  height:224px!important;
  min-height:224px!important;
  grid-template-columns:1fr 170px 1fr!important;
  padding:0 8px!important;
  gap:8px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisScoreBlock{
  order:1!important;
  text-align:left!important;
  align-self:center!important;
  display:block!important;
  min-width:0!important;
}
.praxisDashboardV2 .praxisScoreBlock strong{
  font-size:50px!important;
  line-height:.94!important;
}
.praxisDashboardV2 .praxisScoreBlock small{font-size:22px!important;}
.praxisDashboardV2 .praxisScoreBlock span{
  display:block!important;
  margin-top:6px!important;
  font-size:11px!important;
  line-height:1.15!important;
  max-width:92px!important;
}
.praxisDashboardV2 .praxisScoreBlock p{
  margin:16px 0 0!important;
  max-width:112px!important;
  font-size:12px!important;
  line-height:1.28!important;
  text-align:left!important;
}
.praxisDashboardV2 .praxisLevelRing{
  order:2!important;
  width:170px!important;
  height:170px!important;
  background:
    repeating-conic-gradient(from 0deg, transparent 0deg 34deg, rgba(0,0,0,.96) 34deg 36deg),
    conic-gradient(from 0deg, #fff1a5 0deg, #e6bd4d var(--score), rgba(255,255,255,.105) var(--score), rgba(255,255,255,.105) 360deg)!important;
  filter:drop-shadow(0 0 20px rgba(255,223,116,.48)) drop-shadow(0 0 34px rgba(195,143,42,.18))!important;
}
.praxisDashboardV2 .praxisLevelRing strong{font-size:64px!important;}
.praxisDashboardV2 .praxisSideStats{
  order:3!important;
  align-self:center!important;
  gap:6px!important;
}
.praxisDashboardV2 .praxisSideStats div{
  grid-template-columns:22px 1fr!important;
  column-gap:6px!important;
  padding-bottom:7px!important;
}
.praxisDashboardV2 .praxisSideStats b{font-size:20px!important;}
.praxisDashboardV2 .praxisSideStats span{font-size:8px!important;}
.praxisDashboardV2 .praxisSideStats strong{font-size:12.5px!important;}
/* Give progress cards more internal air and slightly more spacing between rows */
.praxisDashboardV2 .praxisProgressCard{
  height:256px!important;
  min-height:256px!important;
  padding:11px 11px!important;
  gap:7px!important;
}
.praxisDashboardV2 .praxisProgressRow{
  height:42px!important;
  min-height:34px!important;
  border-radius:12px!important;
  grid-template-columns:36px 1fr 45px!important;
  gap:9px!important;
  padding:5px 8px!important;
}
.praxisDashboardV2 .praxisRowIcon{
  width:31px!important;
  height:31px!important;
  border-radius:10px!important;
  font-size:18px!important;
}
.praxisDashboardV2 .praxisRowText strong{
  font-size:13.2px!important;
  line-height:1.05!important;
}
.praxisDashboardV2 .praxisRowText em{
  font-size:9.4px!important;
  line-height:1.1!important;
  margin-top:2px!important;
}
.praxisDashboardV2 .praxisRowBar{
  height:3.5px!important;
  margin-top:5px!important;
}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{
    grid-template-columns:1fr 156px 1fr!important;
    height:214px!important;
    min-height:214px!important;
    padding:0 6px!important;
    gap:6px!important;
  }
  .praxisDashboardV2 .praxisLevelRing{width:156px!important;height:156px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:58px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:44px!important;}
  .praxisDashboardV2 .praxisScoreBlock p{font-size:11px!important;}
  .praxisDashboardV2 .praxisSideStats strong{font-size:11px!important;}
}
@media(max-height:760px){
  .praxisDashboardV2 .praxisLevelCard{
    height:204px!important;
    min-height:204px!important;
    grid-template-columns:1fr 150px 1fr!important;
  }
  .praxisDashboardV2 .praxisLevelRing{width:150px!important;height:150px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:54px!important;}
  .praxisDashboardV2 .praxisScoreBlock strong{font-size:40px!important;}
  .praxisDashboardV2 .praxisScoreBlock p{font-size:10.5px!important;margin-top:10px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:238px!important;min-height:238px!important;gap:6px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:38px!important;min-height:38px!important;}
}

/* STEP 19 · Praxis dashboard V7 user-requested refinement — isolated to .praxisDashboardV2 only */
.aiPraxisScreen.praxisDashboardV2{
  background:
    linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.08) 34%, rgba(0,0,0,.58) 64%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.praxisDashboardV2 .praxisLevelCard{
  grid-template-columns:1fr 178px 118px!important;
  height:226px!important;
  min-height:226px!important;
  padding:0 8px!important;
  gap:8px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisHeroSpacer{
  order:1!important;
  min-width:0!important;
  height:100%!important;
}
.praxisDashboardV2 .praxisLevelRing{
  order:2!important;
  width:178px!important;
  height:178px!important;
  background:
    repeating-conic-gradient(from 0deg, transparent 0deg 34deg, rgba(0,0,0,.98) 34deg 36deg),
    conic-gradient(from 0deg, #fff3ab 0deg, #e7bf54 var(--score), rgba(255,255,255,.11) var(--score), rgba(255,255,255,.11) 360deg)!important;
  filter:drop-shadow(0 0 22px rgba(255,225,121,.46)) drop-shadow(0 0 38px rgba(190,143,43,.18))!important;
}
.praxisDashboardV2 .praxisLevelRing:before{inset:16px!important;}
.praxisDashboardV2 .praxisLevelRing strong{font-size:66px!important;}
.praxisDashboardV2 .praxisScoreBlock{display:none!important;}
.praxisDashboardV2 .praxisSideStats{
  order:3!important;
  align-self:center!important;
  gap:5px!important;
  min-width:0!important;
}
.praxisDashboardV2 .praxisSideStats div{
  grid-template-columns:24px 1fr!important;
  column-gap:6px!important;
  padding-bottom:5px!important;
}
.praxisDashboardV2 .praxisSideStats div.praxisScoreStat{
  display:block!important;
  padding:0 0 8px!important;
  border-bottom:1px solid rgba(255,255,255,.24)!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat b{
  display:block!important;
  font-family:var(--font-c)!important;
  font-size:36px!important;
  line-height:.9!important;
  letter-spacing:-.04em!important;
  color:#fff!important;
  text-shadow:0 4px 18px rgba(0,0,0,.95)!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat small{
  font-size:15px!important;
  color:#fff!important;
  margin-left:1px!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat span{
  display:block!important;
  margin-top:5px!important;
  font-size:7.8px!important;
  line-height:1.1!important;
  letter-spacing:.13em!important;
  color:rgba(232,201,106,.96)!important;
}
.praxisDashboardV2 .praxisSideStats b{
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  width:24px!important;
  height:24px!important;
  color:#e8c45b!important;
}
.praxisDashboardV2 .praxisSideStats b svg{
  width:23px!important;
  height:23px!important;
  stroke:#e8c45b!important;
  fill:none!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  filter:drop-shadow(0 0 9px rgba(232,196,91,.30))!important;
}
.praxisDashboardV2 .praxisSideStats span{font-size:7.8px!important;letter-spacing:.12em!important;}
.praxisDashboardV2 .praxisSideStats strong{font-size:11.7px!important;line-height:1.05!important;}
.praxisDashboardV2 .praxisProgressCard{
  height:278px!important;
  min-height:278px!important;
  padding:13px 11px!important;
  gap:9px!important;
}
.praxisDashboardV2 .praxisProgressRow{
  height:46px!important;
  min-height:46px!important;
  border-radius:13px!important;
  grid-template-columns:42px 1fr 46px!important;
  gap:10px!important;
  padding:6px 9px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisRowIcon{
  width:36px!important;
  height:36px!important;
  border-radius:11px!important;
  font-size:0!important;
  display:grid!important;
  place-items:center!important;
  color:#e8c45b!important;
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035))!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.praxisDashboardV2 .praxisRowIcon svg{
  width:22px!important;
  height:22px!important;
  stroke:#e8c45b!important;
  fill:none!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  filter:drop-shadow(0 0 8px rgba(232,196,91,.25))!important;
}
.praxisDashboardV2 .praxisRowText{
  display:grid!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  gap:7px!important;
  min-width:0!important;
}
.praxisDashboardV2 .praxisRowText strong{
  font-size:13.5px!important;
  line-height:1!important;
  letter-spacing:.075em!important;
  white-space:nowrap!important;
}
.praxisDashboardV2 .praxisRowText em{display:none!important;}
.praxisDashboardV2 .praxisRowBar{
  width:100%!important;
  height:4px!important;
  margin:0!important;
  align-self:center!important;
}
.praxisDashboardV2 .praxisRowCount{
  align-self:center!important;
  justify-self:end!important;
}
.praxisDashboardV2 .praxisRowCount b{font-size:15px!important;line-height:1!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{grid-template-columns:1fr 162px 106px!important;height:216px!important;min-height:216px!important;gap:6px!important;padding:0 6px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:162px!important;height:162px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:60px!important;}
  .praxisDashboardV2 .praxisSideStats .praxisScoreStat b{font-size:32px!important;}
  .praxisDashboardV2 .praxisSideStats strong{font-size:10.8px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:268px!important;min-height:268px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:44px!important;min-height:44px!important;grid-template-columns:40px 1fr 43px!important;}
}
@media(max-height:760px){
  .praxisDashboardV2 .praxisLevelCard{height:208px!important;min-height:208px!important;grid-template-columns:1fr 158px 108px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:158px!important;height:158px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:58px!important;}
  .praxisDashboardV2 .praxisSideStats .praxisScoreStat b{font-size:31px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:260px!important;min-height:260px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:43px!important;min-height:43px!important;}
}

/* STEP 20 · Praxis dashboard V8 precision fixes — only .praxisDashboardV2 */
.aiPraxisScreen.praxisDashboardV2{
  background:
    linear-gradient(180deg, rgba(0,0,0,.00) 0%, rgba(0,0,0,.05) 34%, rgba(0,0,0,.50) 63%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.praxisDashboardV2 .praxisLevelCard{
  position:relative!important;
  display:block!important;
  height:224px!important;
  min-height:224px!important;
  padding:0!important;
  gap:0!important;
}
.praxisDashboardV2 .praxisHeroSpacer{display:none!important;}
.praxisDashboardV2 .praxisLevelRing{
  position:absolute!important;
  left:50%!important;
  top:22px!important;
  transform:translateX(-50%)!important;
  width:166px!important;
  height:166px!important;
  margin:0!important;
  background:
    repeating-conic-gradient(from 0deg, transparent 0deg 34deg, rgba(0,0,0,.98) 34deg 36deg),
    conic-gradient(from 0deg, #fff3ab 0deg, #e7bf54 var(--score), rgba(255,255,255,.11) var(--score), rgba(255,255,255,.11) 360deg)!important;
  filter:drop-shadow(0 0 18px rgba(255,225,121,.42)) drop-shadow(0 0 32px rgba(190,143,43,.16))!important;
  z-index:2!important;
}
.praxisDashboardV2 .praxisLevelRing:before{inset:16px!important;}
.praxisDashboardV2 .praxisLevelRing span{font-size:11px!important;letter-spacing:.18em!important;}
.praxisDashboardV2 .praxisLevelRing strong{font-size:60px!important;line-height:.82!important;}
.praxisDashboardV2 .praxisLevelRing em{font-size:9.5px!important;letter-spacing:.18em!important;}
.praxisDashboardV2 .praxisSideStats{
  position:absolute!important;
  right:18px!important;
  top:34px!important;
  width:118px!important;
  display:grid!important;
  gap:9px!important;
  z-index:3!important;
}
.praxisDashboardV2 .praxisSideStats div,
.praxisDashboardV2 .praxisSideStats div.praxisScoreStat{
  border-bottom:0!important;
  padding:0!important;
  min-height:28px!important;
}
.praxisDashboardV2 .praxisSideStats div:not(.praxisScoreStat){
  display:grid!important;
  grid-template-columns:24px 1fr!important;
  column-gap:7px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisSideStats div.praxisScoreStat{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  padding-left:31px!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat span{
  order:1!important;
  margin:0 0 2px!important;
  font-size:8px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  color:rgba(232,201,106,.96)!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat b{
  order:2!important;
  display:block!important;
  font-family:var(--font-c)!important;
  font-size:15px!important;
  line-height:1!important;
  letter-spacing:.03em!important;
  color:#6cff78!important;
  text-shadow:0 0 10px rgba(108,255,120,.32),0 3px 12px rgba(0,0,0,.9)!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat small{font-size:11px!important;color:#6cff78!important;margin-left:1px!important;}
.praxisDashboardV2 .praxisSideStats b{
  width:24px!important;
  height:24px!important;
}
.praxisDashboardV2 .praxisSideStats b svg{width:22px!important;height:22px!important;}
.praxisDashboardV2 .praxisSideStats span{font-size:8px!important;letter-spacing:.13em!important;line-height:1!important;color:rgba(232,201,106,.96)!important;}
.praxisDashboardV2 .praxisSideStats strong{font-size:12px!important;line-height:1.05!important;color:#6cff78!important;}
.praxisDashboardV2 .praxisProgressCard{
  height:286px!important;
  min-height:286px!important;
  padding:14px 11px!important;
  gap:8px!important;
  overflow:hidden!important;
}
.praxisDashboardV2 .praxisProgressRow{
  height:42px!important;
  min-height:34px!important;
  grid-template-columns:42px 1fr 46px!important;
  gap:10px!important;
  padding:6px 9px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisRowIcon{align-self:center!important;justify-self:center!important;}
.praxisDashboardV2 .praxisRowText{
  justify-self:stretch!important;
  text-align:left!important;
  align-content:center!important;
  gap:6px!important;
}
.praxisDashboardV2 .praxisRowText strong{
  text-align:left!important;
  justify-self:start!important;
  font-size:13.3px!important;
}
.praxisDashboardV2 .praxisRowBar{width:100%!important;max-width:none!important;}
.praxisDashboardV2 .praxisRowCount{justify-self:end!important;align-self:center!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{height:216px!important;min-height:216px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:158px!important;height:158px!important;top:24px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:57px!important;}
  .praxisDashboardV2 .praxisSideStats{right:14px!important;top:34px!important;width:108px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisSideStats div:not(.praxisScoreStat){grid-template-columns:22px 1fr!important;column-gap:6px!important;}
  .praxisDashboardV2 .praxisSideStats div.praxisScoreStat{padding-left:28px!important;}
  .praxisDashboardV2 .praxisSideStats b{width:22px!important;height:22px!important;}
  .praxisDashboardV2 .praxisSideStats b svg{width:20px!important;height:20px!important;}
  .praxisDashboardV2 .praxisSideStats strong{font-size:11.2px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:282px!important;min-height:282px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:42px!important;min-height:34px!important;}
}
@media(max-height:760px){
  .praxisDashboardV2 .praxisLevelCard{height:208px!important;min-height:208px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:154px!important;height:154px!important;top:23px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:55px!important;}
  .praxisDashboardV2 .praxisSideStats{top:30px!important;}
  .praxisDashboardV2 .praxisProgressCard{height:274px!important;min-height:274px!important;gap:7px!important;padding:13px 10px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:40px!important;min-height:40px!important;}
}

/* STEP 21 · Praxis Dashboard V9 precision cleanup — scoped only to praxisDashboardV2 */
.aiPraxisScreen.praxisDashboardV2{
  overflow-y:auto!important;
  padding:calc(var(--sab) + 76px) 12px calc(var(--sab) + 92px)!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.00) 0%, rgba(0,0,0,.07) 34%, rgba(0,0,0,.53) 64%, #020202 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.praxisDashboardV2 .praxisPremiumWrap{
  gap:10px!important;
  max-width:430px!important;
  min-height:calc(100dvh - var(--sab) - 168px)!important;
  height:auto!important;
}
.praxisDashboardV2 .praxisLevelCard{
  height:220px!important;
  min-height:220px!important;
  position:relative!important;
  display:block!important;
  padding:0!important;
}
.praxisDashboardV2 .praxisLevelRing{
  left:50%!important;
  top:25px!important;
  transform:translateX(-50%)!important;
  width:152px!important;
  height:152px!important;
  z-index:2!important;
  background:
    repeating-conic-gradient(from 0deg, transparent 0deg 34deg, rgba(0,0,0,.98) 34deg 36deg),
    conic-gradient(from 0deg, #fff3ab 0deg, #e7bf54 var(--score), rgba(255,255,255,.11) var(--score), rgba(255,255,255,.11) 360deg)!important;
  filter:drop-shadow(0 0 18px rgba(255,225,121,.34)) drop-shadow(0 0 34px rgba(190,143,43,.14))!important;
}
.praxisDashboardV2 .praxisLevelRing:before{inset:15px!important;}
.praxisDashboardV2 .praxisLevelRing span{font-size:10.5px!important;letter-spacing:.17em!important;}
.praxisDashboardV2 .praxisLevelRing strong{font-size:55px!important;line-height:.84!important;}
.praxisDashboardV2 .praxisLevelRing em{font-size:9px!important;letter-spacing:.17em!important;}
.praxisDashboardV2 .praxisSideStats{
  right:2px!important;
  top:35px!important;
  width:94px!important;
  gap:9px!important;
  z-index:4!important;
}
.praxisDashboardV2 .praxisSideStats div,
.praxisDashboardV2 .praxisSideStats div.praxisScoreStat{
  border:0!important;
  min-height:27px!important;
  padding:0!important;
}
.praxisDashboardV2 .praxisSideStats div:not(.praxisScoreStat){
  grid-template-columns:20px 1fr!important;
  column-gap:5px!important;
  align-items:center!important;
}
.praxisDashboardV2 .praxisSideStats div.praxisScoreStat{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding-left:25px!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat span,
.praxisDashboardV2 .praxisSideStats span{
  font-size:7.4px!important;
  line-height:1!important;
  letter-spacing:.12em!important;
  color:rgba(232,201,106,.94)!important;
  white-space:nowrap!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat b,
.praxisDashboardV2 .praxisSideStats strong{
  font-family:var(--font-c)!important;
  font-size:11.4px!important;
  line-height:1.05!important;
  letter-spacing:.035em!important;
  color:#6cff78!important;
  text-shadow:0 0 10px rgba(108,255,120,.28),0 3px 12px rgba(0,0,0,.88)!important;
}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat b{margin-top:3px!important;}
.praxisDashboardV2 .praxisSideStats .praxisScoreStat small{font-size:9px!important;color:#6cff78!important;margin-left:1px!important;}
.praxisDashboardV2 .praxisSideStats b{width:20px!important;height:20px!important;}
.praxisDashboardV2 .praxisSideStats b svg{width:19px!important;height:19px!important;stroke-width:1.75!important;}
.praxisDashboardV2 .praxisOverviewCard{
  height:90px!important;
  min-height:90px!important;
  padding:9px 9px!important;
}
.praxisDashboardV2 .praxisOverviewGrid{height:100%!important;align-items:center!important;}
.praxisDashboardV2 .praxisMiniGauge{padding:3px 2px 2px!important;}
.praxisDashboardV2 .praxisMiniGauge .metricCard h3{font-size:8.4px!important;margin-bottom:0!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap{width:72px!important;height:48px!important;}
.praxisDashboardV2 .praxisMiniGauge .praxisGaugeWrap svg{width:72px!important;height:48px!important;}
.praxisDashboardV2 .praxisMiniGauge .metricValue{font-size:22px!important;margin-top:-8px!important;}
.praxisDashboardV2 .praxisProgressCard{
  height:auto!important;
  min-height:0!important;
  padding:14px 11px 14px!important;
  gap:10px!important;
  overflow:visible!important;
}
.praxisDashboardV2 .praxisProgressRow{
  height:50px!important;
  min-height:50px!important;
  grid-template-columns:48px minmax(0,1fr) 44px!important;
  gap:8px!important;
  padding:6px 9px!important;
  align-items:center!important;
  border-radius:14px!important;
}
.praxisDashboardV2 .praxisRowIcon{
  width:40px!important;
  height:40px!important;
  border-radius:12px!important;
  align-self:center!important;
  justify-self:center!important;
}
.praxisDashboardV2 .praxisRowIcon svg{width:22px!important;height:22px!important;}
.praxisDashboardV2 .praxisRowText{
  justify-self:stretch!important;
  align-self:center!important;
  text-align:left!important;
  align-content:center!important;
  gap:5px!important;
  min-width:0!important;
}
.praxisDashboardV2 .praxisRowText strong{
  text-align:left!important;
  justify-self:start!important;
  font-size:14.5px!important;
  line-height:1!important;
  letter-spacing:.075em!important;
  white-space:nowrap!important;
}
.praxisDashboardV2 .praxisRowBar{
  width:100%!important;
  max-width:none!important;
  height:4px!important;
  margin:0!important;
}
.praxisDashboardV2 .praxisRowCount{justify-self:end!important;text-align:right!important;}
.praxisDashboardV2 .praxisRowCount b{font-size:15.6px!important;line-height:1!important;}
.praxisDashboardV2 .praxisAreaBtn{height:58px!important;min-height:58px!important;flex:0 0 58px!important;}
.praxisDashboardV2 .praxisFolderNew{height:56px!important;min-height:56px!important;flex:0 0 56px!important;margin-bottom:calc(var(--sab) + 8px)!important;}
@media(max-width:390px){
  .praxisDashboardV2 .praxisLevelCard{height:212px!important;min-height:212px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:146px!important;height:146px!important;top:27px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:52px!important;}
  .praxisDashboardV2 .praxisSideStats{right:0!important;top:34px!important;width:90px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisSideStats div:not(.praxisScoreStat){grid-template-columns:18px 1fr!important;column-gap:5px!important;}
  .praxisDashboardV2 .praxisSideStats div.praxisScoreStat{padding-left:23px!important;}
  .praxisDashboardV2 .praxisSideStats b{width:18px!important;height:18px!important;}
  .praxisDashboardV2 .praxisSideStats b svg{width:18px!important;height:18px!important;}
  .praxisDashboardV2 .praxisSideStats .praxisScoreStat span,
  .praxisDashboardV2 .praxisSideStats span{font-size:7px!important;}
  .praxisDashboardV2 .praxisSideStats .praxisScoreStat b,
  .praxisDashboardV2 .praxisSideStats strong{font-size:10.8px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:48px!important;min-height:48px!important;grid-template-columns:46px minmax(0,1fr) 42px!important;}
  .praxisDashboardV2 .praxisRowText strong{font-size:13.6px!important;}
}
@media(max-height:760px){
  .aiPraxisScreen.praxisDashboardV2{padding-top:calc(var(--sab) + 70px)!important;}
  .praxisDashboardV2 .praxisPremiumWrap{gap:9px!important;}
  .praxisDashboardV2 .praxisLevelCard{height:205px!important;min-height:205px!important;}
  .praxisDashboardV2 .praxisLevelRing{width:144px!important;height:144px!important;top:25px!important;}
  .praxisDashboardV2 .praxisLevelRing strong{font-size:51px!important;}
  .praxisDashboardV2 .praxisSideStats{top:30px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisOverviewCard{height:86px!important;min-height:86px!important;padding:7px 8px!important;}
  .praxisDashboardV2 .praxisProgressCard{padding:12px 10px!important;gap:8px!important;}
  .praxisDashboardV2 .praxisProgressRow{height:45px!important;min-height:45px!important;}
  .praxisDashboardV2 .praxisAreaBtn{height:54px!important;min-height:54px!important;flex-basis:54px!important;}
  .praxisDashboardV2 .praxisFolderNew{height:52px!important;min-height:52px!important;flex-basis:52px!important;}
}

/* === RD CLEAN PRAXIS REBUILD v10 === */
.aiPraxisScreen.rdPraxisDashboard{
  min-height:100svh!important;
  height:auto!important;
  overflow-y:auto!important;
  padding:calc(var(--sab) + 70px) 12px calc(var(--sab) + 22px)!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.58) 48%, rgba(0,0,0,.96) 100%),
    url('assets/img/praxis-bg.jpeg') center top / cover no-repeat!important;
}


.rdPraxisShell{width:100%;max-width:430px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.rdHeroPanel{position:relative;height:275px;min-height:275px;}
.rdLevelOrbit{position:absolute;left:50%;top:22px;transform:translateX(-50%);width:178px;height:178px;border-radius:50%;filter:drop-shadow(0 0 18px rgba(232,194,84,.34)) drop-shadow(0 0 44px rgba(194,143,35,.16));}
.rdLevelOrbit:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from -90deg,#fff4ad 0 36deg,#e0b84b 36deg 72deg,rgba(255,255,255,.13) 72deg 360deg);opacity:.9;}
.rdLevelOrbit:after{content:"";position:absolute;inset:17px;border-radius:50%;background:radial-gradient(circle at 50% 42%,#111 0,#050505 64%,#000 100%);box-shadow:0 0 0 1px rgba(255,255,255,.05) inset;}
.rdLevelOrbit>i{position:absolute;left:50%;top:50%;width:3px;height:24px;background:#050505;z-index:3;transform-origin:50% -66px;transform:rotate(calc(var(--i) * 36deg)) translateY(-89px);border-radius:2px;opacity:.95;}
.rdLevelOrbit>i.on{background:#f1cd67;box-shadow:0 0 12px rgba(241,205,103,.36);}
.rdLevelCore{position:absolute;z-index:4;inset:24px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:var(--font-c);}
.rdLevelCore span{font-size:14px;letter-spacing:.18em;color:#edc95e;font-weight:800;}
.rdLevelCore strong{font-size:66px;line-height:.82;color:#edc95e;text-shadow:0 6px 24px rgba(0,0,0,.86);}
.rdLevelCore em{font-size:10px;letter-spacing:.20em;color:#fff;font-style:normal;font-weight:800;margin-top:8px;}
.rdStatsStack{position:absolute;right:5px;top:28px;width:112px;display:flex;flex-direction:column;gap:10px;z-index:5;}
.rdStat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0;min-height:39px;}
.rdStat small{font-family:var(--font-c);font-size:8.6px;line-height:1;letter-spacing:.15em;color:#dcb753;font-weight:800;white-space:nowrap;}
.rdStat strong{font-family:var(--font-c);font-size:15px;line-height:1.08;letter-spacing:.04em;color:#69ff78;font-weight:900;text-shadow:0 0 12px rgba(105,255,120,.26);}
.rdPerformancePanel{height:102px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:rgba(4,4,4,.66);border:1px solid rgba(232,194,84,.28);border-radius:20px;box-shadow:0 14px 34px rgba(0,0,0,.40),0 0 0 1px rgba(255,255,255,.035) inset;overflow:hidden;}
.rdGauge{height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-family:var(--font-c);}
.rdGauge+.rdGauge{border-left:1px solid rgba(255,255,255,.16);}
.rdGauge b{font-size:8.6px;letter-spacing:.13em;color:#fff;font-weight:800;}
.rdGauge strong{font-size:25px;line-height:.95;color:#fff;font-weight:900;text-shadow:0 5px 16px rgba(0,0,0,.8);}
.rdGaugeArc{width:62px;height:32px;position:relative;overflow:hidden;margin:2px 0 2px;}
.rdGaugeArc:before{content:"";position:absolute;left:0;right:0;top:0;height:62px;border-radius:62px 62px 0 0;border:7px solid rgba(255,255,255,.10);border-bottom:0;}
.rdGaugeArc:after{content:"";position:absolute;left:0;right:0;top:0;height:62px;border-radius:62px 62px 0 0;border:7px solid #d9b457;border-bottom:0;clip-path:polygon(0 0, calc(var(--v) * 1%) 0, calc(var(--v) * 1%) 100%, 0 100%);filter:drop-shadow(0 0 8px rgba(217,180,87,.33));animation:rdArcIn .68s cubic-bezier(.2,.9,.25,1) both;}
.rdGauge-good .rdGaugeArc:after{border-color:#5cff74;filter:drop-shadow(0 0 9px rgba(92,255,116,.34));}
.rdGauge-bad .rdGaugeArc:after{border-color:#f35f70;filter:drop-shadow(0 0 9px rgba(243,95,112,.34));}
@keyframes rdArcIn{from{clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{clip-path:polygon(0 0, calc(var(--v) * 1%) 0, calc(var(--v) * 1%) 100%,0 100%)}}
.rdProgressPanel{display:flex;flex-direction:column;gap:10px;background:rgba(4,4,4,.62);border:1px solid rgba(232,194,84,.24);border-radius:22px;padding:13px 12px;box-shadow:0 14px 34px rgba(0,0,0,.40),0 0 0 1px rgba(255,255,255,.035) inset;}
.rdPraxisDashboard .praxisProgressRow{height:60px!important;min-height:60px!important;display:grid!important;grid-template-columns:56px minmax(0,1fr) 48px!important;gap:12px!important;align-items:center!important;padding:7px 12px!important;border-radius:16px!important;background:linear-gradient(90deg,rgba(255,255,255,.075),rgba(255,255,255,.018))!important;border:1px solid rgba(255,255,255,.11)!important;box-shadow:none!important;overflow:hidden!important;}
.rdPraxisDashboard .praxisRowIcon{width:46px!important;height:46px!important;border-radius:13px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.11)!important;display:flex!important;align-items:center!important;justify-content:center!important;align-self:center!important;justify-self:center!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:24px!important;height:24px!important;stroke:#e6bf58!important;fill:none!important;stroke-width:1.8!important;}
.rdPraxisDashboard .praxisRowText{display:grid!important;grid-template-rows:auto auto!important;align-content:center!important;gap:7px!important;text-align:left!important;min-width:0!important;}
.rdPraxisDashboard .praxisRowText strong{text-align:left!important;font-size:16.4px!important;line-height:1!important;letter-spacing:.08em!important;white-space:nowrap!important;color:#fff!important;}
.rdPraxisDashboard .praxisRowBar{width:100%!important;max-width:none!important;height:5px!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;margin:0!important;overflow:hidden!important;}
.rdPraxisDashboard .praxisRowBar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#d5ad49,#f0cf6d)!important;box-shadow:0 0 10px rgba(232,194,84,.26)!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:18px!important;color:#f1cf70!important;}
.rdMainAction{height:62px!important;margin:0!important;width:100%!important;border-radius:20px!important;background:linear-gradient(135deg,#a9832f,#efd36b)!important;color:#070707!important;font-size:18px!important;letter-spacing:.17em!important;box-shadow:0 10px 26px rgba(201,168,76,.22)!important;}
.rdPraxisToolPage{min-height:100svh!important;height:auto!important;overflow-y:auto!important;padding:calc(var(--sab) + 78px) 16px calc(var(--sab) + 26px)!important;background:linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.96)),url('assets/img/praxis-bg.jpeg') center top / cover no-repeat!important;}

.rdToolShell{width:100%;max-width:430px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
.rdToolHero,.rdToolHead,.rdInputCard,.rdList{background:rgba(5,5,5,.68);border:1px solid rgba(232,194,84,.24);border-radius:22px;padding:18px;box-shadow:0 14px 34px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.035) inset;}
.rdToolHero span,.rdToolHead span{font-family:var(--font-c);font-size:10px;color:#e6bf58;letter-spacing:.18em;font-weight:900;}
.rdToolHero h1,.rdToolHead h1{font-family:var(--font-c);font-size:30px;line-height:.95;margin:8px 0;color:#fff;letter-spacing:.08em;}
.rdToolHero p{color:rgba(255,255,255,.68);line-height:1.45;margin:0;}
.rdToolGrid{display:grid;gap:10px;}
.rdToolGrid button{height:78px;text-align:left;border-radius:18px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.02));color:#fff;padding:0 18px;font-family:var(--font-c);}
.rdToolGrid b{display:block;font-size:18px;letter-spacing:.08em;}
.rdToolGrid small{display:block;margin-top:4px;color:#e6bf58;letter-spacing:.08em;}
.rdInputCard label{display:block;font-family:var(--font-c);font-size:10px;letter-spacing:.14em;color:#e6bf58;margin-bottom:9px;font-weight:900;}
.rdInputCard input,.rdInputCard textarea{width:100%;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.34);color:#fff;border-radius:14px;padding:13px 14px;font-size:15px;outline:none;}
.rdInputCard textarea{min-height:118px;resize:vertical;}
.rdInputCard .btn,.rdToolShell>.btn{width:100%;margin:12px 0 0!important;}
.rdChips{display:flex;gap:8px;flex-wrap:wrap;}
.rdChips button{border:1px solid rgba(232,194,84,.34);background:rgba(232,194,84,.08);color:#e6bf58;border-radius:999px;padding:8px 12px;font-weight:700;}
.rdList label{display:grid;grid-template-columns:24px 1fr 30px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;}
.rdList label:last-child{border-bottom:0;}.rdList button{background:transparent;border:0;color:#e6bf58;font-size:24px;}.rdList p{color:rgba(255,255,255,.68);}.rdMiniLog p,.rdJournalList article{border-top:1px solid rgba(255,255,255,.08);padding-top:10px;color:rgba(255,255,255,.76);}.rdSummaryModal ol{font-size:18px;line-height:1.55;text-align:left}.rdSummaryModal li.done{text-decoration:line-through;opacity:.55;}
@media (max-height:780px){.aiPraxisScreen.rdPraxisDashboard{padding-top:calc(var(--sab) + 62px)!important}.rdPraxisShell{gap:10px}.rdHeroPanel{height:238px;min-height:238px}.rdLevelOrbit{width:154px;height:154px;top:32px}.rdLevelCore strong{font-size:56px}.rdLevelOrbit>i{transform-origin:50% -54px;transform:rotate(calc(var(--i) * 36deg)) translateY(-77px);height:21px}.rdStatsStack{top:23px;right:4px;gap:7px}.rdStat{min-height:33px}.rdPerformancePanel{height:92px}.rdPraxisDashboard .praxisProgressRow{height:52px!important;min-height:52px!important}.rdPraxisDashboard .praxisRowIcon{width:40px!important;height:40px!important}.rdPraxisDashboard .praxisRowText strong{font-size:14.5px!important}.rdProgressPanel{gap:8px;padding:11px}.rdMainAction{height:56px!important}}




.aiPraxisScreen.rdPraxisDashboard{
  min-height:100svh!important;
  height:auto!important;
  overflow-y:auto!important;
  padding:calc(var(--sab) + 58px) 13px max(calc(var(--sab) + 28px),24px)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.42) 42%,rgba(0,0,0,.95) 100%),url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
}
.rdPraxisShell{max-width:430px!important;gap:10px!important;}
.rdHeroPanel{height:242px!important;min-height:242px!important;position:relative!important;margin-top:0!important;}
.rdLevelOrbit{
  left:50%!important;
  top:10px!important;
  width:154px!important;
  height:154px!important;
  transform:translateX(-50%)!important;
  filter:drop-shadow(0 0 20px rgba(232,194,84,.34)) drop-shadow(0 0 46px rgba(232,194,84,.22))!important;
}
.rdLevelOrbit:before{
  inset:0!important;
  background:conic-gradient(from -90deg,#ffe98b 0deg,#d7ae45 calc((var(--level,1) * 36deg)),rgba(255,255,255,.14) calc((var(--level,1) * 36deg)),rgba(255,255,255,.14) 360deg)!important;
  opacity:.88!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.035) inset,0 0 42px rgba(228,182,73,.28)!important;
}
.rdLevelOrbit:after{inset:13px!important;background:radial-gradient(circle at 50% 38%,#111 0,#050505 66%,#000 100%)!important;}
.rdLevelOrbit>i{
  z-index:3!important;
  width:2px!important;
  height:17px!important;
  background:#050505!important;
  box-shadow:none!important;
  transform-origin:50% -58px!important;
  transform:rotate(calc(var(--i) * 36deg)) translateY(-76px)!important;
  opacity:.95!important;
}
.rdLevelOrbit>i.on{background:#050505!important;box-shadow:none!important;}
.rdLevelCore{inset:21px!important;}
.rdLevelCore span{font-size:12px!important;letter-spacing:.20em!important;}
.rdLevelCore strong{font-size:55px!important;line-height:.84!important;}
.rdLevelCore em{font-size:9px!important;margin-top:7px!important;letter-spacing:.20em!important;}
.rdStatsStack{
  top:22px!important;
  right:0!important;
  width:105px!important;
  gap:11px!important;
  z-index:6!important;
}
.rdStat{min-height:31px!important;gap:2px!important;}
.rdStat small{font-size:7.9px!important;letter-spacing:.16em!important;}
.rdStat strong{font-size:14.5px!important;line-height:1.04!important;}
.rdPerformancePanel{
  height:92px!important;
  min-height:92px!important;
  margin-top:-5px!important;
  border-radius:19px!important;
  background:rgba(4,4,4,.70)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.40),0 0 0 1px rgba(255,255,255,.035) inset!important;
}
.rdGauge{gap:1px!important;padding:7px 0 5px!important;justify-content:center!important;}
.rdGauge b{font-size:7.9px!important;letter-spacing:.14em!important;order:2!important;margin-top:-4px!important;}
.rdGauge strong{font-size:24px!important;line-height:.88!important;order:3!important;margin-top:1px!important;}
.rdGaugeArc{display:none!important;}
.rdGaugeSvg{width:70px!important;height:42px!important;order:1!important;overflow:visible!important;margin-bottom:-2px!important;}
.rdGaugeTrack,.rdGaugeValue{fill:none;stroke-linecap:round;stroke-width:7.2;}
.rdGaugeTrack{stroke:rgba(255,255,255,.12)}
.rdGaugeValue{stroke:#d8b355;stroke-dasharray:100;stroke-dashoffset:100;animation:rdGaugeDash .75s cubic-bezier(.18,.86,.22,1) forwards;filter:drop-shadow(0 0 7px rgba(216,179,85,.33));}
.rdGauge-good .rdGaugeValue{stroke:#5cff74;filter:drop-shadow(0 0 8px rgba(92,255,116,.34));}
.rdGauge-bad .rdGaugeValue{stroke:#f35f70;filter:drop-shadow(0 0 8px rgba(243,95,112,.34));}
@keyframes rdGaugeDash{from{stroke-dashoffset:100}}
.rdProgressPanel{
  gap:8px!important;
  padding:10px!important;
  border-radius:20px!important;
  background:rgba(4,4,4,.66)!important;
}
.rdPraxisDashboard .praxisProgressRow{
  height:51px!important;
  min-height:51px!important;
  grid-template-columns:48px minmax(0,1fr) 44px!important;
  gap:11px!important;
  padding:6px 10px!important;
  border-radius:15px!important;
}
.rdPraxisDashboard .praxisRowIcon{width:39px!important;height:39px!important;border-radius:12px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:21px!important;height:21px!important;}
.rdPraxisDashboard .praxisRowText{gap:5px!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:14.3px!important;letter-spacing:.085em!important;}
.rdPraxisDashboard .praxisRowBar{height:4px!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:14.5px!important;}
.rdMainAction{height:56px!important;min-height:56px!important;border-radius:18px!important;font-size:15px!important;margin-top:0!important;position:relative!important;z-index:1!important;}

.rdPraxisToolPage{
  padding:calc(var(--sab) + 64px) 16px max(calc(var(--sab) + 28px),24px)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.36),rgba(0,0,0,.96)),url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
}
.rdToolShell{gap:13px!important;}
.rdToolHero,.rdToolHead,.rdInputCard,.rdList{
  border-radius:22px!important;
  border:1px solid rgba(232,194,84,.20)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;
  box-shadow:0 18px 40px rgba(0,0,0,.46),0 0 0 1px rgba(255,255,255,.03) inset!important;
}
.rdToolHero{padding:19px 18px!important;}
.rdToolHero h1,.rdToolHead h1{font-size:28px!important;line-height:1.02!important;letter-spacing:.075em!important;}
.rdToolGrid{gap:11px!important;}
.rdToolGrid button{height:72px!important;border-radius:18px!important;background:linear-gradient(90deg,rgba(255,255,255,.075),rgba(255,255,255,.022))!important;box-shadow:0 10px 24px rgba(0,0,0,.30)!important;}
.rdInputCard input,.rdInputCard textarea{background:rgba(0,0,0,.44)!important;border-color:rgba(255,255,255,.13)!important;box-shadow:0 8px 18px rgba(0,0,0,.22) inset!important;}
.rdChips{gap:9px!important;}
.rdChips button{background:rgba(232,194,84,.10)!important;border-color:rgba(232,194,84,.36)!important;box-shadow:0 5px 16px rgba(0,0,0,.24)!important;}
.rdList{padding:16px 18px!important;}
.rdList label{grid-template-columns:24px 1fr 32px!important;padding:13px 0!important;}
.rdList input[type="checkbox"]{width:20px!important;height:20px!important;accent-color:#e3bd58!important;}
.rdSummaryModal{width:calc(100vw - 44px)!important;max-width:390px!important;padding:24px 22px!important;text-align:left!important;border-radius:24px!important;background:linear-gradient(145deg,rgba(18,18,16,.96),rgba(2,2,2,.96))!important;}
.rdSummaryModal h2{font-size:32px!important;line-height:1!important;letter-spacing:.06em!important;margin:14px 0 16px!important;}
.rdSummaryModal ol{margin:0 0 18px 24px!important;padding:0!important;font-size:19px!important;line-height:1.5!important;}
.rdSummaryModal li{padding-left:5px!important;}
.rdSummaryModal .btn{width:100%!important;margin-top:12px!important;}

@media (max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:calc(var(--sab) + 54px)!important;padding-bottom:max(calc(var(--sab) + 18px),18px)!important;}
  .rdPraxisShell{gap:8px!important;}
  .rdHeroPanel{height:218px!important;min-height:218px!important;}
  .rdLevelOrbit{width:136px!important;height:136px!important;top:6px!important;}
  .rdLevelOrbit:after{inset:12px!important;}
  .rdLevelOrbit>i{height:15px!important;transform-origin:50% -50px!important;transform:rotate(calc(var(--i) * 36deg)) translateY(-68px)!important;}
  .rdLevelCore{inset:18px!important;}
  .rdLevelCore strong{font-size:49px!important;}
  .rdStatsStack{top:16px!important;right:0!important;gap:8px!important;width:100px!important;}
  .rdStat{min-height:28px!important;}
  .rdStat small{font-size:7.3px!important;}.rdStat strong{font-size:13.2px!important;}
  .rdPerformancePanel{height:84px!important;min-height:84px!important;margin-top:-6px!important;}
  .rdGaugeSvg{width:62px!important;height:36px!important;}.rdGauge strong{font-size:21px!important;}.rdGauge b{font-size:7.2px!important;}
  .rdProgressPanel{gap:7px!important;padding:9px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:47px!important;min-height:47px!important;grid-template-columns:44px minmax(0,1fr) 40px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:36px!important;height:36px!important;}.rdPraxisDashboard .praxisRowIcon svg{width:19px!important;height:19px!important;}
  .rdPraxisDashboard .praxisRowText strong{font-size:13.2px!important;}.rdPraxisDashboard .praxisRowCount b{font-size:13.2px!important;}
  .rdMainAction{height:52px!important;min-height:52px!important;}
}

/* === RD PRAXIS V12 TARGETED REFINEMENT === */
/* Dashboard: cleaner, smaller typography, correct clockwise level ring, no star segments */
.aiPraxisScreen.rdPraxisDashboard{
  padding-top:calc(var(--sab) + 50px)!important;
  padding-left:13px!important;
  padding-right:13px!important;
  padding-bottom:max(calc(var(--sab) + 20px),22px)!important;
}
.rdPraxisShell{gap:8px!important;max-width:430px!important;}
.rdHeroPanel{height:224px!important;min-height:224px!important;}
.rdLevelOrbit{
  top:4px!important;
  width:148px!important;
  height:148px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  filter:drop-shadow(0 0 18px rgba(239,202,96,.36)) drop-shadow(0 0 50px rgba(221,174,66,.24))!important;
}
.rdLevelOrbit:before{
  content:""!important;
  inset:0!important;
  border-radius:50%!important;
  background:
    radial-gradient(circle, transparent 57%, rgba(255,233,139,.20) 58%, transparent 74%),
    conic-gradient(from -90deg,#fff0a0 0deg,#dfb94f calc(var(--level,1) * 36deg),rgba(255,255,255,.13) calc(var(--level,1) * 36deg),rgba(255,255,255,.13) 360deg)!important;
  box-shadow:0 0 46px rgba(225,181,66,.28)!important;
  opacity:.96!important;
}
.rdLevelOrbit:after{inset:14px!important;background:radial-gradient(circle at 50% 38%,#101010 0,#050505 65%,#000 100%)!important;box-shadow:0 0 0 1px rgba(255,255,255,.04) inset!important;}
.rdLevelOrbit>i{display:none!important;}
.rdLevelCore{inset:22px!important;font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;}
.rdLevelCore span{font-size:11px!important;letter-spacing:.20em!important;}
.rdLevelCore strong{font-size:52px!important;line-height:.83!important;}
.rdLevelCore em{font-size:8.5px!important;letter-spacing:.22em!important;margin-top:7px!important;}
.rdStatsStack{
  right:-2px!important;
  top:8px!important;
  width:96px!important;
  gap:7px!important;
  align-items:flex-start!important;
}
.rdStat{min-height:26px!important;gap:1px!important;}
.rdStat small{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;font-size:7.1px!important;letter-spacing:.17em!important;line-height:1.05!important;color:#e0bc5b!important;}
.rdStat strong{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;font-size:13.2px!important;letter-spacing:.055em!important;line-height:1.02!important;color:#66ff77!important;}
.rdPerformancePanel{margin-top:-13px!important;height:82px!important;min-height:82px!important;border-radius:18px!important;}
.rdGauge{padding:5px 0 4px!important;gap:0!important;font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;}
.rdGaugeSvg{width:58px!important;height:35px!important;margin-bottom:-2px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:6.2!important;}
.rdGauge b{font-size:7.0px!important;letter-spacing:.15em!important;margin-top:-5px!important;}
.rdGauge strong{font-size:20px!important;line-height:.9!important;margin-top:1px!important;}
.rdProgressPanel{gap:7px!important;padding:9px!important;border-radius:20px!important;}
.rdPraxisDashboard .praxisProgressRow{
  height:46px!important;
  min-height:46px!important;
  grid-template-columns:42px minmax(0,1fr) 38px!important;
  gap:10px!important;
  padding:5px 9px!important;
  border-radius:14px!important;
}
.rdPraxisDashboard .praxisRowIcon{width:35px!important;height:35px!important;border-radius:11px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:18px!important;height:18px!important;}
.rdPraxisDashboard .praxisRowText{gap:4px!important;}
.rdPraxisDashboard .praxisRowText strong{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;font-size:12.8px!important;letter-spacing:.10em!important;line-height:1!important;}
.rdPraxisDashboard .praxisRowBar{height:3.5px!important;}
.rdPraxisDashboard .praxisRowCount b{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;font-size:12.8px!important;letter-spacing:.05em!important;}
.rdMainAction{height:52px!important;min-height:52px!important;border-radius:18px!important;font-size:14.2px!important;letter-spacing:.18em!important;}

/* Praxis hub: no outlined headline box; 2x2 square action buttons + wide performance folder */
.rdPraxisHubPage{background:linear-gradient(180deg,rgba(0,0,0,.32),rgba(0,0,0,.96)),url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;}
.rdHubShell{gap:13px!important;}
.rdPlainHero{border:0!important;background:transparent!important;box-shadow:none!important;padding:8px 6px 4px!important;text-align:center!important;}
.rdPlainHero span{display:block;font-family:var(--font-c),"Arial Narrow",Arial,sans-serif;font-size:9px;letter-spacing:.20em;color:#e6bf58;font-weight:900;margin-bottom:7px;}
.rdPlainHero h1{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif;font-size:30px;line-height:.98;letter-spacing:.08em;margin:0;color:#fff;text-shadow:0 8px 26px rgba(0,0,0,.72);}
.rdPlainHero p{margin:8px auto 0;max-width:310px;color:rgba(255,255,255,.67);font-size:14px;line-height:1.35;}
.rdHubGrid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;}
.rdHubGrid button{height:122px!important;border-radius:22px!important;text-align:left!important;padding:17px!important;border:1px solid rgba(255,255,255,.12)!important;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.018))!important;color:#fff!important;box-shadow:0 14px 30px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.025) inset!important;font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;}
.rdHubGrid button b{display:block;font-size:19px;line-height:1.05;letter-spacing:.08em;}
.rdHubGrid button small{display:block;margin-top:8px;color:#e6bf58;font-size:10px;letter-spacing:.10em;}
.rdWideToolBtn{height:76px;border-radius:22px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.018));color:#fff;text-align:left;padding:0 20px;font-family:var(--font-c),"Arial Narrow",Arial,sans-serif;box-shadow:0 14px 30px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.025) inset;}
.rdWideToolBtn b{display:block;font-size:20px;letter-spacing:.10em;}
.rdWideToolBtn small{display:block;margin-top:5px;color:#e6bf58;letter-spacing:.10em;}

/* Sub tools: hood background, no top headline card, clean centered titles */
.rdPraxisToolPage.rdHoodToolPage{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.96) 52%,#000 100%),url('assets/img/praxis-hood-bg.jpeg') center top/cover no-repeat!important;}
.rdToolSubShell{gap:13px!important;}
.rdSimpleTitle{border:0!important;background:transparent!important;box-shadow:none!important;text-align:center!important;padding:8px 6px 2px!important;}
.rdSimpleTitle h1{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif;font-size:34px;line-height:1;letter-spacing:.10em;color:#fff;margin:0;text-shadow:0 10px 28px rgba(0,0,0,.72);}
.rdSimpleTitle p{max-width:330px;margin:10px auto 0;color:rgba(255,255,255,.70);font-size:14px;line-height:1.38;}
.rdHoodToolPage .rdInputCard,.rdHoodToolPage .rdList{background:linear-gradient(145deg,rgba(7,7,7,.78),rgba(0,0,0,.64))!important;border-color:rgba(232,194,84,.20)!important;}
.rdHoodToolPage .rdInputCard label{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;letter-spacing:.16em!important;font-size:10px!important;color:#e6bf58!important;}
.rdHoodToolPage .btn{font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;}

@media (max-height:780px){
  .rdHeroPanel{height:206px!important;min-height:206px!important;}
  .rdLevelOrbit{width:132px!important;height:132px!important;top:0!important;}
  .rdLevelOrbit:after{inset:13px!important;}
  .rdLevelCore{inset:18px!important;}.rdLevelCore strong{font-size:45px!important;}.rdLevelCore span{font-size:10px!important;}.rdLevelCore em{font-size:7.8px!important;}
  .rdStatsStack{top:4px!important;right:-1px!important;width:92px!important;gap:5px!important;}
  .rdStat{min-height:24px!important;}.rdStat small{font-size:6.6px!important;}.rdStat strong{font-size:12px!important;}
  .rdPerformancePanel{height:76px!important;margin-top:-12px!important;}.rdGaugeSvg{width:52px!important;height:31px!important;}.rdGauge strong{font-size:18px!important;}.rdGauge b{font-size:6.6px!important;}
  .rdProgressPanel{gap:6px!important;padding:8px!important;}.rdPraxisDashboard .praxisProgressRow{height:43px!important;min-height:43px!important;}.rdMainAction{height:50px!important;min-height:50px!important;}
  .rdPlainHero h1{font-size:27px!important}.rdHubGrid button{height:108px!important}.rdWideToolBtn{height:68px!important}.rdSimpleTitle h1{font-size:30px!important;}
}

/* === RD PRAXIS V13 PRECISION PATCH === */
html, body, #app { background:#000 !important; min-height:100%; }
.screen.aiPraxisScreen{ background-color:#000 !important; }



/* Dashboard fills the viewport down to the bottom, no grey strip */
.aiPraxisScreen.rdPraxisDashboard{
  min-height:100dvh!important;
  padding-top:calc(var(--sab) + 58px)!important;
  padding-bottom:max(calc(var(--sab) + 28px),34px)!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.43) 50%,#000 100%),
    url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
}
.rdPraxisShell{gap:10px!important;}

/* Level: start exactly at 12 o'clock, fill clockwise, subtler outer ring + glow */
.rdHeroPanel{height:224px!important;min-height:224px!important;margin-bottom:2px!important;}
.rdLevelOrbit{
  top:6px!important;width:146px!important;height:146px!important;
  filter:drop-shadow(0 0 22px rgba(239,202,96,.40)) drop-shadow(0 0 62px rgba(211,161,49,.30))!important;
}
.rdLevelOrbit:before{
  background:
    radial-gradient(circle,transparent 60%,rgba(255,231,126,.13) 61%,transparent 75%),
    conic-gradient(from 0deg,#fff0a0 0deg,#e0b84b calc(var(--level,1) * 36deg),rgba(255,255,255,.135) calc(var(--level,1) * 36deg),rgba(255,255,255,.135) 360deg)!important;
  opacity:.92!important;
}
.rdLevelOrbit:after{inset:15px!important;}
.rdLevelCore{inset:22px!important;}
.rdLevelCore strong{font-size:50px!important;}
.rdLevelCore span{font-size:10.5px!important;}
.rdLevelCore em{font-size:8px!important;margin-top:6px!important;}

/* Right stat stack: further right, slightly lower, tighter vertical rhythm */
.rdStatsStack{
  right:-5px!important;top:28px!important;width:104px!important;gap:5px!important;
  transform:none!important;
}
.rdStat{min-height:29px!important;gap:1px!important;}
.rdStat small{font-size:7.2px!important;letter-spacing:.15em!important;}
.rdStat strong{font-size:13.5px!important;line-height:1.03!important;}

/* Performance panel slightly higher and clean */
.rdPerformancePanel{margin-top:-8px!important;height:80px!important;min-height:80px!important;border-radius:19px!important;}
.rdGaugeSvg{width:56px!important;height:34px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:6!important;}
.rdGauge b{font-size:6.8px!important;letter-spacing:.145em!important;}
.rdGauge strong{font-size:19.5px!important;}

/* Progress block: a touch more inner breathing while staying one-screen */
.rdProgressPanel{padding:12px!important;gap:8px!important;border-radius:22px!important;margin-top:0!important;}
.rdPraxisDashboard .praxisProgressRow{
  height:49px!important;min-height:49px!important;
  grid-template-columns:45px minmax(0,1fr) 42px!important;
  gap:10px!important;padding:6px 10px!important;border-radius:15px!important;
}
.rdPraxisDashboard .praxisRowIcon{width:38px!important;height:38px!important;border-radius:12px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:20px!important;height:20px!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:13.6px!important;letter-spacing:.105em!important;}
.rdPraxisDashboard .praxisRowBar{height:4px!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:13.8px!important;}
.rdMainAction{height:54px!important;min-height:54px!important;margin-top:2px!important;margin-bottom:0!important;}

/* Praxis hub starts lower, with premium glow buttons */
.rdPraxisHubPage{
  padding-top:calc(var(--sab) + 122px)!important;
  padding-bottom:max(calc(var(--sab) + 34px),38px)!important;
}
.rdPraxisHubPage .rdToolShell{justify-content:flex-start!important;gap:14px!important;}
.rdHubGrid button,.rdWideToolBtn,.rdPraxisHubPage .btn.secondary{
  box-shadow:0 16px 34px rgba(0,0,0,.42),0 0 18px rgba(214,174,70,.10),0 0 0 1px rgba(255,255,255,.035) inset!important;
}
.rdHubGrid button:active,.rdWideToolBtn:active{transform:scale(.985);}

/* Tool pages: keep hero top free, stack content from the lower part */
.rdPraxisToolPage.rdHoodToolPage,
.rdPraxisToolPage{
  min-height:100dvh!important;
  padding-top:calc(var(--sab) + 130px)!important;
  padding-bottom:max(calc(var(--sab) + 34px),38px)!important;
}
.rdToolSubShell{
  min-height:calc(100dvh - var(--sab) - 175px)!important;
  justify-content:flex-end!important;
  gap:14px!important;
}
.rdSimpleTitle{margin-bottom:2px!important;}
.rdSimpleTitle h1{font-size:32px!important;}
.rdInputCard,.rdList{box-shadow:0 14px 34px rgba(0,0,0,.42),0 0 18px rgba(214,174,70,.08),0 0 0 1px rgba(255,255,255,.035) inset!important;}

/* Todo summary modal: more polished and readable */
.rdSummaryModal{max-width:382px!important;padding:30px 24px!important;border-radius:28px!important;}
.rdSummaryModal h2{font-size:34px!important;letter-spacing:.08em!important;line-height:1.02!important;}
.rdSummaryModal ol{margin:18px 0 22px!important;padding-left:28px!important;color:#fff;font-size:20px;line-height:1.55;}
.rdSummaryModal li.done{opacity:.5;text-decoration:line-through;}

@media (max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:calc(var(--sab) + 52px)!important;padding-bottom:max(calc(var(--sab) + 18px),22px)!important;}
  .rdPraxisShell{gap:8px!important;}
  .rdHeroPanel{height:198px!important;min-height:198px!important;}
  .rdLevelOrbit{width:128px!important;height:128px!important;top:2px!important;}
  .rdLevelOrbit:after{inset:13px!important;}.rdLevelCore{inset:18px!important;}.rdLevelCore strong{font-size:43px!important;}
  .rdStatsStack{top:12px!important;right:-5px!important;gap:4px!important;width:98px!important;}
  .rdStat{min-height:25px!important;}.rdStat small{font-size:6.6px!important;}.rdStat strong{font-size:12px!important;}
  .rdPerformancePanel{height:72px!important;min-height:72px!important;margin-top:-8px!important;}
  .rdGaugeSvg{width:50px!important;height:30px!important;}.rdGauge strong{font-size:18px!important;}.rdGauge b{font-size:6.2px!important;}
  .rdProgressPanel{padding:9px!important;gap:6px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:43px!important;min-height:43px!important;grid-template-columns:40px minmax(0,1fr) 38px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:34px!important;height:34px!important;}.rdPraxisDashboard .praxisRowText strong{font-size:12.3px!important;}.rdPraxisDashboard .praxisRowCount b{font-size:12.5px!important;}
  .rdMainAction{height:48px!important;min-height:48px!important;}
  .rdPraxisHubPage{padding-top:calc(var(--sab) + 104px)!important;}
  .rdHubGrid button{height:104px!important;}
  .rdToolSubShell{min-height:calc(100dvh - var(--sab) - 150px)!important;}
}

/* === RD PRAXIS V14 TARGETED POLISH PATCH === */
html, body, #app { background:#000 !important; }
.screen.aiPraxisScreen{ background-color:#000!important; }




/* dashboard uses full black viewport down to bottom */
.aiPraxisScreen.rdPraxisDashboard{
  min-height:100dvh!important;
  height:auto!important;
  padding-top:max(58px, calc(var(--sat) + 54px))!important;
  padding-bottom:max(36px, calc(var(--sab) + 36px))!important;
  background:
    radial-gradient(circle at 50% 17%,rgba(210,164,58,.17),transparent 32%),
    linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.46) 50%,#000 100%),
    url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
}
.rdPraxisShell{gap:11px!important;}

/* level ring: slightly bigger, thinner, arc starts 12 o'clock clockwise */
.rdHeroPanel{height:226px!important;min-height:226px!important;margin-bottom:0!important;}
.rdLevelOrbit{
  top:8px!important;
  width:154px!important;height:154px!important;
  filter:drop-shadow(0 0 24px rgba(239,202,96,.42)) drop-shadow(0 0 68px rgba(211,161,49,.32))!important;
}
.rdLevelOrbit:before{
  background:conic-gradient(from -90deg,
    #fff3a1 0deg,
    #dfb94f calc(var(--level,1) * 36deg),
    rgba(255,255,255,.13) calc(var(--level,1) * 36deg),
    rgba(255,255,255,.13) 360deg)!important;
  opacity:.95!important;
}
.rdLevelOrbit:after{inset:18px!important;box-shadow:0 0 0 1px rgba(255,255,255,.045) inset,0 16px 28px rgba(0,0,0,.42)!important;}
.rdLevelOrbit>i{display:none!important;}
.rdLevelCore{inset:25px!important;}
.rdLevelCore span{font-size:10.5px!important;letter-spacing:.18em!important;}
.rdLevelCore strong{font-size:51px!important;}
.rdLevelCore em{font-size:8px!important;margin-top:6px!important;}

/* right stats: farther right, a little lower, tighter stack */
.rdStatsStack{
  right:-12px!important;
  top:36px!important;
  width:102px!important;
  gap:4px!important;
  z-index:10!important;
}
.rdStat{min-height:27px!important;gap:1px!important;}
.rdStat small{font-size:7px!important;letter-spacing:.15em!important;}
.rdStat strong{font-size:13.1px!important;line-height:1.02!important;}

/* performance row: keep high, cleaner gauges */
.rdPerformancePanel{margin-top:-2px!important;height:78px!important;min-height:78px!important;border-radius:19px!important;}
.rdGauge{gap:2px!important;}
.rdGaugeSvg{width:54px!important;height:32px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5.6!important;stroke-linecap:round!important;}
.rdGauge b{font-size:6.6px!important;letter-spacing:.145em!important;}
.rdGauge strong{font-size:19px!important;}

/* progress area: more breathing inside panel and between rows */
.rdProgressPanel{
  padding:13px 12px!important;
  gap:9px!important;
  border-radius:22px!important;
  margin-top:0!important;
}
.rdPraxisDashboard .praxisProgressRow{
  height:48px!important;min-height:48px!important;
  grid-template-columns:44px minmax(0,1fr) 42px!important;
  gap:10px!important;
  padding:6px 11px!important;
  border-radius:15px!important;
}
.rdPraxisDashboard .praxisRowIcon{width:37px!important;height:37px!important;border-radius:12px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:19px!important;height:19px!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:13.2px!important;letter-spacing:.105em!important;}
.rdPraxisDashboard .praxisRowBar{height:4px!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:13.5px!important;}
.rdMainAction{height:55px!important;min-height:55px!important;margin-top:3px!important;margin-bottom:0!important;}

/* Praxis hub: lower content, centered labels, grey premium glow */
.rdPraxisHubPage{
  padding-top:max(116px, calc(var(--sat) + 96px))!important;
  background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.96)),url('assets/img/praxis-bg.jpeg') center top/cover no-repeat fixed!important;
}
.rdPraxisHubPage .rdToolShell{gap:16px!important;}
.rdPlainHero{margin-top:20px!important;text-align:center!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0 4px!important;}
.rdPlainHero span{font-size:10px!important;letter-spacing:.20em!important;}
.rdPlainHero h1{font-size:31px!important;line-height:.98!important;margin:8px 0!important;text-align:center!important;}
.rdPlainHero p{text-align:center!important;margin:0 auto!important;}
.rdHubGrid{gap:14px!important;}
.rdHubGrid button,
.rdWideToolBtn{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;
  box-shadow:0 16px 34px rgba(0,0,0,.45),0 0 18px rgba(210,210,210,.10),0 0 0 1px rgba(255,255,255,.045) inset!important;
}
.rdHubGrid b,.rdWideToolBtn b{text-align:center!important;width:100%!important;}
.rdHubGrid small,.rdWideToolBtn small{text-align:center!important;width:100%!important;}
.rdWideToolBtn{height:84px!important;}

/* Tool pages: fixed hood background, content starts lower, no oversized crop */
.rdPraxisToolPage.rdHoodToolPage{
  min-height:100dvh!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.72) 44%,#000 100%),
    url('assets/img/praxis-hood-bg.jpeg') center top/100% auto no-repeat fixed!important;
  padding-top:max(255px, calc(var(--sat) + 228px))!important;
  padding-bottom:max(42px, calc(var(--sab) + 42px))!important;
}
.rdToolSubShell{
  min-height:auto!important;
  justify-content:flex-start!important;
  gap:15px!important;
}
.rdSimpleTitle{
  margin:0 auto 4px!important;
  padding:0 8px!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  text-align:center!important;
}
.rdSimpleTitle h1{font-size:34px!important;line-height:1!important;text-align:center!important;}
.rdSimpleTitle p{font-size:15px!important;line-height:1.38!important;max-width:360px!important;margin:10px auto 0!important;text-align:center!important;}
.rdInputCard,.rdList{
  box-shadow:0 16px 34px rgba(0,0,0,.46),0 0 18px rgba(210,210,210,.08),0 0 0 1px rgba(255,255,255,.035) inset!important;
}

/* Reflection title: show Dein Tagebuch as main headline; suppress Reflexion label when present */
.rdHoodToolPage .rdSimpleTitle h1{font-size:34px!important;}
.rdHoodToolPage .rdSimpleTitle h1 + p{font-size:18px!important;color:#fff!important;font-weight:700!important;}

/* Todo popup OK returns to Praxis hub and remains screenshot-friendly */
.rdSummaryModal{transform:none!important;}

@media (max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(52px, calc(var(--sat) + 48px))!important;padding-bottom:max(26px, calc(var(--sab) + 26px))!important;}
  .rdPraxisShell{gap:8px!important;}
  .rdHeroPanel{height:196px!important;min-height:196px!important;}
  .rdLevelOrbit{width:136px!important;height:136px!important;top:2px!important;}
  .rdLevelOrbit:after{inset:16px!important;}.rdLevelCore{inset:22px!important;}.rdLevelCore strong{font-size:43px!important;}
  .rdStatsStack{top:12px!important;right:-12px!important;width:98px!important;gap:3px!important;}
  .rdStat{min-height:24px!important}.rdStat small{font-size:6.4px!important}.rdStat strong{font-size:11.7px!important}
  .rdPerformancePanel{height:72px!important;min-height:72px!important;margin-top:-6px!important;}
  .rdGaugeSvg{width:49px!important;height:30px!important}.rdGauge strong{font-size:17.6px!important}.rdGauge b{font-size:6.1px!important}
  .rdProgressPanel{padding:10px!important;gap:7px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:43px!important;min-height:43px!important;grid-template-columns:40px minmax(0,1fr) 38px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:34px!important;height:34px!important}.rdPraxisDashboard .praxisRowText strong{font-size:12.3px!important}.rdPraxisDashboard .praxisRowCount b{font-size:12.4px!important}
  .rdMainAction{height:49px!important;min-height:49px!important;}
  .rdPraxisHubPage{padding-top:max(102px, calc(var(--sat) + 84px))!important;}
  .rdPlainHero{margin-top:12px!important}.rdHubGrid button{height:108px!important;}
  .rdPraxisToolPage.rdHoodToolPage{padding-top:max(224px, calc(var(--sat) + 196px))!important;}
}

/* === RD PRAXIS V15 VERIFIED PATCH - only requested corrections === */
html,body,#app{background:#000!important;min-height:100%;}
.screen.aiPraxisScreen{background-color:#000!important;}




/* Dashboard: use complete viewport, no gray bottom gap */
.aiPraxisScreen.rdPraxisDashboard{
  min-height:100dvh!important;
  height:auto!important;
  padding-top:max(58px,calc(var(--sat) + 52px))!important;
  padding-bottom:max(34px,calc(var(--sab) + 34px))!important;
  background:
    radial-gradient(circle at 50% 17%,rgba(218,174,64,.20),transparent 33%),
    linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.52) 54%,#000 100%),
    url('assets/img/praxis-bg.jpeg') center top/cover no-repeat!important;
}
.rdPraxisShell{gap:12px!important;max-width:430px!important;}
.rdHeroPanel{height:228px!important;min-height:228px!important;overflow:visible!important;margin-bottom:0!important;}

/* Level ring: bigger diameter, half-thin arc, starts exactly at 12 o'clock and fills clockwise */
.rdLevelOrbit{
  width:164px!important;height:164px!important;top:7px!important;left:50%!important;transform:translateX(-50%)!important;
  filter:drop-shadow(0 0 26px rgba(238,198,92,.42)) drop-shadow(0 0 78px rgba(213,163,49,.30))!important;
}
.rdLevelOrbit:before{
  content:""!important;position:absolute!important;inset:0!important;border-radius:50%!important;
  background:conic-gradient(from -90deg,
    #fff0a0 0deg,
    #dcb64e calc(var(--level,1) * 36deg),
    rgba(255,255,255,.13) calc(var(--level,1) * 36deg),
    rgba(255,255,255,.13) 360deg)!important;
  box-shadow:0 0 58px rgba(225,181,66,.26)!important;
  opacity:.94!important;
}
.rdLevelOrbit:after{
  content:""!important;position:absolute!important;inset:9px!important;border-radius:50%!important;
  background:radial-gradient(circle at 50% 40%,#101010 0,#050505 66%,#000 100%)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 16px 30px rgba(0,0,0,.44)!important;
}
.rdLevelOrbit>i{display:none!important;}
.rdLevelCore{inset:25px!important;z-index:5!important;}
.rdLevelCore span{font-size:10.3px!important;letter-spacing:.18em!important;}
.rdLevelCore strong{font-size:50px!important;line-height:.82!important;}
.rdLevelCore em{font-size:8px!important;margin-top:6px!important;letter-spacing:.20em!important;}

/* Right stats farther right and slightly lower */
.rdStatsStack{right:-24px!important;top:50px!important;width:104px!important;gap:5px!important;z-index:10!important;}
.rdStat{min-height:27px!important;gap:1px!important;}
.rdStat small{font-size:7px!important;letter-spacing:.15em!important;line-height:1!important;}
.rdStat strong{font-size:13.2px!important;line-height:1.03!important;}

/* Performance row lifted and refined */
.rdPerformancePanel{margin-top:-4px!important;height:79px!important;min-height:79px!important;border-radius:19px!important;}
.rdGaugeSvg{width:53px!important;height:31px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5.4!important;stroke-linecap:round!important;}
.rdGauge b{font-size:6.5px!important;letter-spacing:.145em!important;}
.rdGauge strong{font-size:18.8px!important;}

/* Progress panel: more air inside and between rows without changing function */
.rdProgressPanel{padding:15px 13px!important;gap:10px!important;border-radius:23px!important;}
.rdPraxisDashboard .praxisProgressRow{height:50px!important;min-height:50px!important;padding:7px 12px!important;grid-template-columns:45px minmax(0,1fr) 42px!important;gap:11px!important;border-radius:16px!important;}
.rdPraxisDashboard .praxisRowIcon{width:38px!important;height:38px!important;border-radius:12px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:19px!important;height:19px!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:13.1px!important;letter-spacing:.105em!important;}
.rdPraxisDashboard .praxisRowBar{height:4px!important;}
.rdMainAction{height:55px!important;min-height:55px!important;margin-top:3px!important;}

/* Praxis hub: content lower, Praxisbereich label larger, bottom button naturally at lower area, grey glow */
.rdPraxisHubPage{
  min-height:100dvh!important;
  padding-top:max(138px,calc(var(--sat) + 118px))!important;
  padding-bottom:max(38px,calc(var(--sab) + 38px))!important;
  background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.96)),url('assets/img/praxis-bg.jpeg') center top/cover no-repeat fixed!important;
}
.rdPraxisHubPage .rdToolShell{gap:16px!important;}
.rdPlainHero{margin-top:34px!important;text-align:center!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0 4px!important;}
.rdPlainHero span{font-size:11px!important;letter-spacing:.22em!important;}
.rdPlainHero h1{font-size:31px!important;line-height:.98!important;margin:9px 0!important;text-align:center!important;}
.rdPlainHero p{text-align:center!important;margin:0 auto!important;}
.rdHubGrid button,.rdWideToolBtn{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;
  box-shadow:0 18px 36px rgba(0,0,0,.48),0 0 22px rgba(190,190,190,.12),0 0 0 1px rgba(255,255,255,.05) inset!important;
}
.rdHubGrid b,.rdHubGrid small,.rdWideToolBtn b,.rdWideToolBtn small{text-align:center!important;width:100%!important;}
.rdPraxisHubPage .btn.secondary{box-shadow:0 18px 36px rgba(0,0,0,.48),0 0 22px rgba(190,190,190,.10)!important;}

/* Tool pages: fixed hood image remains visible while content scrolls; content begins from lower section */
.rdPraxisToolPage.rdHoodToolPage{
  min-height:100dvh!important;height:auto!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.62) 42%,#000 100%),
    url('assets/img/praxis-hood-bg.jpeg') center top/100% auto no-repeat fixed!important;
  padding-top:max(270px,calc(var(--sat) + 244px))!important;
  padding-bottom:max(42px,calc(var(--sab) + 42px))!important;
}
.rdToolSubShell{min-height:auto!important;justify-content:flex-start!important;gap:15px!important;}
.rdSimpleTitle{background:transparent!important;border:0!important;box-shadow:none!important;text-align:center!important;padding:0 10px!important;margin:0 auto 8px!important;}
.rdSimpleTitle h1{font-size:34px!important;line-height:1!important;text-align:center!important;}
.rdSimpleTitle p{font-size:13.5px!important;line-height:1.38!important;max-width:350px!important;margin:10px auto 0!important;text-align:center!important;font-weight:500!important;color:rgba(255,255,255,.74)!important;}
.rdMistakeTitle p{font-size:12.5px!important;line-height:1.42!important;max-width:342px!important;color:rgba(255,255,255,.70)!important;}
.rdJournalTitle h1{font-size:34px!important;}
.rdInputCard,.rdList{box-shadow:0 16px 34px rgba(0,0,0,.46),0 0 18px rgba(210,210,210,.08),0 0 0 1px rgba(255,255,255,.035) inset!important;}

/* Todo summary OK must return to Praxis area */
#rdTodoModal .btn{cursor:pointer;}

@media (max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(52px,calc(var(--sat) + 48px))!important;padding-bottom:max(24px,calc(var(--sab) + 24px))!important;}
  .rdPraxisShell{gap:8px!important;}
  .rdHeroPanel{height:196px!important;min-height:196px!important;}
  .rdLevelOrbit{width:142px!important;height:142px!important;top:2px!important;}
  .rdLevelOrbit:after{inset:8px!important;}.rdLevelCore{inset:22px!important;}.rdLevelCore strong{font-size:43px!important;}
  .rdStatsStack{top:18px!important;right:-22px!important;width:98px!important;gap:3px!important;}
  .rdStat{min-height:24px!important}.rdStat small{font-size:6.4px!important}.rdStat strong{font-size:11.7px!important}
  .rdPerformancePanel{height:72px!important;min-height:72px!important;margin-top:-6px!important;}
  .rdGaugeSvg{width:49px!important;height:30px!important}.rdGauge strong{font-size:17.6px!important}.rdGauge b{font-size:6.1px!important}
  .rdProgressPanel{padding:11px!important;gap:7px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:44px!important;min-height:44px!important;grid-template-columns:40px minmax(0,1fr) 38px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:34px!important;height:34px!important}.rdPraxisDashboard .praxisRowText strong{font-size:12.3px!important}.rdPraxisDashboard .praxisRowCount b{font-size:12.4px!important}
  .rdMainAction{height:49px!important;min-height:49px!important;}
  .rdPraxisHubPage{padding-top:max(118px,calc(var(--sat) + 98px))!important;}
  .rdPlainHero{margin-top:24px!important}.rdHubGrid button{height:108px!important;}
  .rdPraxisToolPage.rdHoodToolPage{padding-top:max(238px,calc(var(--sat) + 212px))!important;}
}

/* === RD REQUEST PATCH: Praxis dashboard drawer + intensive station === */
.aiPraxisScreen.rdPraxisDashboard{
  padding-top:max(50px,calc(var(--sat) + 46px))!important;
}
.rdPraxisShell{gap:10px!important;}
.rdHeroPanel{height:190px!important;min-height:190px!important;}
.rdPerformancePanel{margin-top:-10px!important;height:76px!important;min-height:76px!important;}
.rdStatsStackClean{
  top:64px!important;
  right:-24px!important;
  gap:8px!important;
  align-items:center!important;
  text-align:center!important;
}
.rdStatsStackClean .rdStat{align-items:center!important;min-height:28px!important;}
.rdStatsStackClean .rdStat strong{
  color:#fff!important;
  text-shadow:0 8px 18px rgba(0,0,0,.78)!important;
}
.rdScoreDrawer{
  width:100%!important;
  border:1px solid rgba(232,194,84,.30)!important;
  border-radius:21px!important;
  background:rgba(4,4,4,.68)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.04) inset!important;
  overflow:hidden!important;
}
.rdScoreDrawer summary{
  list-style:none!important;
  cursor:pointer!important;
  min-height:66px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:0 15px!important;
  font-family:var(--font-c)!important;
  letter-spacing:.16em!important;
  color:#fff!important;
  user-select:none!important;
}
.rdScoreDrawer summary::-webkit-details-marker{display:none!important;}
.rdScoreDrawer summary span{font-size:18px!important;font-weight:900!important;}
.rdScoreDrawer summary strong{font-size:25px!important;color:#f0ce6a!important;font-weight:900!important;letter-spacing:.04em!important;}
.rdScoreDrawer summary:after{
  content:"+";
  font-size:25px;
  line-height:1;
  color:rgba(255,255,255,.86);
  margin-left:12px;
}
.rdScoreDrawer[open] summary:after{content:"–";}
.rdScoreProgressPanel{
  margin:0 10px 12px!important;
  background:rgba(0,0,0,.38)!important;
  border-color:rgba(255,255,255,.08)!important;
}
.rdDashboardActions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  width:100%!important;
}
.rdDashboardActions .rdMainAction{
  margin:0!important;
  height:58px!important;
  min-height:58px!important;
  border-radius:18px!important;
  font-size:12.5px!important;
  letter-spacing:.13em!important;
  padding:0 10px!important;
}
.rdDayStartAction{
  background:linear-gradient(135deg,#b78c32,#f0d16a)!important;
  color:#050505!important;
}
.rdIntensiveAction{
  background:rgba(5,5,5,.74)!important;
  color:#fff!important;
  border:1px solid rgba(232,194,84,.45)!important;
  box-shadow:0 14px 28px rgba(0,0,0,.44),0 0 18px rgba(232,194,84,.12) inset!important;
}
.rdIntensiveGrid{
  grid-template-columns:1fr!important;
}
.rdIntensiveGrid button{height:116px!important;}
.rdPraxisHubPage .rdPlainHero h1{text-transform:none!important;}

@media (max-height:780px){
  .rdHeroPanel{height:166px!important;min-height:166px!important;}
  .rdStatsStackClean{top:42px!important;right:-22px!important;gap:5px!important;}
  .rdPerformancePanel{height:68px!important;min-height:68px!important;margin-top:-10px!important;}
  .rdScoreDrawer summary{min-height:56px!important;padding:0 18px!important;}
  .rdScoreDrawer summary span{font-size:13.5px!important;}
  .rdScoreDrawer summary strong{font-size:21px!important;}
  .rdDashboardActions .rdMainAction{height:50px!important;min-height:50px!important;font-size:11px!important;}
  .rdScoreProgressPanel{padding:9px!important;gap:6px!important;}
}


/* === RD FINAL PATCH V17: fixed compact Praxis dashboard score panel only === */
.aiPraxisScreen.rdPraxisDashboard{
  padding-top:max(48px,calc(var(--sat) + 44px))!important;
  padding-bottom:max(18px,calc(var(--sab) + 18px))!important;
}
.rdPraxisShell{gap:8px!important;max-width:430px!important;}
.rdHeroPanel{height:178px!important;min-height:178px!important;margin-bottom:0!important;}
.rdLevelOrbit{width:154px!important;height:154px!important;top:4px!important;}
.rdLevelOrbit:before{
  background:conic-gradient(from 0deg,
    #fff0a0 0deg,
    #dcb64e calc(var(--level,1) * 36deg),
    rgba(255,255,255,.13) calc(var(--level,1) * 36deg),
    rgba(255,255,255,.13) 360deg)!important;
}
.rdLevelOrbit:after{inset:10px!important;}
.rdLevelCore{inset:23px!important;}
.rdLevelCore strong{font-size:48px!important;}
.rdStatsStackClean{
  top:50%!important;
  transform:translateY(-50%)!important;
  right:-18px!important;
  width:96px!important;
  gap:7px!important;
}
.rdStatsStackClean .rdStat{align-items:center!important;text-align:center!important;min-height:24px!important;}
.rdStatsStackClean .rdStat small{font-size:6.8px!important;}
.rdStatsStackClean .rdStat strong{font-size:12.4px!important;color:#fff!important;}
.rdPerformancePanel{margin-top:-2px!important;height:70px!important;min-height:70px!important;border-radius:18px!important;}
.rdGaugeSvg{width:48px!important;height:29px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5!important;}
.rdGauge b{font-size:6px!important;}
.rdGauge strong{font-size:17px!important;}
.rdScoreDrawerFixed{border-radius:20px!important;}
.rdScoreHeader{
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:16px!important;
  padding:0 16px!important;
  font-family:var(--font-c)!important;
  letter-spacing:.15em!important;
  color:#fff!important;
  text-align:center!important;
}
.rdScoreHeader span{font-size:14px!important;font-weight:900!important;}
.rdScoreHeader strong{font-size:23px!important;color:#f0ce6a!important;font-weight:900!important;letter-spacing:.04em!important;}
.rdScoreDrawer summary{display:none!important;}
.rdScoreDrawer:after,.rdScoreDrawer summary:after{display:none!important;content:""!important;}
.rdScoreProgressPanel{
  margin:0 9px 9px!important;
  padding:9px!important;
  gap:6px!important;
  border-radius:18px!important;
}
.rdPraxisDashboard .praxisProgressRow{
  height:41px!important;
  min-height:41px!important;
  padding:5px 10px!important;
  grid-template-columns:36px minmax(0,1fr) 36px!important;
  gap:9px!important;
  border-radius:14px!important;
  align-items:center!important;
}
.rdPraxisDashboard .praxisRowIcon{
  width:31px!important;
  height:31px!important;
  border-radius:10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  justify-self:center!important;
}
.rdPraxisDashboard .praxisRowIcon svg{width:16px!important;height:16px!important;display:block!important;}
.rdPraxisDashboard .praxisRowText{align-self:center!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:11.8px!important;letter-spacing:.10em!important;line-height:1!important;}
.rdPraxisDashboard .praxisRowBar{height:3.5px!important;margin-top:6px!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:12px!important;}
.rdDashboardActions{gap:10px!important;margin-top:0!important;}
.rdDashboardActions .rdMainAction{height:50px!important;min-height:50px!important;border-radius:17px!important;font-size:11.3px!important;}
@media (max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(46px,calc(var(--sat) + 42px))!important;padding-bottom:max(14px,calc(var(--sab) + 14px))!important;}
  .rdPraxisShell{gap:6px!important;}
  .rdHeroPanel{height:160px!important;min-height:160px!important;}
  .rdLevelOrbit{width:136px!important;height:136px!important;top:2px!important;}
  .rdLevelCore strong{font-size:42px!important;}
  .rdStatsStackClean{right:-18px!important;gap:4px!important;}
  .rdStatsStackClean .rdStat strong{font-size:11.3px!important;}
  .rdPerformancePanel{height:64px!important;min-height:64px!important;}
  .rdScoreHeader{min-height:44px!important;gap:12px!important;}
  .rdScoreHeader span{font-size:12.4px!important;}.rdScoreHeader strong{font-size:20px!important;}
  .rdScoreProgressPanel{padding:7px!important;gap:5px!important;margin:0 8px 8px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:37px!important;min-height:37px!important;grid-template-columns:33px minmax(0,1fr) 34px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:28px!important;height:28px!important;}.rdPraxisDashboard .praxisRowIcon svg{width:15px!important;height:15px!important;}
  .rdPraxisDashboard .praxisRowText strong{font-size:10.8px!important;}
  .rdDashboardActions .rdMainAction{height:45px!important;min-height:45px!important;font-size:10.4px!important;}
}


/* === RD V18 REQUESTED DASHBOARD SPACING + COURSE LINK SUPPORT === */
/* More air between level ring and performance metrics, while keeping top composition intact */
.aiPraxisScreen.rdPraxisDashboard{
  padding-top:max(48px,calc(var(--sat) + 44px))!important;
  padding-bottom:max(16px,calc(var(--sab) + 16px))!important;
}
.rdPraxisShell{gap:8px!important;}
.rdHeroPanel{
  height:206px!important;
  min-height:206px!important;
  margin-bottom:0!important;
}
/* keep level where it was; only give the next row more breathing room */
.rdLevelOrbit{top:4px!important;}

/* Right level stats: one tick larger, still centered against the level circle */
.rdStatsStackClean{
  top:50%!important;
  transform:translateY(-50%)!important;
  right:-18px!important;
  width:102px!important;
  gap:7px!important;
}
.rdStatsStackClean .rdStat{align-items:center!important;text-align:center!important;min-height:27px!important;}
.rdStatsStackClean .rdStat small{font-size:7.4px!important;letter-spacing:.15em!important;}
.rdStatsStackClean .rdStat strong{font-size:13.7px!important;line-height:1.04!important;color:#fff!important;}

/* Performance row: lower, slightly larger, no change to data/function */
.rdPerformancePanel{
  margin-top:0!important;
  height:78px!important;
  min-height:78px!important;
  border-radius:19px!important;
}
.rdGauge{gap:2px!important;}
.rdGaugeSvg{width:54px!important;height:32px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5.6!important;}
.rdGauge b{font-size:6.7px!important;letter-spacing:.145em!important;}
.rdGauge strong{font-size:19px!important;}

/* Keep the lower dashboard compact enough to stay clean on home screen */
.rdScoreHeader{min-height:46px!important;}
.rdScoreProgressPanel{padding:8px!important;gap:5px!important;margin:0 9px 9px!important;}
.rdPraxisDashboard .praxisProgressRow{
  height:39px!important;
  min-height:39px!important;
  grid-template-columns:35px minmax(0,1fr) 36px!important;
  padding:5px 10px!important;
}
.rdPraxisDashboard .praxisRowIcon{width:30px!important;height:30px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:15.5px!important;height:15.5px!important;}
.rdDashboardActions .rdMainAction{height:49px!important;min-height:49px!important;}

@media (max-height:780px){
  .rdHeroPanel{height:180px!important;min-height:180px!important;}
  .rdStatsStackClean{right:-18px!important;gap:5px!important;}
  .rdStatsStackClean .rdStat small{font-size:6.9px!important;}
  .rdStatsStackClean .rdStat strong{font-size:12.5px!important;}
  .rdPerformancePanel{height:70px!important;min-height:70px!important;margin-top:0!important;}
  .rdGaugeSvg{width:50px!important;height:30px!important;}
  .rdGauge strong{font-size:18px!important;}
  .rdGauge b{font-size:6.2px!important;}
  .rdScoreHeader{min-height:43px!important;}
  .rdScoreProgressPanel{padding:7px!important;gap:5px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:36px!important;min-height:36px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:28px!important;height:28px!important;}
  .rdDashboardActions .rdMainAction{height:45px!important;min-height:45px!important;}
}

/* === RD V19: Praxis proportion polish + 7-day dashboard compact premium rebuild === */
/* Praxis dashboard: match home-screen proportions more closely */
.aiPraxisScreen.rdPraxisDashboard{
  min-height:100svh!important;
  padding-top:max(50px,calc(var(--sat) + 48px))!important;
  padding-bottom:max(18px,calc(var(--sab) + 18px))!important;
}
.rdPraxisShell{
  gap:10px!important;
  max-width:430px!important;
}
.rdHeroPanel{
  height:238px!important;
  min-height:238px!important;
  margin-bottom:0!important;
}
.rdLevelOrbit{
  top:8px!important;
  width:154px!important;
  height:154px!important;
}
/* Right stats: slightly bigger, slightly left/up, centered to circle */
.rdStatsStackClean{
  top:46%!important;
  transform:translateY(-50%)!important;
  right:-8px!important;
  width:104px!important;
  gap:9px!important;
  align-items:center!important;
  text-align:center!important;
}
.rdStatsStackClean .rdStat{min-height:30px!important;align-items:center!important;}
.rdStatsStackClean .rdStat small{font-size:7.9px!important;letter-spacing:.16em!important;line-height:1!important;}
.rdStatsStackClean .rdStat strong{font-size:15px!important;line-height:1.02!important;color:#fff!important;}
/* Lower metrics row: more separation from level circle and slightly stronger */
.rdPerformancePanel{
  margin-top:2px!important;
  height:84px!important;
  min-height:84px!important;
  border-radius:20px!important;
}
.rdGauge{gap:3px!important;}
.rdGaugeSvg{width:58px!important;height:34px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5.8!important;}
.rdGauge b{font-size:7px!important;letter-spacing:.15em!important;}
.rdGauge strong{font-size:21px!important;line-height:1!important;}
/* Keep the lower score area clean so the actions sit lower without feeling cramped */
.rdScoreHeader{min-height:48px!important;gap:18px!important;}
.rdScoreHeader span{font-size:14.6px!important;}
.rdScoreHeader strong{font-size:24px!important;}
.rdScoreProgressPanel{padding:8px!important;gap:6px!important;margin:0 9px 10px!important;}
.rdPraxisDashboard .praxisProgressRow{
  height:40px!important;
  min-height:40px!important;
  grid-template-columns:35px minmax(0,1fr) 36px!important;
  padding:5px 10px!important;
}
.rdPraxisDashboard .praxisRowIcon{width:30px!important;height:30px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:15.5px!important;height:15.5px!important;}
.rdDashboardActions{gap:12px!important;margin-top:2px!important;}
.rdDashboardActions .rdMainAction{height:52px!important;min-height:52px!important;border-radius:18px!important;font-size:11.5px!important;}
@media (display-mode: standalone){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(48px,calc(var(--sat) + 44px))!important;}
  .rdHeroPanel{height:232px!important;min-height:232px!important;}
}
@media (max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(46px,calc(var(--sat) + 42px))!important;}
  .rdPraxisShell{gap:8px!important;}
  .rdHeroPanel{height:208px!important;min-height:208px!important;}
  .rdLevelOrbit{width:142px!important;height:142px!important;top:6px!important;}
  .rdLevelCore strong{font-size:44px!important;}
  .rdStatsStackClean{top:46%!important;right:-7px!important;gap:6px!important;width:98px!important;}
  .rdStatsStackClean .rdStat small{font-size:7px!important;}
  .rdStatsStackClean .rdStat strong{font-size:13px!important;}
  .rdPerformancePanel{height:76px!important;min-height:76px!important;margin-top:1px!important;}
  .rdGaugeSvg{width:53px!important;height:31px!important;}
  .rdGauge strong{font-size:19px!important;}
  .rdGauge b{font-size:6.4px!important;}
  .rdScoreHeader{min-height:44px!important;}
  .rdScoreProgressPanel{padding:7px!important;gap:5px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:36px!important;min-height:36px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:28px!important;height:28px!important;}
  .rdDashboardActions .rdMainAction{height:46px!important;min-height:46px!important;}
}


.moduleDashboardHero{
  min-height:360px!important;
  height:42dvh!important;
  max-height:430px!important;
  background-size:cover!important;
  background-position:center 22%!important;
}
.moduleDashboardHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,.10) 34%,rgba(0,0,0,.50) 68%,#050505 100%)!important;
}
.moduleDashboardHeroContent{
  left:22px!important;
  right:22px!important;
  bottom:18px!important;
  transform:none!important;
}
.moduleDashboardHeroContent .cleanTag{
  border:0!important;
  background:rgba(0,0,0,.22)!important;
  box-shadow:none!important;
  padding:0!important;
  margin-bottom:10px!important;
  color:#d6b456!important;
}
.moduleDashboardHeroContent h1{
  font-size:clamp(34px,8.6vw,48px)!important;
  line-height:.9!important;
  max-width:330px!important;
  padding-top:4px!important;
}
.moduleDashboardHeroContent p{
  font-size:14px!important;
  line-height:1.42!important;
  padding-top:11px!important;
  max-width:355px!important;
}
.moduleDashboardHeroContent .courseIntroStartBtn{
  height:54px!important;
  margin-top:16px!important;
  border-radius:18px!important;
}
/* Slimmer, more premium day list */
.premiumModuleGrid{
  padding:12px 16px calc(env(safe-area-inset-bottom,0px) + 22px)!important;
  gap:11px!important;
}
.premiumModuleGrid .premiumDayCard,
.moduleDashboardScreen .moduleImageCard{
  min-height:92px!important;
  height:92px!important;
  padding:14px 58px 14px 16px!important;
  border-radius:18px!important;
  border-color:rgba(201,168,76,.50)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.36),0 0 14px rgba(201,168,76,.045)!important;
}
.premiumModuleGrid .moduleImageCard::before{
  background:linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.38) 52%,rgba(0,0,0,.58) 100%)!important;
}
.premiumModuleGrid .moduleImageCard.lockedVisual::before{
  background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.50) 52%,rgba(0,0,0,.68) 100%)!important;
}
.premiumModuleGrid .moduleNum{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  font-size:20px!important;
  border-width:2px!important;
}
.premiumModuleGrid .moduleCopy h3{
  font-size:17px!important;
  line-height:1.04!important;
  letter-spacing:-.01em!important;
}
.premiumModuleGrid .moduleCopy p{
  font-size:12px!important;
  line-height:1.22!important;
  margin-top:4px!important;
  color:rgba(240,237,232,.62)!important;
}
.premiumModuleGrid .lockBadge{
  right:16px!important;
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  font-size:20px!important;
}
.moduleDashboardScreen .moduleImageCard:not(.lockedVisual)::after{
  content:'›';
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  color:rgba(232,194,84,.82);
  font-size:30px;
  line-height:1;
  z-index:3;
}
@media(max-height:760px){
  .moduleDashboardHero{min-height:330px!important;height:40dvh!important;max-height:390px!important;}
  .moduleDashboardHeroContent{bottom:14px!important;}
  .moduleDashboardHeroContent h1{font-size:clamp(31px,8vw,43px)!important;}
  .moduleDashboardHeroContent p{font-size:13px!important;padding-top:8px!important;}
  .moduleDashboardHeroContent .courseIntroStartBtn{height:50px!important;margin-top:12px!important;}
  .premiumModuleGrid{padding-top:10px!important;gap:10px!important;}
  .premiumModuleGrid .premiumDayCard,.moduleDashboardScreen .moduleImageCard{height:86px!important;min-height:86px!important;}
}

.aiPraxisScreen .iconBtn,
.rdPraxisDashboard .iconBtn,
.rdPraxisToolPage .iconBtn,
.moduleDashboardScreen .iconBtn,
.moduleDashboardScreen .menuBtn{
  width:36px!important;
  height:36px!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.aiPraxisScreen .iconBtn svg,
.rdPraxisDashboard .iconBtn svg,
.rdPraxisToolPage .iconBtn svg,
.moduleDashboardScreen .iconBtn svg,
.moduleDashboardScreen .menuBtn svg{
  width:22px!important;
  height:22px!important;
  stroke-width:2.15!important;
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.72))!important;
}

/* Praxis dashboard: level circle slightly lower and bigger, but outer ring more elegant/thin */
.aiPraxisScreen.rdPraxisDashboard{
  padding-top:max(42px,calc(var(--sat) + 38px))!important;
}
.rdPraxisShell{gap:10px!important;}
.rdHeroPanel{
  height:258px!important;
  min-height:258px!important;
  margin-bottom:0!important;
}
.rdLevelOrbit{
  width:168px!important;
  height:168px!important;
  top:20px!important;
}
.rdLevelOrbit:before{
  background:conic-gradient(from 0deg,
    #fff1a2 0deg,
    #ddb64d calc(var(--level,1) * 36deg),
    rgba(255,255,255,.125) calc(var(--level,1) * 36deg),
    rgba(255,255,255,.125) 360deg)!important;
  opacity:.86!important;
  filter:drop-shadow(0 0 8px rgba(224,184,75,.20))!important;
}
.rdLevelOrbit:after{
  inset:8px!important;
  background:radial-gradient(circle at 50% 39%,#111 0,#050505 67%,#000 100%)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.045) inset,0 13px 24px rgba(0,0,0,.48)!important;
}
.rdLevelCore{inset:24px!important;}
.rdLevelCore span{font-size:10.5px!important;}
.rdLevelCore strong{font-size:52px!important;}
.rdLevelCore em{font-size:8.2px!important;}

/* Right stats: bigger, a touch left/up, centered to the level circle */
.rdStatsStackClean{
  top:47%!important;
  transform:translateY(-50%)!important;
  right:2px!important;
  width:108px!important;
  gap:9px!important;
  align-items:center!important;
  text-align:center!important;
}
.rdStatsStackClean .rdStat{min-height:31px!important;align-items:center!important;}
.rdStatsStackClean .rdStat small{font-size:8.4px!important;letter-spacing:.16em!important;line-height:1!important;}
.rdStatsStackClean .rdStat strong{font-size:16.2px!important;line-height:1.02!important;color:#fff!important;}

/* Metrics row follows lower because hero is taller; keep it strong and clean */
.rdPerformancePanel{
  margin-top:0!important;
  height:86px!important;
  min-height:86px!important;
  border-radius:20px!important;
}
.rdGaugeSvg{width:60px!important;height:35px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5.6!important;}
.rdGauge b{font-size:7px!important;letter-spacing:.15em!important;}
.rdGauge strong{font-size:21px!important;}

/* 7-day course dashboard: nav high, hero text balanced lower, day cards airier */
.moduleDashboardHero{
  min-height:370px!important;
  height:43dvh!important;
  max-height:430px!important;
  background-position:center 20%!important;
}
.moduleDashboardHeroContent{
  bottom:14px!important;
  left:22px!important;
  right:22px!important;
}
.moduleDashboardHeroContent .cleanTag{margin-bottom:12px!important;}
.moduleDashboardHeroContent h1{font-size:clamp(34px,8.4vw,47px)!important;line-height:.9!important;}
.moduleDashboardHeroContent p{padding-top:13px!important;line-height:1.46!important;}
.moduleDashboardHeroContent .courseIntroStartBtn{
  margin-top:22px!important;
  height:56px!important;
  border-radius:18px!important;
}
.premiumModuleGrid{
  padding-top:20px!important;
  gap:17px!important;
}
.premiumModuleGrid .premiumDayCard,
.moduleDashboardScreen .moduleImageCard{
  height:94px!important;
  min-height:94px!important;
  border-radius:19px!important;
}

@media (display-mode: standalone){

  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(40px,calc(var(--sat) + 36px))!important;}
  .rdHeroPanel{height:252px!important;min-height:252px!important;}
  .rdLevelOrbit{top:18px!important;}
}
@media(max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(38px,calc(var(--sat) + 34px))!important;}
  .rdPraxisShell{gap:8px!important;}
  .rdHeroPanel{height:226px!important;min-height:226px!important;}
  .rdLevelOrbit{width:154px!important;height:154px!important;top:14px!important;}
  .rdLevelOrbit:after{inset:7px!important;}
  .rdLevelCore{inset:22px!important;}
  .rdLevelCore strong{font-size:46px!important;}
  .rdStatsStackClean{top:47%!important;right:0!important;width:102px!important;gap:7px!important;}
  .rdStatsStackClean .rdStat small{font-size:7.5px!important;}
  .rdStatsStackClean .rdStat strong{font-size:14px!important;}
  .rdPerformancePanel{height:76px!important;min-height:76px!important;}
  .rdGaugeSvg{width:54px!important;height:32px!important;}
  .rdGauge strong{font-size:19px!important;}
  .moduleDashboardHero{min-height:348px!important;height:42dvh!important;}
  .moduleDashboardHeroContent{bottom:12px!important;}
  .moduleDashboardHeroContent .courseIntroStartBtn{margin-top:17px!important;height:52px!important;}
  .premiumModuleGrid{padding-top:17px!important;gap:14px!important;}
  .premiumModuleGrid .premiumDayCard,.moduleDashboardScreen .moduleImageCard{height:90px!important;min-height:90px!important;}
}

/* === RD PATCH V21: right stat simplified + clean score rows === */
.rdPraxisDashboard .rdStatsSingle{
  top:45%!important;
  right:10px!important;
  width:104px!important;
  gap:0!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.rdPraxisDashboard .rdStatsSingle .rdStat{
  min-height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:5px!important;
}
.rdPraxisDashboard .rdStatsSingle .rdStat small{
  font-size:9.4px!important;
  letter-spacing:.17em!important;
  line-height:1!important;
  color:#e6bf58!important;
}
.rdPraxisDashboard .rdStatsSingle .rdStat strong{
  font-size:22px!important;
  line-height:1!important;
  color:#fff!important;
}
.rdPraxisDashboard .rdScoreProgressPanel{
  background:rgba(0,0,0,.20)!important;
  border-color:rgba(255,255,255,.05)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.025) inset!important;
}
.rdPraxisDashboard .praxisProgressRow{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  height:42px!important;
  min-height:34px!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  padding:4px 8px!important;
  gap:10px!important;
}
.rdPraxisDashboard .praxisProgressRow + .praxisProgressRow{
  border-top:1px solid rgba(255,255,255,.055)!important;
}
.rdPraxisDashboard .praxisRowIcon{
  width:30px!important;
  height:30px!important;
  border-radius:10px!important;
  align-self:center!important;
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  transform:none!important;
  background:rgba(255,255,255,.065)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.rdPraxisDashboard .praxisRowIcon svg{
  width:15.5px!important;
  height:15.5px!important;
  display:block!important;
  margin:auto!important;
}
.rdPraxisDashboard .praxisRowText{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
}
.rdPraxisDashboard .praxisRowText strong{
  font-size:12.2px!important;
  line-height:1!important;
  letter-spacing:.105em!important;
}
.rdPraxisDashboard .praxisRowBar{
  height:3.5px!important;
  margin-top:7px!important;
}
.rdPraxisDashboard .praxisRowCount{
  align-self:center!important;
  justify-self:center!important;
  text-align:center!important;
}
.rdPraxisDashboard .praxisRowCount b{
  font-size:12.7px!important;
  line-height:1!important;
}
@media (max-height:780px){
  .rdPraxisDashboard .rdStatsSingle{right:6px!important;width:98px!important;top:44%!important;}
  .rdPraxisDashboard .rdStatsSingle .rdStat small{font-size:8.4px!important;}
  .rdPraxisDashboard .rdStatsSingle .rdStat strong{font-size:19px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:39px!important;min-height:39px!important;grid-template-columns:38px minmax(0,1fr) 38px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:28px!important;height:28px!important;}
  .rdPraxisDashboard .praxisRowIcon svg{width:14.5px!important;height:14.5px!important;}
}

/* === RD PATCH V22: requested final alignment/background fixes === */
/* Use the new dark female-head background for Praxis dashboard + Intensive Station */
.aiPraxisScreen.rdPraxisDashboard,
.rdPraxisHubPage,
.rdPraxisToolPage,
.rdPraxisToolPage.rdHoodToolPage{
  background:
    linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.62) 50%,#000 100%),
    url('assets/img/praxis-bg.jpeg') left top / cover no-repeat fixed!important;
}

/* Praxis dashboard: remove right-side Konstanz block completely, keep level centered and slightly lower */
.rdPraxisDashboard .rdStatsSingle,
.rdPraxisDashboard .rdStatsStackClean{
  display:none!important;
}
.rdHeroPanel{
  height:248px!important;
  min-height:248px!important;
}
.rdLevelOrbit{
  width:166px!important;
  height:166px!important;
  top:18px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
}
.rdLevelOrbit:before{
  filter:drop-shadow(0 0 7px rgba(224,184,75,.18))!important;
  opacity:.82!important;
}
.rdLevelOrbit:after{inset:8px!important;}
.rdLevelCore{inset:24px!important;}
.rdLevelCore strong{font-size:52px!important;}
.rdPerformancePanel{margin-top:0!important;}

/* Keep progress rows clean and centered after removing the outer row frames */
.rdPraxisDashboard .praxisRowIcon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  justify-self:center!important;
}
.rdPraxisDashboard .praxisRowIcon svg{
  display:block!important;
  margin:auto!important;
}
.rdPraxisDashboard .praxisProgressRow{
  align-items:center!important;
}

.moduleDashboardHero{
  min-height:430px!important;
  height:50dvh!important;
  max-height:500px!important;
  background-position:center 12%!important;
}
.moduleDashboardHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.12) 38%,rgba(0,0,0,.38) 70%,#050505 100%)!important;
}
.moduleDashboardHeroContent{
  bottom:30px!important;
  left:22px!important;
  right:22px!important;
}
.moduleDashboardHeroContent .cleanTag{
  margin-bottom:18px!important;
  transform:translateY(10px)!important;
}
.moduleDashboardHeroContent h1{
  margin-top:8px!important;
}
.moduleDashboardHeroContent p{
  padding-top:16px!important;
}
.moduleDashboardHeroContent .courseIntroStartBtn{
  margin-top:26px!important;
  margin-bottom:-8px!important;
  height:58px!important;
  position:relative!important;
  z-index:3!important;
}

/* Fine gold separators between Start and the days / between day cards */
.premiumModuleGrid{
  position:relative!important;
  padding-top:24px!important;
  gap:18px!important;
}
.premiumModuleGrid::before{
  content:'';
  display:block;
  width:1px;
  height:16px;
  margin:-18px auto 0;
  background:linear-gradient(180deg,rgba(221,182,78,0),rgba(221,182,78,.55),rgba(221,182,78,0));
}
.premiumModuleGrid .premiumDayCard,
.moduleDashboardScreen .moduleImageCard{
  position:relative!important;
}
.premiumModuleGrid .premiumDayCard + .premiumDayCard::marker{content:'';}
.premiumModuleGrid .premiumDayCard + .premiumDayCard{
  margin-top:2px!important;
}
.premiumModuleGrid .premiumDayCard + .premiumDayCard:before{
  content:''!important;
  position:absolute!important;
  left:50%!important;
  top:-20px!important;
  width:1px!important;
  height:18px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(180deg,rgba(221,182,78,0),rgba(221,182,78,.45),rgba(221,182,78,0))!important;
  z-index:5!important;
  border:0!important;
  box-shadow:none!important;
}

@media (display-mode: standalone){
  .moduleDashboardHero{
    min-height:440px!important;
    height:51dvh!important;
    max-height:510px!important;
  }
  .moduleDashboardHeroContent{
    bottom:34px!important;
  }
  .moduleDashboardHeroContent .cleanTag{
    transform:translateY(14px)!important;
  }
}
@media(max-height:780px){
  .rdHeroPanel{height:232px!important;min-height:232px!important;}
  .rdLevelOrbit{width:158px!important;height:158px!important;top:16px!important;}
  .moduleDashboardHero{min-height:405px!important;height:49dvh!important;max-height:470px!important;}
  .moduleDashboardHeroContent{bottom:24px!important;}
  .moduleDashboardHeroContent .courseIntroStartBtn{height:54px!important;margin-top:22px!important;}
  .premiumModuleGrid{padding-top:22px!important;gap:16px!important;}
}

/* === RD V25: Futuristic AI dashboard panel + correct Praxis/Intensiv background only === */
.aiPraxisScreen.rdPraxisDashboard,
.rdPraxisHubPage,
.rdPraxisToolPage,
.rdPraxisToolPage.rdHoodToolPage{
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.42) 46%,#000 100%),
    url('assets/img/praxis-bg.jpeg') left top / cover no-repeat fixed!important;
}

.rdHeroPanel.rdAiHeroPanel{
  height:284px!important;
  min-height:284px!important;
  position:relative!important;
  display:block!important;
  margin:0!important;
}
.rdAiHeroPanel .rdLevelOrbit,
.rdAiHeroPanel .rdStatsStack,
.rdAiHeroPanel .rdStatsStackClean,
.rdAiHeroPanel .rdStatsSingle{
  display:none!important;
}
.rdAiLevelPanel{
  position:absolute!important;
  right:4px!important;
  top:44px!important;
  width:58%!important;
  max-width:255px!important;
  min-height:178px!important;
  padding:18px 14px 14px!important;
  border:1px solid rgba(229,192,93,.34)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(7,7,7,.18),rgba(0,0,0,.68))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.055) inset,0 18px 38px rgba(0,0,0,.34),0 0 22px rgba(220,176,62,.10)!important;
  overflow:hidden!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.rdAiLevelPanel:before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(90deg,rgba(229,192,93,.0) 0%,rgba(229,192,93,.20) 50%,rgba(229,192,93,0) 100%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.055) 0 1px,transparent 1px 46px)!important;
  opacity:.35!important;
  pointer-events:none!important;
  transform:translateX(-70%)!important;
  animation:rdAiScan 4.2s ease-in-out infinite!important;
}
.rdAiLevelPanel:after{
  content:''!important;
  position:absolute!important;
  left:12px!important;right:12px!important;bottom:10px!important;height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(229,192,93,.55),transparent)!important;
  opacity:.7!important;
}
.rdAiPanelTop{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-areas:'label label' 'num word'!important;
  column-gap:12px!important;
  align-items:end!important;
}
.rdAiPanelTop span{
  grid-area:label!important;
  font-family:var(--font-c)!important;
  color:#e5c071!important;
  font-size:10px!important;
  letter-spacing:.18em!important;
  font-weight:900!important;
}
.rdAiPanelTop strong{
  grid-area:num!important;
  font-family:var(--font-d)!important;
  color:#f0c95f!important;
  font-size:58px!important;
  line-height:.82!important;
  text-shadow:0 0 18px rgba(229,192,93,.22)!important;
}
.rdAiPanelTop em{
  grid-area:word!important;
  color:#fff!important;
  font-family:var(--font-c)!important;
  font-style:normal!important;
  font-size:15px!important;
  letter-spacing:.12em!important;
  font-weight:900!important;
  padding-bottom:6px!important;
}
.rdAiPulseLine{
  position:relative!important;
  z-index:1!important;
  height:5px!important;
  margin:12px 0 13px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.13)!important;
  overflow:hidden!important;
}
.rdAiPulseLine i{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#a77822,#f3d36d,#fff0a8)!important;
  box-shadow:0 0 12px rgba(232,194,84,.30)!important;
  animation:rdAiPulse 2.4s ease-in-out infinite!important;
}
.rdAiDataGrid{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.rdAiDataGrid div{
  min-height:47px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
}
.rdAiDataGrid div+div{border-left:1px solid rgba(255,255,255,.12)!important;}
.rdAiDataGrid small{
  color:#e5c071!important;
  font-family:var(--font-c)!important;
  font-size:6.9px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  font-weight:900!important;
}
.rdAiDataGrid b{
  color:#fff!important;
  font-family:var(--font-d)!important;
  font-size:20px!important;
  line-height:1!important;
}
.rdAiTrend{
  position:relative!important;
  z-index:1!important;
  margin-top:11px!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:end!important;
  gap:2px 10px!important;
}
.rdAiTrend span{
  color:#e5c071!important;
  font-family:var(--font-c)!important;
  font-size:10px!important;
  letter-spacing:.17em!important;
  font-weight:900!important;
}
.rdAiTrend strong{
  grid-row:1 / span 2!important;
  grid-column:2!important;
  color:#f4d36b!important;
  font-family:var(--font-d)!important;
  font-size:31px!important;
  line-height:.92!important;
}
.rdAiTrend small{
  color:rgba(255,255,255,.72)!important;
  font-family:var(--font-c)!important;
  font-size:7px!important;
  letter-spacing:.13em!important;
}
.rdPerformancePanel{
  margin-top:2px!important;
}
.rdDashboardActions .rdMainAction{
  font-size:12.8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
@keyframes rdAiScan{0%,100%{transform:translateX(-78%);opacity:.18;}50%{transform:translateX(78%);opacity:.42;}}
@keyframes rdAiPulse{0%,100%{filter:brightness(1);opacity:.86;}50%{filter:brightness(1.28);opacity:1;}}

@media(max-height:780px){
  .rdHeroPanel.rdAiHeroPanel{height:252px!important;min-height:252px!important;}
  .rdAiLevelPanel{top:30px!important;right:2px!important;width:57%!important;min-height:166px!important;padding:15px 12px 12px!important;}
  .rdAiPanelTop strong{font-size:50px!important;}
  .rdAiPanelTop em{font-size:13px!important;}
  .rdAiDataGrid div{min-height:41px!important;}
  .rdAiDataGrid b{font-size:17px!important;}
  .rdAiTrend strong{font-size:27px!important;}
}

@media(display-mode:standalone){
  .rdHeroPanel.rdAiHeroPanel{height:274px!important;min-height:274px!important;}
  .rdAiLevelPanel{top:40px!important;}
}

/* === RD V26: exact AI panel request — new bg, score only top, one-screen, animated metrics === */
.aiPraxisScreen.rdPraxisDashboard,
.rdPraxisHubPage,
.rdPraxisToolPage,
.rdPraxisToolPage.rdHoodToolPage{
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.36) 44%,rgba(0,0,0,.92) 82%,#000 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.aiPraxisScreen.rdPraxisDashboard{
  height:100svh!important;
  min-height:100svh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 54px) 12px max(calc(var(--sab) + 14px),18px)!important;
}
.rdPraxisShell{
  height:100%!important;
  max-height:calc(100svh - var(--sab) - 72px)!important;
  gap:9px!important;
  justify-content:flex-start!important;
}


/* Top AI Anzeige: kein Kreis, nur Disziplin-Score + aktive Tage */
.rdHeroPanel.rdAiHeroPanel{
  height:246px!important;
  min-height:246px!important;
  margin:0!important;
}
.rdAiLevelPanel{
  top:34px!important;
  right:2px!important;
  width:58%!important;
  max-width:250px!important;
  min-height:176px!important;
  padding:17px 14px 14px!important;
  border:1px solid rgba(229,192,93,.34)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,rgba(6,6,6,.18),rgba(0,0,0,.66))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.06) inset,0 22px 40px rgba(0,0,0,.36),0 0 22px rgba(220,176,62,.10)!important;
}
.rdAiLevelPanel:before{
  opacity:.44!important;
  animation:rdAiScan 3.8s ease-in-out infinite!important;
}
.rdAiLevelPanel:after{
  bottom:9px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(229,192,93,.72),transparent)!important;
}
.rdAiPanelTop strong{font-size:55px!important;}
.rdAiPanelTop em{font-size:14px!important;}
.rdAiPulseLine{height:4px!important;margin:11px 0 12px!important;}
.rdAiDataGrid.rdAiDataGridTwo{
  grid-template-columns:1fr 1fr!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  border-bottom:0!important;
}
.rdAiDataGrid.rdAiDataGridTwo div{min-height:52px!important;}
.rdAiDataGrid.rdAiDataGridTwo small{font-size:7.4px!important;letter-spacing:.12em!important;text-align:center!important;}
.rdAiDataGrid.rdAiDataGridTwo b{font-size:25px!important;color:#f1cf70!important;}

/* Leistungsanzeigen animieren sichtbar von 0 auf Ist-Stand */
.rdPerformancePanel{
  height:82px!important;
  min-height:82px!important;
  margin-top:-4px!important;
  border-radius:20px!important;
}
.rdGaugeValue{
  stroke-dasharray:100!important;
  animation:rdGaugeCountUp 1.05s cubic-bezier(.18,.88,.22,1) both!important;
}
.rdGaugeSvg{width:58px!important;height:34px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:5.8!important;}
.rdGauge b{font-size:7px!important;}
.rdGauge strong{font-size:21px!important;}
@keyframes rdGaugeCountUp{from{stroke-dashoffset:100;}to{stroke-dashoffset:calc(100 - var(--v));}}

/* Unten keinen Disziplin-Score mehr anzeigen — nur die Fortschrittsliste */
.rdScoreDrawer{border-radius:21px!important;}
.rdScoreHeader{display:none!important;}
.rdScoreProgressPanel{
  margin:0!important;
  padding:10px 12px!important;
  gap:7px!important;
  border:0!important;
  background:rgba(0,0,0,.46)!important;
  box-shadow:none!important;
}
.rdPraxisDashboard .praxisProgressRow{
  height:44px!important;
  min-height:44px!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  gap:10px!important;
  padding:5px 10px!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  border-radius:0!important;
  background:transparent!important;
}
.rdPraxisDashboard .praxisProgressRow:last-child{border-bottom:0!important;}
.rdPraxisDashboard .praxisRowIcon{width:34px!important;height:34px!important;border-radius:11px!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:18px!important;height:18px!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:13px!important;letter-spacing:.105em!important;}
.rdPraxisDashboard .praxisRowBar{height:4px!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:13.6px!important;}
.rdDashboardActions{gap:12px!important;margin-top:0!important;}
.rdDashboardActions .rdMainAction{
  height:52px!important;
  min-height:52px!important;
  border-radius:18px!important;
  font-size:12.8px!important;
  letter-spacing:.125em!important;
  display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;
}

/* Kompaktmodus für kleinere Browser-Höhen */
@media(max-height:800px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:calc(var(--sab) + 50px)!important;padding-bottom:max(calc(var(--sab) + 12px),14px)!important;}
  .rdPraxisShell{gap:7px!important;max-height:calc(100svh - var(--sab) - 64px)!important;}
  .rdHeroPanel.rdAiHeroPanel{height:220px!important;min-height:220px!important;}
  .rdAiLevelPanel{top:25px!important;min-height:160px!important;padding:14px 12px 12px!important;}
  .rdAiPanelTop strong{font-size:48px!important;}
  .rdAiPanelTop em{font-size:12px!important;}
  .rdAiDataGrid.rdAiDataGridTwo div{min-height:44px!important;}
  .rdAiDataGrid.rdAiDataGridTwo b{font-size:21px!important;}
  .rdPerformancePanel{height:74px!important;min-height:74px!important;}
  .rdGaugeSvg{width:52px!important;height:31px!important;}.rdGauge strong{font-size:19px!important;}.rdGauge b{font-size:6.5px!important;}
  .rdScoreProgressPanel{padding:8px 10px!important;gap:5px!important;}
  .rdPraxisDashboard .praxisProgressRow{height:39px!important;min-height:39px!important;grid-template-columns:38px minmax(0,1fr) 38px!important;}
  .rdPraxisDashboard .praxisRowIcon{width:30px!important;height:30px!important;}.rdPraxisDashboard .praxisRowIcon svg{width:16px!important;height:16px!important;}
  .rdPraxisDashboard .praxisRowText strong{font-size:11.6px!important;}.rdPraxisDashboard .praxisRowCount b{font-size:12px!important;}
  .rdDashboardActions .rdMainAction{height:46px!important;min-height:46px!important;font-size:11.1px!important;}
}

@media(display-mode:standalone){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:calc(var(--sat) + 54px)!important;}
  .rdHeroPanel.rdAiHeroPanel{height:238px!important;min-height:238px!important;}
}

/* === RD V27: rebuilt praxis dashboard proportions, glow frames + visible animations === */
.aiPraxisScreen.rdPraxisDashboard,
.rdPraxisHubPage,
.rdPraxisToolPage,
.rdPraxisToolPage.rdHoodToolPage{
  background:
    radial-gradient(circle at 42% 12%, rgba(219,178,64,.15) 0%, rgba(219,178,64,.06) 28%, transparent 52%),
    linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.30) 42%,rgba(0,0,0,.84) 74%,#000 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.aiPraxisScreen.rdPraxisDashboard{
  height:100svh!important;
  min-height:100svh!important;
  overflow:hidden!important;
  padding:max(58px,calc(var(--sat) + 48px)) 12px max(16px,calc(var(--sab) + 16px))!important;
}

.rdPraxisShell{
  height:100%!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:minmax(285px,1fr) 96px minmax(275px,auto) 66px!important;
  gap:14px!important;
  align-content:end!important;
  justify-content:stretch!important;
}
.rdHeroPanel.rdAiHeroPanel{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  position:relative!important;
}
.rdHeroPanel.rdAiHeroPanel:before{
  content:"";position:absolute;left:-18px;top:18px;width:53%;height:84%;pointer-events:none;
  background:radial-gradient(ellipse at left center, rgba(232,194,84,.11), transparent 66%);
  opacity:.8;
}
.rdAiLevelPanel{
  top:58px!important;
  right:2px!important;
  left:auto!important;
  width:59%!important;
  max-width:292px!important;
  min-height:206px!important;
  padding:21px 18px 17px!important;
  border:1px solid rgba(232,194,84,.43)!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,rgba(12,12,10,.34),rgba(0,0,0,.78))!important;
  box-shadow:
    0 0 0 1px rgba(255,231,151,.08) inset,
    0 0 28px rgba(225,180,62,.23),
    0 0 58px rgba(225,180,62,.09),
    0 24px 54px rgba(0,0,0,.50)!important;
  overflow:hidden!important;
  animation:rdFrameBreath 4.4s ease-in-out infinite!important;
}
.rdAiLevelPanel:before{
  content:""!important;position:absolute!important;inset:-35%!important;opacity:.35!important;pointer-events:none!important;
  background:linear-gradient(115deg,transparent 18%,rgba(255,224,139,.33) 35%,transparent 48%,transparent 100%)!important;
  animation:rdAiScan 4.2s ease-in-out infinite!important;
}
.rdAiLevelPanel:after{
  content:""!important;position:absolute!important;inset:0!important;border-radius:24px!important;pointer-events:none!important;
  background:linear-gradient(90deg,transparent,rgba(232,194,84,.42),transparent) 0 100%/220% 1px no-repeat,
             linear-gradient(180deg,transparent,rgba(232,194,84,.26),transparent) 0 0/1px 220% no-repeat!important;
  animation:rdPanelFlow 5.2s linear infinite!important;
}
.rdAiPanelTop{position:relative!important;z-index:2!important;grid-template-columns:auto 1fr!important;column-gap:14px!important;align-items:end!important;}
.rdAiPanelTop span{font-size:10px!important;letter-spacing:.18em!important;}
.rdAiPanelTop strong{font-size:67px!important;line-height:.82!important;text-shadow:none!important;filter:none!important;color:#f1cf70!important;}
.rdAiPanelTop em{font-size:19px!important;line-height:1!important;text-shadow:none!important;filter:none!important;color:#fff!important;letter-spacing:.13em!important;align-self:center!important;}
.rdAiPulseLine{position:relative!important;z-index:2!important;height:5px!important;margin:15px 0 15px!important;background:rgba(255,255,255,.12)!important;border-radius:999px!important;overflow:hidden!important;}
.rdAiPulseLine i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#c99d3e,#f4d979)!important;box-shadow:0 0 16px rgba(232,194,84,.55)!important;transform-origin:left!important;animation:rdBarGrow 1.25s cubic-bezier(.18,.88,.22,1) both!important;}
.rdAiDataGrid.rdAiDataGridTwo{position:relative!important;z-index:2!important;grid-template-columns:1fr 1fr!important;border-top:1px solid rgba(255,255,255,.13)!important;}
.rdAiDataGrid.rdAiDataGridTwo div{min-height:61px!important;}
.rdAiDataGrid.rdAiDataGridTwo small{font-size:8.1px!important;letter-spacing:.13em!important;}
.rdAiDataGrid.rdAiDataGridTwo b{font-size:29px!important;text-shadow:none!important;color:#f1cf70!important;}

.rdPerformancePanel{
  height:96px!important;
  min-height:96px!important;
  margin:0!important;
  border-radius:21px!important;
  border:1px solid rgba(232,194,84,.40)!important;
  background:rgba(0,0,0,.64)!important;
  box-shadow:0 0 26px rgba(225,180,62,.18),0 0 0 1px rgba(255,231,151,.055) inset,0 18px 38px rgba(0,0,0,.48)!important;
}
.rdPerformancePanel .rdGauge{animation:rdMetricIn .75s ease-out both!important;}
.rdPerformancePanel .rdGauge:nth-child(2){animation-delay:.08s!important}.rdPerformancePanel .rdGauge:nth-child(3){animation-delay:.16s!important}.rdPerformancePanel .rdGauge:nth-child(4){animation-delay:.24s!important}
.rdGaugeSvg{width:66px!important;height:39px!important;}
.rdGaugeTrack,.rdGaugeValue{stroke-width:6.2!important;}
.rdGaugeValue{stroke-dasharray:100!important;animation:rdGaugeCountUp 1.2s cubic-bezier(.18,.88,.22,1) both!important;}
.rdGauge b{font-size:8px!important;letter-spacing:.15em!important;}
.rdGauge strong{font-size:25px!important;line-height:.9!important;}

.rdScoreDrawer.rdScoreDrawerFixed{
  border:1px solid rgba(232,194,84,.38)!important;
  border-radius:22px!important;
  background:rgba(0,0,0,.56)!important;
  box-shadow:0 0 26px rgba(225,180,62,.17),0 0 0 1px rgba(255,231,151,.045) inset,0 18px 42px rgba(0,0,0,.45)!important;
  overflow:hidden!important;
}
.rdScoreProgressPanel{height:100%!important;padding:14px 17px!important;gap:0!important;background:transparent!important;}
.rdPraxisDashboard .praxisProgressRow{
  height:50px!important;min-height:50px!important;
  grid-template-columns:48px minmax(0,1fr) 44px!important;
  padding:6px 0!important;gap:12px!important;
  border-bottom:1px solid rgba(255,255,255,.075)!important;
}
.rdPraxisDashboard .praxisProgressRow:hover{background:rgba(255,255,255,.025)!important;}
.rdPraxisDashboard .praxisRowIcon{width:39px!important;height:39px!important;border-radius:12px!important;background:rgba(255,255,255,.07)!important;border:1px solid rgba(232,194,84,.20)!important;box-shadow:0 0 14px rgba(225,180,62,.10)!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:20px!important;height:20px!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:14.4px!important;letter-spacing:.11em!important;}
.rdPraxisDashboard .praxisRowBar{height:4.5px!important;background:rgba(255,255,255,.11)!important;}
.rdPraxisDashboard .praxisRowBar i{transform-origin:left!important;animation:rdBarGrow 1.15s cubic-bezier(.18,.88,.22,1) both!important;}
.rdPraxisDashboard .praxisProgressRow:nth-child(2) .praxisRowBar i{animation-delay:.08s!important}.rdPraxisDashboard .praxisProgressRow:nth-child(3) .praxisRowBar i{animation-delay:.16s!important}.rdPraxisDashboard .praxisProgressRow:nth-child(4) .praxisRowBar i{animation-delay:.24s!important}.rdPraxisDashboard .praxisProgressRow:nth-child(5) .praxisRowBar i{animation-delay:.32s!important}
.rdPraxisDashboard .praxisRowCount b{font-size:14.8px!important;}

.rdDashboardActions{height:66px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;margin-top:0!important;align-items:end!important;}
.rdDashboardActions .rdMainAction{
  height:64px!important;min-height:64px!important;border-radius:20px!important;
  font-size:14px!important;letter-spacing:.14em!important;
  box-shadow:0 0 26px rgba(225,180,62,.22),0 0 0 1px rgba(255,231,151,.065) inset!important;
}
.rdDashboardActions .rdIntensiveAction{border:1px solid rgba(232,194,84,.45)!important;box-shadow:0 0 22px rgba(225,180,62,.18),0 0 0 1px rgba(255,231,151,.05) inset!important;}

@keyframes rdBarGrow{from{transform:scaleX(0);opacity:.35;}to{transform:scaleX(1);opacity:1;}}
@keyframes rdMetricIn{from{transform:translateY(8px);opacity:.15;}to{transform:translateY(0);opacity:1;}}
@keyframes rdFrameBreath{0%,100%{box-shadow:0 0 0 1px rgba(255,231,151,.08) inset,0 0 24px rgba(225,180,62,.16),0 0 52px rgba(225,180,62,.07),0 24px 54px rgba(0,0,0,.50);}50%{box-shadow:0 0 0 1px rgba(255,231,151,.13) inset,0 0 34px rgba(225,180,62,.27),0 0 72px rgba(225,180,62,.12),0 24px 54px rgba(0,0,0,.50);}}
@keyframes rdPanelFlow{0%{background-position:-120% 100%,0 -120%;}100%{background-position:120% 100%,0 120%;}}

@media(max-height:800px){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(52px,calc(var(--sat) + 42px))!important;padding-bottom:max(12px,calc(var(--sab) + 12px))!important;}
  .rdPraxisShell{grid-template-rows:minmax(244px,1fr) 84px minmax(242px,auto) 56px!important;gap:10px!important;}
  .rdAiLevelPanel{top:40px!important;width:58%!important;min-height:176px!important;padding:16px 14px 13px!important;border-radius:21px!important;}
  .rdAiPanelTop strong{font-size:55px!important}.rdAiPanelTop em{font-size:15px!important}.rdAiPulseLine{margin:11px 0!important}.rdAiDataGrid.rdAiDataGridTwo div{min-height:48px!important}.rdAiDataGrid.rdAiDataGridTwo b{font-size:23px!important}.rdAiDataGrid.rdAiDataGridTwo small{font-size:7px!important;}
  .rdPerformancePanel{height:84px!important;min-height:84px!important;border-radius:19px!important;}
  .rdGaugeSvg{width:56px!important;height:33px!important}.rdGauge strong{font-size:21px!important}.rdGauge b{font-size:6.8px!important}
  .rdScoreProgressPanel{padding:10px 14px!important}.rdPraxisDashboard .praxisProgressRow{height:43px!important;min-height:43px!important;grid-template-columns:40px minmax(0,1fr) 39px!important}.rdPraxisDashboard .praxisRowIcon{width:33px!important;height:33px!important}.rdPraxisDashboard .praxisRowIcon svg{width:17px!important;height:17px!important}.rdPraxisDashboard .praxisRowText strong{font-size:12.1px!important}.rdPraxisDashboard .praxisRowCount b{font-size:12.8px!important}
  .rdDashboardActions{height:56px!important;gap:14px!important}.rdDashboardActions .rdMainAction{height:54px!important;min-height:54px!important;font-size:11.8px!important;}
}
@media(display-mode:standalone){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:max(58px,calc(var(--sat) + 48px))!important;}
  .rdAiLevelPanel{top:54px!important;}
}

/* === RD V28: Safari + Home-Screen viewport harmonization ===
   Goal: same visual proportions in iOS browser and added-to-home-screen PWA.
   Uses dynamic viewport rows instead of pixel-tuned vertical offsets. */
.aiPraxisScreen.rdPraxisDashboard{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding-top:clamp(54px, calc(env(safe-area-inset-top,0px) + 6.4dvh), 72px)!important;
  padding-left:12px!important;
  padding-right:12px!important;
  padding-bottom:clamp(14px, calc(env(safe-area-inset-bottom,0px) + 1.7dvh), 28px)!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:center!important;
}



.rdPraxisShell{
  width:100%!important;
  max-width:430px!important;
  height:100%!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:
    clamp(232px, 35.5dvh, 304px)
    clamp(78px, 10.8dvh, 98px)
    minmax(236px, 1fr)
    clamp(54px, 7.4dvh, 66px)!important;
  gap:clamp(9px, 1.35dvh, 14px)!important;
  align-content:stretch!important;
  justify-content:stretch!important;
}
.rdHeroPanel.rdAiHeroPanel{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  position:relative!important;
  overflow:visible!important;
}
.rdAiLevelPanel{
  top:clamp(34px, 6.2dvh, 62px)!important;
  right:2px!important;
  left:auto!important;
  width:min(60%, 296px)!important;
  min-height:clamp(174px, 24.5dvh, 218px)!important;
  padding:clamp(15px, 2.2dvh, 22px) clamp(14px, 2.1dvh, 19px) clamp(13px, 1.9dvh, 18px)!important;
  border-radius:clamp(20px, 3dvh, 25px)!important;
  border-color:rgba(232,194,84,.46)!important;
  box-shadow:
    0 0 0 1px rgba(255,231,151,.09) inset,
    0 0 30px rgba(225,180,62,.24),
    0 0 64px rgba(225,180,62,.10),
    0 22px 50px rgba(0,0,0,.52)!important;
}
.rdAiPanelTop strong{font-size:clamp(50px, 8.1dvh, 72px)!important;filter:none!important;text-shadow:none!important;}
.rdAiPanelTop em{font-size:clamp(14px, 2.25dvh, 20px)!important;filter:none!important;text-shadow:none!important;}
.rdAiPulseLine{height:5px!important;margin:clamp(10px,1.55dvh,16px) 0!important;}
.rdAiDataGrid.rdAiDataGridTwo div{min-height:clamp(46px, 6.9dvh, 62px)!important;}
.rdAiDataGrid.rdAiDataGridTwo b{font-size:clamp(22px, 3.7dvh, 30px)!important;}
.rdAiDataGrid.rdAiDataGridTwo small{font-size:clamp(6.8px, .95dvh, 8.2px)!important;}
.rdPerformancePanel{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:clamp(18px,2.6dvh,22px)!important;
  border-color:rgba(232,194,84,.42)!important;
  box-shadow:0 0 28px rgba(225,180,62,.19),0 0 0 1px rgba(255,231,151,.06) inset,0 18px 38px rgba(0,0,0,.48)!important;
}
.rdGaugeSvg{width:clamp(54px,7.6dvh,68px)!important;height:clamp(31px,4.5dvh,40px)!important;}
.rdGauge b{font-size:clamp(6.5px,.9dvh,8px)!important;}
.rdGauge strong{font-size:clamp(19px,3.1dvh,26px)!important;}
.rdScoreDrawer.rdScoreDrawerFixed{
  min-height:0!important;
  height:100%!important;
  border-radius:clamp(20px,2.9dvh,23px)!important;
}
.rdScoreProgressPanel{
  height:100%!important;
  min-height:0!important;
  padding:clamp(9px,1.45dvh,14px) clamp(12px,2dvh,17px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:0!important;
}
.rdPraxisDashboard .praxisProgressRow{
  flex:1 1 0!important;
  height:auto!important;
  min-height:0!important;
  max-height:56px!important;
  grid-template-columns:clamp(39px,5.5dvh,48px) minmax(0,1fr) clamp(38px,5.2dvh,44px)!important;
  gap:clamp(9px,1.4dvh,12px)!important;
  padding:clamp(4px,.85dvh,7px) 0!important;
  align-items:center!important;
}
.rdPraxisDashboard .praxisRowIcon{
  width:clamp(32px,4.8dvh,40px)!important;
  height:clamp(32px,4.8dvh,40px)!important;
  border-radius:12px!important;
}
.rdPraxisDashboard .praxisRowIcon svg{width:clamp(16px,2.45dvh,20px)!important;height:clamp(16px,2.45dvh,20px)!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:clamp(12px,1.68dvh,14.5px)!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:clamp(12.5px,1.8dvh,15px)!important;}
.rdPraxisDashboard .praxisRowBar{height:clamp(3.5px,.55dvh,4.5px)!important;}
.rdDashboardActions{
  height:auto!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:clamp(12px,2.15dvh,18px)!important;
  align-items:stretch!important;
  margin:0!important;
}
.rdDashboardActions .rdMainAction{
  height:100%!important;
  min-height:0!important;
  border-radius:clamp(17px,2.7dvh,21px)!important;
  font-size:clamp(11.8px,1.75dvh,14px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
/* Disable the older standalone-only offset so browser + PWA use the same geometry. */
@media(display-mode:standalone){
  .aiPraxisScreen.rdPraxisDashboard{padding-top:clamp(54px, calc(env(safe-area-inset-top,0px) + 6.4dvh), 72px)!important;}
  .rdAiLevelPanel{top:clamp(34px, 6.2dvh, 62px)!important;}
}
@supports(height:100svh){
  .aiPraxisScreen.rdPraxisDashboard{min-height:100svh!important;}
}
/* preserve motion but keep it smooth and visible after route render */
.rdAiPulseLine i,
.rdPraxisDashboard .praxisRowBar i{transform-origin:left center!important;animation:rdBarGrow 1.15s cubic-bezier(.18,.88,.22,1) both!important;}
.rdPerformancePanel .rdGaugeValue{animation:rdGaugeCountUp 1.15s cubic-bezier(.18,.88,.22,1) both!important;}

/* === RD V29 FINAL: stable iOS viewport + clickable nav + no vibration ===
   Fixes: Home-Screen/Safari jitter, nav hit targets, keeps one-screen layout. */
.aiPraxisScreen.rdPraxisDashboard{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  transform:none!important;
  transition:opacity .18s ease!important;
  padding-top:clamp(56px, calc(env(safe-area-inset-top,0px) + 6.0svh), 72px)!important;
  padding-bottom:clamp(12px, calc(env(safe-area-inset-bottom,0px) + 1.4svh), 24px)!important;
  padding-left:12px!important;
  padding-right:12px!important;
  overscroll-behavior:none!important;
  touch-action:manipulation!important;
}
.aiPraxisScreen.rdPraxisDashboard.rd-screen-enter{
  opacity:1!important;
  transform:none!important;
}




.rdPraxisShell{
  height:100%!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:
    clamp(230px, 35svh, 300px)
    clamp(78px, 10.7svh, 96px)
    minmax(236px, 1fr)
    clamp(54px, 7.4svh, 66px)!important;
  gap:clamp(9px, 1.35svh, 14px)!important;
  transform:none!important;
  will-change:auto!important;
}
.rdHeroPanel.rdAiHeroPanel{
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
  transform:none!important;
  will-change:auto!important;
}
.rdAiLevelPanel{
  top:clamp(34px, 6svh, 60px)!important;
  right:2px!important;
  width:min(60%, 296px)!important;
  min-height:clamp(174px, 24svh, 218px)!important;
  box-shadow:
    0 0 0 1px rgba(255,231,151,.09) inset,
    0 0 24px rgba(225,180,62,.22),
    0 0 56px rgba(225,180,62,.10),
    0 22px 46px rgba(0,0,0,.52)!important;
  animation:none!important;
  transform:translateZ(0)!important;
  will-change:auto!important;
}
.rdAiLevelPanel:before{
  animation:none!important;
  transform:none!important;
  opacity:.16!important;
  pointer-events:none!important;
}
.rdAiLevelPanel:after{
  animation:none!important;
  pointer-events:none!important;
}
.rdAiPulseLine i{
  animation:rdBarGrow 1.05s cubic-bezier(.18,.88,.22,1) both!important;
}
.rdPerformancePanel{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  box-shadow:0 0 24px rgba(225,180,62,.18),0 0 0 1px rgba(255,231,151,.06) inset,0 18px 38px rgba(0,0,0,.48)!important;
  transform:none!important;
}
.rdScoreDrawer.rdScoreDrawerFixed{
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
}
.rdScoreProgressPanel{
  height:100%!important;
  min-height:0!important;
  justify-content:space-between!important;
  overflow:hidden!important;
}
.rdPraxisDashboard .praxisProgressRow{
  max-height:56px!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
  touch-action:manipulation!important;
}
.rdDashboardActions{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  align-items:stretch!important;
}
.rdDashboardActions .rdMainAction{
  height:100%!important;
  min-height:0!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
@media(display-mode:standalone){
  .aiPraxisScreen.rdPraxisDashboard{
    height:100svh!important;
    min-height:100svh!important;
    max-height:100svh!important;
    padding-top:clamp(56px, calc(env(safe-area-inset-top,0px) + 6.0svh), 72px)!important;
  }

  .rdAiLevelPanel{top:clamp(34px, 6svh, 60px)!important;}
}
@supports(height:100dvh){
  /* Keep svh on this screen deliberately: dvh can fluctuate while iOS browser chrome settles. */
  .aiPraxisScreen.rdPraxisDashboard{height:100svh!important;min-height:100svh!important;max-height:100svh!important;}
}

/* === RD V30 FINAL: iOS PWA stability + premium layout polish ===
   - removes unstable infinite dashboard motion that caused PWA vibration
   - keeps only safe one-time bar/gauge animations
   - restores reliable tap targets and blocks text-selection handles
   - polishes spacing/glow without changing data/routes */
.aiPraxisScreen.rdPraxisDashboard,
.aiPraxisScreen.rdPraxisDashboard *{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none!important;
  -webkit-tap-highlight-color:transparent!important;
}
.aiPraxisScreen.rdPraxisDashboard{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  overscroll-behavior:none!important;
  touch-action:manipulation!important;
  transform:none!important;
  will-change:auto!important;
  contain:layout paint style!important;
  padding-top:clamp(56px, calc(env(safe-area-inset-top,0px) + 5.6svh), 70px)!important;
  padding-bottom:clamp(12px, calc(env(safe-area-inset-bottom,0px) + 1.35svh), 22px)!important;
  padding-left:12px!important;
  padding-right:12px!important;
}
.aiPraxisScreen.rdPraxisDashboard.rd-screen-enter{opacity:1!important;transform:none!important;transition:none!important;}




.rdPraxisShell{
  width:100%!important;
  max-width:430px!important;
  height:100%!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:clamp(230px,34.2svh,294px) clamp(78px,10.4svh,94px) minmax(238px,1fr) clamp(56px,7.2svh,64px)!important;
  gap:clamp(10px,1.42svh,14px)!important;
  align-content:stretch!important;
  transform:none!important;
  will-change:auto!important;
}
.rdHeroPanel.rdAiHeroPanel{height:auto!important;min-height:0!important;overflow:visible!important;transform:none!important;will-change:auto!important;}
.rdAiLevelPanel{
  top:clamp(32px,5.7svh,56px)!important;
  right:2px!important;
  width:min(61%,298px)!important;
  min-height:clamp(174px,23.8svh,214px)!important;
  padding:clamp(15px,2.05svh,20px) clamp(15px,2svh,19px) clamp(13px,1.8svh,17px)!important;
  border-radius:clamp(21px,2.8svh,25px)!important;
  border:1px solid rgba(232,194,84,.48)!important;
  background:linear-gradient(135deg,rgba(10,9,6,.58),rgba(0,0,0,.86))!important;
  box-shadow:0 0 0 1px rgba(255,231,151,.09) inset,0 0 26px rgba(225,180,62,.22),0 0 56px rgba(225,180,62,.10),0 22px 48px rgba(0,0,0,.54)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
  contain:layout paint!important;
}
.rdAiLevelPanel:before{animation:none!important;transform:none!important;opacity:.12!important;pointer-events:none!important;}
.rdAiLevelPanel:after{animation:none!important;pointer-events:none!important;opacity:.55!important;}
.rdAiPanelTop strong{font-size:clamp(56px,8.2svh,72px)!important;text-shadow:none!important;filter:none!important;}
.rdAiPanelTop em{font-size:clamp(15px,2.15svh,19px)!important;text-shadow:none!important;filter:none!important;}
.rdAiPanelTop span{font-size:clamp(9px,1.12svh,11px)!important;}
.rdAiPulseLine{height:5px!important;margin:clamp(10px,1.45svh,14px) 0!important;background:rgba(255,255,255,.13)!important;}
.rdAiPulseLine i{animation:rdBarGrow .9s cubic-bezier(.18,.88,.22,1) both!important;filter:none!important;}
.rdAiDataGrid.rdAiDataGridTwo div{min-height:clamp(47px,6.6svh,59px)!important;}
.rdAiDataGrid.rdAiDataGridTwo small{font-size:clamp(6.9px,.92svh,8px)!important;}
.rdAiDataGrid.rdAiDataGridTwo b{font-size:clamp(24px,3.6svh,30px)!important;color:#f1cf70!important;}
.rdPerformancePanel{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:clamp(19px,2.5svh,22px)!important;
  border:1px solid rgba(232,194,84,.44)!important;
  background:rgba(2,2,2,.74)!important;
  box-shadow:0 0 22px rgba(225,180,62,.17),0 0 0 1px rgba(255,231,151,.06) inset,0 18px 38px rgba(0,0,0,.48)!important;
  transform:none!important;
  contain:layout paint!important;
}
.rdPerformancePanel .rdGauge{animation:none!important;transform:none!important;}
.rdGaugeSvg{width:clamp(55px,7.2svh,64px)!important;height:clamp(32px,4.25svh,38px)!important;}
.rdGauge b{font-size:clamp(6.4px,.86svh,7.5px)!important;}
.rdGauge strong{font-size:clamp(20px,3.0svh,25px)!important;}
.rdPerformancePanel .rdGaugeValue{animation:rdGaugeCountUp .95s cubic-bezier(.18,.88,.22,1) both!important;}
.rdScoreDrawer.rdScoreDrawerFixed{
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  border:1px solid rgba(232,194,84,.40)!important;
  border-radius:clamp(21px,2.8svh,24px)!important;
  background:rgba(2,2,2,.74)!important;
  box-shadow:0 0 23px rgba(225,180,62,.16),0 0 0 1px rgba(255,231,151,.055) inset,0 20px 42px rgba(0,0,0,.50)!important;
  contain:layout paint!important;
}
.rdScoreProgressPanel{
  height:100%!important;
  min-height:0!important;
  padding:clamp(10px,1.4svh,13px) clamp(12px,1.75svh,16px)!important;
  gap:0!important;
  justify-content:space-between!important;
  overflow:hidden!important;
  background:transparent!important;
}
.rdPraxisDashboard .praxisProgressRow{
  flex:1 1 0!important;
  height:auto!important;
  min-height:0!important;
  max-height:55px!important;
  grid-template-columns:clamp(39px,5.2svh,46px) minmax(0,1fr) clamp(38px,5svh,43px)!important;
  gap:clamp(9px,1.3svh,12px)!important;
  padding:clamp(4px,.75svh,7px) 0!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  transform:none!important;
}
.rdPraxisDashboard .praxisProgressRow:last-child{border-bottom:0!important;}
.rdPraxisDashboard .praxisRowIcon{width:clamp(33px,4.45svh,39px)!important;height:clamp(33px,4.45svh,39px)!important;border-radius:12px!important;box-shadow:0 0 12px rgba(225,180,62,.09),0 0 0 1px rgba(232,194,84,.16) inset!important;}
.rdPraxisDashboard .praxisRowIcon svg{width:clamp(16px,2.2svh,19px)!important;height:clamp(16px,2.2svh,19px)!important;}
.rdPraxisDashboard .praxisRowText strong{font-size:clamp(12.3px,1.58svh,14px)!important;}
.rdPraxisDashboard .praxisRowCount b{font-size:clamp(12.8px,1.68svh,14.8px)!important;}
.rdPraxisDashboard .praxisRowBar{height:clamp(3.7px,.52svh,4.5px)!important;background:rgba(255,255,255,.12)!important;}
.rdPraxisDashboard .praxisRowBar i{animation:rdBarGrow .95s cubic-bezier(.18,.88,.22,1) both!important;transform-origin:left center!important;}
.rdDashboardActions{height:auto!important;min-height:0!important;margin:0!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:clamp(14px,2svh,18px)!important;align-items:stretch!important;}
.rdDashboardActions .rdMainAction{height:100%!important;min-height:0!important;border-radius:clamp(18px,2.55svh,21px)!important;font-size:clamp(12px,1.63svh,13.6px)!important;letter-spacing:.16em!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;pointer-events:auto!important;touch-action:manipulation!important;}
.rdDayStartAction{box-shadow:0 0 24px rgba(225,180,62,.18),0 14px 28px rgba(0,0,0,.40)!important;}
.rdIntensiveAction{box-shadow:0 0 18px rgba(225,180,62,.13),0 14px 28px rgba(0,0,0,.44),0 0 16px rgba(232,194,84,.08) inset!important;}
@media(display-mode:standalone){
  .aiPraxisScreen.rdPraxisDashboard{height:100svh!important;min-height:100svh!important;max-height:100svh!important;padding-top:clamp(56px, calc(env(safe-area-inset-top,0px) + 5.6svh), 70px)!important;}

}
@media(max-height:780px){
  .rdPraxisShell{grid-template-rows:clamp(218px,33.2svh,260px) clamp(72px,10.2svh,86px) minmax(224px,1fr) clamp(52px,7svh,60px)!important;gap:8px!important;}
  .rdAiLevelPanel{top:clamp(28px,5.2svh,42px)!important;min-height:clamp(160px,23svh,184px)!important;}
  .rdAiPanelTop strong{font-size:clamp(48px,7.5svh,62px)!important;}
  .rdAiPanelTop em{font-size:clamp(13px,1.95svh,16px)!important;}
  .rdScoreProgressPanel{padding:8px 12px!important;}
  .rdPraxisDashboard .praxisProgressRow{max-height:48px!important;}
}

/* ========================================================================
   RD TOPBAR ICON-ONLY UPDATE 2026-05-14
   Scope: ONLY Back / Home / Menu top navigation.
   Applied user feedback:
   - remove all visible button backgrounds
   - remove borders, glow, shadows and blur from nav buttons
   - show only the white icons
   - icons slightly smaller / more delicate
   - topbar slightly higher
   - outer icons farther outward
   ======================================================================== */

.topbar.rdGlobalTopbar,
.mainHomeBg .topbar.rdGlobalTopbar,
.courseHomeBg .topbar.rdGlobalTopbar,
.aiPraxisScreen .topbar.rdGlobalTopbar,
.rdPraxisDashboard .topbar.rdGlobalTopbar,
.rdPraxisToolPage .topbar.rdGlobalTopbar,
.moduleDashboardScreen .topbar.rdGlobalTopbar,
.goalScreen .topbar.rdGlobalTopbar,
.introVideoScreen .topbar.rdGlobalTopbar,
.dayIntroScreen .topbar.rdGlobalTopbar,
.lockStartScreen .topbar.rdGlobalTopbar,
.dayCourseTextScreen .topbar.rdGlobalTopbar,
.sevenCourseTextScreen .topbar.rdGlobalTopbar,
.dayCompleteScreen .topbar.rdGlobalTopbar,
.praxisCoachPage .topbar.rdGlobalTopbar {
  position: fixed !important;
  top: max(0px, calc(var(--sat, 0px) + 0px)) !important;
  left: 0 !important;
  right: 0 !important;
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
  padding: 0 18px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  z-index: 999 !important;
  pointer-events: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
}

.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn,
.mainHomeBg .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.courseHomeBg .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.aiPraxisScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.rdPraxisDashboard .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.rdPraxisToolPage .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.moduleDashboardScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.goalScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.introVideoScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.dayIntroScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.lockStartScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.dayCourseTextScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.sevenCourseTextScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.dayCompleteScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.praxisCoachPage .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn {
  pointer-events: auto !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: rgba(255,255,255,.98) !important;
  box-shadow: none !important;
  text-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
  opacity: 1 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg,
.mainHomeBg .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.courseHomeBg .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.aiPraxisScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.rdPraxisDashboard .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.rdPraxisToolPage .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.moduleDashboardScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.goalScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.introVideoScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.dayIntroScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.lockStartScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.dayCourseTextScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.sevenCourseTextScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.dayCompleteScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.praxisCoachPage .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg {
  width: 20px !important;
  height: 20px !important;
  color: inherit !important;
  stroke-width: 1.85 !important;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.62)) !important;
}

.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:active {
  transform: scale(.94) !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 380px) {
  .topbar.rdGlobalTopbar,
  .mainHomeBg .topbar.rdGlobalTopbar,
  .courseHomeBg .topbar.rdGlobalTopbar,
  .aiPraxisScreen .topbar.rdGlobalTopbar,
  .rdPraxisDashboard .topbar.rdGlobalTopbar,
  .rdPraxisToolPage .topbar.rdGlobalTopbar,
  .moduleDashboardScreen .topbar.rdGlobalTopbar {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}


/* ═══════════════════════════════════════════════════════════
   RESET DISCIPLINE · CLEAN PREMIUM SYSTEM v1
   Scope: visual system only. No layout heights/routes/functions changed.
   Direction: WHOOP/Apple inspired, matte dark, reduced gold noise.
═══════════════════════════════════════════════════════════ */
:root{
  --rd-clean-bg:#080808;
  --rd-clean-panel:rgba(18,18,18,.78);
  --rd-clean-panel-2:rgba(24,24,24,.86);
  --rd-clean-panel-3:rgba(32,32,32,.78);
  --rd-clean-border:rgba(255,255,255,.105);
  --rd-clean-border-strong:rgba(255,255,255,.16);
  --rd-clean-text:#F6F4EF;
  --rd-clean-muted:rgba(246,244,239,.62);
  --rd-clean-muted-2:rgba(246,244,239,.42);
  --rd-clean-accent:#B99A55;
  --rd-clean-accent-soft:rgba(185,154,85,.30);
  --rd-clean-radius:22px;
  --rd-clean-radius-sm:16px;
  --rd-clean-shadow:0 18px 44px rgba(0,0,0,.42);
  --rd-clean-inset:inset 0 1px 0 rgba(255,255,255,.06);

  --gold:#B99A55;
  --gold-bright:#D7BB72;
  --gold-dim:#8F7746;
  --gold-glow:rgba(185,154,85,.10);
  --gold-glow2:rgba(185,154,85,.16);
  --border:rgba(255,255,255,.10);
  --border2:rgba(255,255,255,.16);
  --surface:rgba(255,255,255,.045);
  --surface2:rgba(255,255,255,.075);
  --text:#F6F4EF;
  --text2:rgba(246,244,239,.66);
  --text3:rgba(246,244,239,.42);
  --shadow:0 18px 44px rgba(0,0,0,.42);
  --gold-shadow:none;
}

/* Typography — same hierarchy everywhere, cleaner and calmer */
h1,.mainHomeTitle,.aiPraxisTitle,.courseHero h1,.rdSimpleTitle h1{
  color:var(--rd-clean-text) !important;
  letter-spacing:.045em !important;
  text-shadow:0 3px 14px rgba(0,0,0,.72) !important;
}
h2{color:var(--rd-clean-text) !important;letter-spacing:.035em !important;}
h3{color:var(--rd-clean-text) !important;letter-spacing:.07em !important;}
p,.card p,.rdInputCard p,.journalArchiveCard p,.databaseEntry p,.databaseFolder p{
  color:var(--rd-clean-muted) !important;
}
label,.miniLabel,.tag,.cleanTag,.sectionLabel,.choiceSubLabel{
  color:var(--rd-clean-accent) !important;
}
.tag,.cleanTag{
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:none !important;
}

/* Global Topbar — icon only, no button plate, higher and wider */
.topbar.rdGlobalTopbar,
.mainHomeBg .topbar.rdGlobalTopbar,
.courseHomeBg .topbar.rdGlobalTopbar,
.aiPraxisScreen .topbar.rdGlobalTopbar,
.rdPraxisDashboard .topbar.rdGlobalTopbar,
.rdPraxisToolPage .topbar.rdGlobalTopbar,
.moduleDashboardScreen .topbar.rdGlobalTopbar,
.goalScreen .topbar.rdGlobalTopbar,
.introVideoScreen .topbar.rdGlobalTopbar,
.dayIntroScreen .topbar.rdGlobalTopbar,
.lockStartScreen .topbar.rdGlobalTopbar,
.dayCourseTextScreen .topbar.rdGlobalTopbar,
.sevenCourseTextScreen .topbar.rdGlobalTopbar,
.dayCompleteScreen .topbar.rdGlobalTopbar,
.praxisCoachPage .topbar.rdGlobalTopbar{
  position:fixed !important;
  top:max(0px,calc(var(--sat,0px) - 2px)) !important;
  left:0 !important;
  right:0 !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  padding:0 max(14px,calc(var(--sal,0px) + 14px)) 0 max(14px,calc(var(--sar,0px) + 14px)) !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  z-index:999 !important;
  pointer-events:none !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transform:none !important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn{
  pointer-events:auto !important;
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  min-height:30px !important;
  max-width:30px !important;
  max-height:30px !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:0 !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  color:rgba(255,255,255,.98) !important;
  box-shadow:none !important;
  text-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transform:none !important;
  opacity:1 !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg{
  width:18px !important;
  height:18px !important;
  color:inherit !important;
  stroke-width:1.75 !important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.72)) !important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:active{
  transform:scale(.94) !important;
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
}

/* Button system — matte graphite, less gold, consistent radii */
button,.btn,.menuBtn,.langBtn,.chatInputRow button,.coachLaunchBtn,.performanceFolderBtn,.dashboardReviewBtn,.challengeStartBtn,.journalDatabaseBtn,
.challengeProCard button,.rdMainAction,.courseIntroStartBtn,.introContinueBtn,.lockJournalBtn{
  border-radius:18px !important;
  border:1px solid var(--rd-clean-border) !important;
  background:linear-gradient(180deg,rgba(38,38,38,.92),rgba(18,18,18,.92)) !important;
  color:var(--rd-clean-text) !important;
  box-shadow:var(--rd-clean-inset),0 10px 26px rgba(0,0,0,.28) !important;
  text-shadow:none !important;
  letter-spacing:.12em !important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,opacity .16s ease !important;
}
.btn:not(.secondary):not(.locked):not(.praxisPrimary),.btn.praxisPrimary,.courseIntroStartBtn,.rdMainAction{
  background:linear-gradient(180deg,rgba(46,46,46,.94),rgba(20,20,20,.96)) !important;
  border-color:rgba(255,255,255,.12) !important;
  color:#F8F6F1 !important;
}
.btn.secondary,.btn.locked,.dashboardReviewBtn,.performanceFolderBtn,.coachLaunchBtn,.journalDatabaseBtn{
  background:linear-gradient(180deg,rgba(28,28,28,.82),rgba(12,12,12,.88)) !important;
  border-color:rgba(255,255,255,.105) !important;
  color:rgba(246,244,239,.86) !important;
}
.btn.locked{
  opacity:.58 !important;
  color:rgba(246,244,239,.46) !important;
}
button:active,.btn:active,.menuBtn:active,.langBtn:active,.chatInputRow button:active,.coachLaunchBtn:active,.performanceFolderBtn:active,.dashboardReviewBtn:active,.challengeStartBtn:active,.journalDatabaseBtn:active,.challengeProCard button:active,.rdMainAction:active{
  transform:scale(.975) !important;
  border-color:var(--rd-clean-border-strong) !important;
  background:linear-gradient(180deg,rgba(56,56,56,.92),rgba(22,22,22,.94)) !important;
}

/* Card system — unified matte panels */
.card,.profileCard,.settingsSection,.challengeInfoHero,.challengeProCard,.challengeEntryCard,.challengeHistoryCard,
.rdInputCard,.rdList article,.journalArchiveCard,.databaseFolder,.databaseEntry,.archiveDayCard,.archiveChat,.addonLessonCard,
.metricCard,.praxisMeterCard,.quickPanel,.checkModalCard{
  border-radius:var(--rd-clean-radius) !important;
  border:1px solid var(--rd-clean-border) !important;
  background:linear-gradient(180deg,rgba(20,20,20,.82),rgba(8,8,8,.88)) !important;
  box-shadow:var(--rd-clean-inset),var(--rd-clean-shadow) !important;
}
.card.article,.premiumCourseArticle,.premiumIntroArticle,.premiumTaskArticle{
  background:linear-gradient(180deg,rgba(22,22,22,.86),rgba(9,9,9,.92)) !important;
  border-color:rgba(255,255,255,.10) !important;
}

/* Image cards — same image treatment, calmer gold */
.choiceCard,.pathImageBtn,.moduleImageCard,.premiumDayCard,.largeCourseCard,.smallFeatureCard,.extraCard,.addonModuleCard,
.coachLaunchCard,.praxisCoachImageCard{
  border-radius:24px !important;
  border:1px solid rgba(255,255,255,.115) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 16px 36px rgba(0,0,0,.42) !important;
  overflow:hidden !important;
  filter:saturate(.86) contrast(1.04) brightness(.92) !important;
}
.choiceCard::after,.pathImageBtn::after,.moduleImageCard::after,.premiumDayCard::after,.largeCourseCard::after,.smallFeatureCard::after,.extraCard::after,.addonModuleCard::after{
  background:linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.38) 52%,rgba(0,0,0,.74) 100%) !important;
}
.choiceCard:active,.pathImageBtn:active,.moduleImageCard:active,.premiumDayCard:active,.largeCourseCard:active,.smallFeatureCard:active,.extraCard:active,.addonModuleCard:active{
  transform:scale(.985) !important;
  border-color:rgba(255,255,255,.18) !important;
  filter:saturate(.88) contrast(1.05) brightness(.98) !important;
}
.choiceCard span,.pathImageBtn span,.moduleImageCard h3,.premiumDayCard h3,.extraCard h3,.addonModuleCard h3,
.choiceText h3,.choiceText,.courseCardTitle{
  color:var(--rd-clean-text) !important;
  text-shadow:0 2px 12px rgba(0,0,0,.82) !important;
}
.choiceArrow,.rdLockBadge,.moduleStatus,.progressText,.databaseEntry h4{
  color:var(--rd-clean-accent) !important;
}

/* Progress and accents — keep functional signal, reduce decoration */
.progressBar,.moduleProgressBar,.rdProgressBar{background:rgba(255,255,255,.11) !important;}
.progressFill,.moduleProgressFill,.rdProgressFill{background:linear-gradient(90deg,#B99A55,#D4BE77) !important;box-shadow:none !important;}
.metricGrid,.rdMetricGrid,.dashboardProgressCard{
  border-color:rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 16px 36px rgba(0,0,0,.38) !important;
}

/* Inputs — calmer, consistent with buttons/cards */
input,textarea,select{
  border-radius:16px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(0,0,0,.30) !important;
  color:var(--rd-clean-text) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
input::placeholder,textarea::placeholder{color:rgba(246,244,239,.38) !important;}
input:focus,textarea:focus,select:focus{
  border-color:rgba(255,255,255,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 0 0 3px rgba(255,255,255,.045) !important;
}

/* Prevent old gold-glow patches from reintroducing noise */
.choiceCard,.pathImageBtn,.btn.secondary,.performanceFolderBtn,.dashboardReviewBtn,.coachLaunchBtn,.rdInputCard,.card{
  outline:none !important;
}


/* ========================================================================
   RD TARGETED SYSTEM PATCH 2026-05-14 B
   Scope: user requested only — button/card frame consistency, calmer
   graphite button surfaces, fixed Praxis/Intensiv background scale, Todo
   order, journal entry vertical alignment. No hero/layout scaling changes.
======================================================================== */
:root{
  --rd-frame:rgba(255,255,255,.145);
  --rd-frame-soft:rgba(255,255,255,.105);
  --rd-frame-strong:rgba(255,255,255,.18);
  --rd-graphite-a:rgba(48,48,48,.58);
  --rd-graphite-b:rgba(13,13,13,.70);
  --rd-panel-a:rgba(8,8,8,.66);
  --rd-panel-b:rgba(0,0,0,.74);
  --rd-ambient:rgba(196,151,58,.075);
}

/* 1) Buttons: same quiet graphite surface everywhere, slightly more transparent */
.btn,
button.btn,
.rdMainAction,
.rdDashboardActions .rdMainAction,
.courseIntroStartBtn,
.introContinueBtn,
.lockJournalBtn,
.dashboardReviewBtn,
.performanceFolderBtn,
.coachLaunchBtn,
.journalDatabaseBtn,
.challengeStartBtn,
.challengeProCard button,
.rdToolShell > .btn,
.rdInputCard .btn{
  background:linear-gradient(180deg,var(--rd-graphite-a),var(--rd-graphite-b))!important;
  border:1px solid var(--rd-frame)!important;
  color:rgba(248,247,243,.94)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 14px 30px rgba(0,0,0,.36),
    0 0 22px var(--rd-ambient)!important;
  text-shadow:none!important;
}
.btn.secondary,
.rdIntensiveAction,
.dashboardReviewBtn,
.performanceFolderBtn,
.journalDatabaseBtn{
  background:linear-gradient(180deg,rgba(38,38,38,.44),rgba(5,5,5,.68))!important;
  border-color:var(--rd-frame)!important;
}
.btn:active,
.rdMainAction:active,
.courseIntroStartBtn:active,
.introContinueBtn:active,
.lockJournalBtn:active,
.dashboardReviewBtn:active,
.performanceFolderBtn:active,
.coachLaunchBtn:active,
.journalDatabaseBtn:active,
.challengeStartBtn:active{
  background:linear-gradient(180deg,rgba(58,58,58,.58),rgba(14,14,14,.72))!important;
  border-color:var(--rd-frame-strong)!important;
  transform:scale(.976)!important;
}

/* 2) Cards / image tiles / panels: remove gold frames, use one neutral frame strength */
.choiceCard,
.pathImageBtn,
.moduleImageCard,
.premiumDayCard,
.largeCourseCard,
.smallFeatureCard,
.extraCard,
.addonModuleCard,
.coachLaunchCard,
.praxisCoachImageCard,
.rdInputCard,
.rdList,
.rdToolHero,
.rdToolHead,
.rdHubGrid button,
.rdWideToolBtn,
.rdPerformancePanel,
.rdScoreDrawer.rdScoreDrawerFixed,
.rdHeroPanel,
.rdAiLevelPanel,
.metricGrid,
.rdMetricGrid,
.dashboardProgressCard,
.card,
.profileCard,
.settingsSection,
.challengeInfoHero,
.challengeProCard,
.challengeEntryCard,
.challengeHistoryCard,
.journalArchiveCard,
.databaseFolder,
.databaseEntry,
.archiveDayCard,
.archiveChat,
.addonLessonCard{
  border-color:var(--rd-frame)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 16px 36px rgba(0,0,0,.42),
    0 0 20px var(--rd-ambient)!important;
}
.rdInputCard,
.rdList,
.rdToolHero,
.rdToolHead,
.rdHubGrid button,
.rdWideToolBtn,
.card,
.profileCard,
.settingsSection,
.journalArchiveCard,
.databaseFolder,
.databaseEntry,
.archiveDayCard,
.archiveChat,
.addonLessonCard{
  background:linear-gradient(180deg,var(--rd-panel-a),var(--rd-panel-b))!important;
}
.choiceCard,
.pathImageBtn,
.moduleImageCard,
.premiumDayCard,
.largeCourseCard,
.smallFeatureCard,
.extraCard,
.addonModuleCard,
.coachLaunchCard,
.praxisCoachImageCard{
  filter:saturate(.82) contrast(1.03) brightness(.88)!important;
}

/* keep gold only as small content accent, never as a heavy frame */
.rdChips button,
.rdList button,
.choiceArrow,
.rdLockBadge,
.moduleStatus,
.progressText,
.databaseEntry h4,
.rdHubGrid small,
.rdWideToolBtn small,
.rdInputCard label,
.miniLabel,
.cleanTag,
.tag{
  color:#c7a45a!important;
}
.rdChips button{
  background:rgba(255,255,255,.035)!important;
  border:1px solid var(--rd-frame)!important;
  color:rgba(248,247,243,.88)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.28)!important;
}

/* 3) Praxis / Intensive Station background: one fixed image scale/position on all related screens */
.rdPraxisHubPage,
.rdPraxisToolPage,
.rdPraxisToolPage.rdHoodToolPage{
  position:relative!important;
  min-height:100dvh!important;
  background:#000!important;
  background-image:none!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdPraxisHubPage::before,
.rdPraxisToolPage::before,
.rdPraxisToolPage.rdHoodToolPage::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 45% 14%, rgba(196,151,58,.10) 0%, rgba(196,151,58,.045) 30%, transparent 58%),
    linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.50) 48%,rgba(0,0,0,.93) 86%,#000 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
}
.rdPraxisHubPage > *,
.rdPraxisToolPage > *,
.rdPraxisToolPage.rdHoodToolPage > *{
  position:relative!important;
  z-index:1!important;
}
.rdPraxisToolPage.rdHoodToolPage{
  padding-top:max(238px,calc(var(--sat) + 210px))!important;
  padding-bottom:max(42px,calc(var(--sab) + 42px))!important;
}
.rdPraxisHubPage{
  padding-top:max(54px,calc(var(--sat) + 48px))!important;
}

/* 4) Todo page: list directly after save task, popup after list, quick access below */
.rdTodoChips:empty{display:none!important;}
.rdTodoListCard{
  margin-top:0!important;
}
.rdTodoPopupBtn{
  margin-top:0!important;
}
.rdTodoTemplateCard{
  margin-top:2px!important;
}
.rdTodoListCard label{
  min-height:62px!important;
}
.rdTodoListCard input[type="checkbox"]{
  accent-color:#fff!important;
}
.rdTodoListCard button[type="button"]{
  width:40px!important;
  height:40px!important;
  border-radius:999px!important;
  border:1px solid var(--rd-frame-soft)!important;
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
  font-size:28px!important;
  line-height:1!important;
}

/* 5) Journal archive cards: text always vertically clean and readable */
.rdJournalList{
  padding:14px 18px!important;
}
.rdJournalList article{
  min-height:74px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:6px!important;
  padding:14px 0!important;
  border-top:0!important;
}
.rdJournalList article b,
.rdJournalList article p{
  margin:0!important;
  padding:0!important;
  line-height:1.25!important;
}
.rdJournalList article b{
  color:rgba(248,247,243,.90)!important;
  font-size:16px!important;
}
.rdJournalList article p{
  color:rgba(248,247,243,.66)!important;
  font-size:15px!important;
}

/* 6) Course/dashboard image cards: neutral frame, same strength as performance buttons */
.pathImageBtn,
.choiceCard,
.largeCourseCard,
.smallFeatureCard,
.premiumDayCard,
.moduleImageCard{
  border:1px solid var(--rd-frame)!important;
}
.premiumDayCard .rdLockCircle,
.premiumDayCard .moduleStatus,
.moduleStatus{
  border-color:var(--rd-frame)!important;
}


/* ========================================================================
   FINAL COURSE SELECTION REBUILD — fixed single-screen layout
   Only affects the course selection dashboard (mainHome).
   ======================================================================== */
.screen.mainHomeBg.rdCourseSelectScreen{
  height:100vh!important;
  height:100svh!important;
  min-height:100vh!important;
  min-height:100svh!important;
  max-height:100vh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  position:relative!important;
  background:#000!important;
  padding:0!important;
  display:block!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseSelect{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.00) 0%, rgba(0,0,0,.10) 33%, rgba(0,0,0,.48) 47%, rgba(0,0,0,.82) 61%, #030303 100%),
    url('assets/img/course-selection-hero.jpg')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseHeader{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:43.5svh!important;
  transform:translateY(-50%)!important;
  z-index:2!important;
  padding:0 16px!important;
  text-align:center!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{
  margin:0!important;
  padding:0!important;
  font-family:var(--font-d)!important;
  font-size:clamp(43px, 10.9vw, 56px)!important;
  line-height:.9!important;
  letter-spacing:.035em!important;
  color:rgba(255,255,255,.98)!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-shadow:0 4px 22px rgba(0,0,0,.92)!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{
  margin:clamp(42px, 6.4svh, 62px) 0 0!important;
  padding:0!important;
  font-family:var(--font-c)!important;
  font-size:clamp(12px, 3.0vw, 15px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.48em!important;
  text-indent:.48em!important;
  color:rgba(238,238,238,.72)!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-shadow:0 3px 16px rgba(0,0,0,.90)!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseCards{
  position:absolute!important;
  left:16px!important;
  right:16px!important;
  top:66svh!important;
  bottom:calc(env(safe-area-inset-bottom, 0px) + 18px)!important;
  z-index:2!important;
  display:grid!important;
  grid-template-rows:1fr 1fr!important;
  gap:clamp(14px, 2.1svh, 20px)!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseCard{
  position:relative!important;
  width:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  border:1.1px solid rgba(198,158,87,.70)!important;
  border-radius:26px!important;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(204,168,88,.22) 0%, rgba(204,168,88,.09) 34%, rgba(0,0,0,0) 72%),
    linear-gradient(180deg, rgba(32,32,27,.78) 0%, rgba(13,13,12,.94) 74%, rgba(5,5,5,.98) 100%)!important;
  box-shadow:
    0 0 0 1px rgba(255,226,150,.06) inset,
    0 0 18px rgba(201,168,76,.12),
    0 16px 34px rgba(0,0,0,.48)!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard.isLocked{
  cursor:not-allowed!important;
  filter:none!important;
  opacity:.96!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard:active{
  transform:scale(.985)!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{
  position:absolute!important;
  left:10px!important;
  right:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  padding:0!important;
  font-family:var(--font-d)!important;
  font-size:clamp(24px, 6.7vw, 33px)!important;
  line-height:1!important;
  letter-spacing:.035em!important;
  color:rgba(255,255,255,.96)!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-shadow:0 3px 16px rgba(0,0,0,.92)!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCardLabel,
.mainHomeBg.rdCourseSelectScreen .rdCardLock{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:24%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLabel{
  font-family:var(--font-c)!important;
  font-size:clamp(12px, 3.0vw, 15px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.48em!important;
  text-indent:.48em!important;
  color:rgba(214,177,96,.90)!important;
  text-shadow:0 2px 10px rgba(0,0,0,.95)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLock svg{
  width:clamp(26px, 6.2vw, 34px)!important;
  height:clamp(26px, 6.2vw, 34px)!important;
  display:block!important;
  overflow:visible!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLock path,
.mainHomeBg.rdCourseSelectScreen .rdCardLock rect{
  fill:none!important;
  stroke:rgba(232,232,232,.80)!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.75))!important;
}

/* Hide old course selection structure if browser cache keeps parts around */
.mainHomeBg.rdCourseSelectScreen .mainHomeHero,
.mainHomeBg.rdCourseSelectScreen .mainChoiceGrid,
.mainHomeBg.rdCourseSelectScreen .choiceCard{
  display:none!important;
}

@media (max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:42.5svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{font-size:clamp(39px, 10.1vw, 50px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:clamp(34px,5.4svh,48px)!important;font-size:clamp(11px,2.8vw,13px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:65svh!important;gap:12px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 14px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard{border-radius:23px!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{font-size:clamp(20px,5.6vw,27px)!important;}
}
@media (max-height:680px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:41.5svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{font-size:clamp(35px,9.0vw,44px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:28px!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:64svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{font-size:clamp(18px,5.0vw,24px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCardLabel{font-size:11px!important;}
}


/* ========================================================================
   V10 EXACT COURSE SELECTION POLISH — only requested visual adjustments
   - Welcome + Choose move lower
   - Welcome slightly smaller
   - Cards taller
   - Card text/icons slightly smaller
   - Card corner radius smaller
   ======================================================================== */
.screen.mainHomeBg.rdCourseSelectScreen{overflow:hidden!important;}

.mainHomeBg.rdCourseSelectScreen .rdCourseHeader{
  top:46.2svh!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{
  font-size:clamp(39px, 10.0vw, 52px)!important;
  letter-spacing:.03em!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{
  margin-top:clamp(48px, 7.0svh, 66px)!important;
}

.mainHomeBg.rdCourseSelectScreen .rdCourseCards{
  top:64.6svh!important;
  bottom:calc(env(safe-area-inset-bottom, 0px) + 18px)!important;
  gap:clamp(14px, 2.0svh, 18px)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard{
  border-radius:20px!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{
  font-size:clamp(21px, 5.9vw, 29px)!important;
  letter-spacing:.032em!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLabel{
  font-size:clamp(10px, 2.65vw, 13px)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLock svg{
  width:clamp(22px, 5.4vw, 29px)!important;
  height:clamp(22px, 5.4vw, 29px)!important;
}

@media (max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:45.4svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{font-size:clamp(36px, 9.2vw, 47px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:clamp(38px, 5.9svh, 52px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:64.2svh!important;gap:12px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 14px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard{border-radius:18px!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{font-size:clamp(18px, 5.15vw, 25px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCardLabel{font-size:clamp(9px,2.45vw,12px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCardLock svg{width:clamp(20px,5.0vw,26px)!important;height:clamp(20px,5.0vw,26px)!important;}
}
@media (max-height:680px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:44.7svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{font-size:clamp(32px, 8.4vw, 41px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:30px!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:63.7svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{font-size:clamp(17px,4.7vw,23px)!important;}
}

/* ========================================================================
   V11 FINAL COURSE SELECTION TIGHTENING — exact requested adjustments only
   - course cards slightly taller
   - CHOOSE YOUR SYSTEM closer to cards
   - WELCOME closer to CHOOSE YOUR SYSTEM
   ======================================================================== */
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader{
  top:48.2svh!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{
  margin-top:clamp(32px, 4.2svh, 40px)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCards{
  top:62.7svh!important;
  bottom:calc(env(safe-area-inset-bottom, 0px) + 18px)!important;
  gap:clamp(13px, 1.8svh, 17px)!important;
}

@media (max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:47.0svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:clamp(28px, 3.8svh, 34px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:62.0svh!important;gap:12px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 14px)!important;}
}
@media (max-height:680px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:46.3svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:26px!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:61.6svh!important;}
}

/* PREMIUM DASHBOARD UPDATE — only 7-day & 30-day course dashboard utility buttons */
.sevenCourseHome .premiumUtilityGrid,
.thirtyCourseHome .premiumUtilityGrid{
  gap:10px!important;
  padding-top:10px!important;
}
.sevenCourseHome .premiumUtilityTile,
.thirtyCourseHome .premiumUtilityTile{
  background-image:none!important;
  background:
    radial-gradient(circle at 50% 0%, rgba(223,190,96,.18) 0%, rgba(223,190,96,.06) 34%, rgba(0,0,0,0) 70%),
    linear-gradient(180deg, rgba(255,255,255,.045) 0%, rgba(255,255,255,.012) 42%, rgba(0,0,0,.48) 100%),
    #090909!important;
  border:1px solid rgba(225,190,92,.52)!important;
  border-radius:18px!important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.045) inset,
    0 0 13px rgba(201,168,76,.14),
    0 12px 28px rgba(0,0,0,.42)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  overflow:hidden!important;
}
.sevenCourseHome .premiumUtilityTile::before,
.thirtyCourseHome .premiumUtilityTile::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,0) 44%),
    radial-gradient(circle at 50% 100%, rgba(201,168,76,.08), rgba(0,0,0,0) 58%);
  pointer-events:none;
  z-index:1;
}
.sevenCourseHome .premiumUtilityTile::after,
.thirtyCourseHome .premiumUtilityTile::after{
  content:''!important;
  position:absolute!important;
  inset:auto 16% 16px 16%!important;
  height:1px!important;
  background:linear-gradient(90deg, transparent, rgba(232,201,106,.42), transparent)!important;
  z-index:1!important;
}
.sevenCourseHome .premiumTileIcon,
.thirtyCourseHome .premiumTileIcon{
  position:relative;
  z-index:2;
  width:44px;
  height:44px;
  margin:0 0 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(223,190,96,.78);
  filter:drop-shadow(0 0 10px rgba(201,168,76,.16));
}
.sevenCourseHome .premiumTileIcon svg,
.thirtyCourseHome .premiumTileIcon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sevenCourseHome .premiumUtilityTile span,
.thirtyCourseHome .premiumUtilityTile span{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:calc(100% - 14px)!important;
  z-index:2!important;
  text-align:center!important;
  font-family:var(--font-c)!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  letter-spacing:.075em!important;
  color:rgba(245,243,238,.92)!important;
  text-shadow:0 2px 10px rgba(0,0,0,.7)!important;
}
.sevenCourseHome .premiumUtilityTile:active,
.thirtyCourseHome .premiumUtilityTile:active{
  transform:scale(.965)!important;
  border-color:rgba(232,201,106,.74)!important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.08) inset,
    0 0 17px rgba(201,168,76,.22),
    0 12px 28px rgba(0,0,0,.46)!important;
}
@media(max-width:380px){
  .sevenCourseHome .premiumTileIcon,
  .thirtyCourseHome .premiumTileIcon{width:38px;height:38px;margin-bottom:8px;}
  .sevenCourseHome .premiumUtilityTile span,
  .thirtyCourseHome .premiumUtilityTile span{font-size:9.6px!important;}
}

/* ========================================================================
   V14 — Premium dashboard alignment fix
   Scope: course selection + 7-day course home + 30-day course home only.
   - Same centered WELCOME line on all three dashboards
   - Removes small hero pills/subtitles on 7-day/30-day dashboards
   - Equalizes block spacing on 7-day/30-day dashboards
   - Keeps functions/click targets untouched
   - Slightly sharper card corners everywhere requested
   ======================================================================== */

/* Course selection: smaller corner radius only */
.mainHomeBg.rdCourseSelectScreen .rdCourseCard{
  border-radius:16px!important;
}
@media (max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard{border-radius:15px!important;}
}

/* Dashboard hero title: same centered single-line style as course selection */
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  position:relative!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:74%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  padding:0 16px!important;
  text-align:center!important;
  display:block!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent .tag,
.courseHomeBg.thirtyCourseHome .courseHeroContent .tag,
.courseHomeBg.sevenCourseHome .courseHeroSub,
.courseHomeBg.thirtyCourseHome .courseHeroSub{
  display:none!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle,
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  margin:0!important;
  padding:0!important;
  font-family:var(--font-d)!important;
  font-size:clamp(39px, 10.0vw, 52px)!important;
  line-height:.9!important;
  letter-spacing:.03em!important;
  color:rgba(255,255,255,.98)!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-shadow:0 4px 22px rgba(0,0,0,.92)!important;
}

/* Equalized section spacing */
.courseHomeBg.sevenCourseHome .sevenHomeActions,
.courseHomeBg.thirtyCourseHome .pathGrid{
  margin-top:14px!important;
  padding:0 16px!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityGrid,
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid{
  margin-top:14px!important;
  padding:0 16px!important;
  gap:10px!important;
}
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  margin:14px 16px calc(env(safe-area-inset-bottom,0px) + 22px)!important;
}

/* 7-day start card and 30-day hero cards: sharper radius, unchanged function */
.courseHomeBg.sevenCourseHome .sevenStartCard,
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn,
.courseHomeBg.sevenCourseHome .pathImageBtn,
.courseHomeBg.thirtyCourseHome .pathImageBtn{
  border-radius:16px!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard{
  height:128px!important;
  min-height:128px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:126px!important;
}

/* Utility cards: clean premium cards with centered labels */
.courseHomeBg.sevenCourseHome .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile{
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile span,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile span{
  display:block!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
  width:100%!important;
  text-align:center!important;
  text-indent:0!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .premiumTileIcon{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Database buttons: sharper radius, centered label */
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  border-radius:16px!important;
}
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom span,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom span{
  left:50%!important;
  top:50%!important;
  bottom:auto!important;
  right:auto!important;
  transform:translate(-50%,-50%)!important;
  text-align:center!important;
  width:max-content!important;
  max-width:calc(100% - 34px)!important;
}

@media(max-height:760px){
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{top:75%!important;}
  .courseHomeBg.sevenCourseHome .courseHeroTitle,
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(35px,9.2vw,47px)!important;}
  .courseHomeBg.sevenCourseHome .sevenHomeActions,
  .courseHomeBg.thirtyCourseHome .pathGrid{margin-top:12px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityGrid,
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid{margin-top:12px!important;}
  .courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
  .courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{margin-top:12px!important;margin-bottom:calc(env(safe-area-inset-bottom,0px) + 18px)!important;}
}


/* ========================================================================
   V15 TEXT-ONLY FINAL FIX
   Scope only:
   1) course selection header moves slightly lower
   2) 7-day + 30-day course hero title becomes BUILD YOUR DISCIPLINE
      and sits lower in the hero area
   No card/function/link structure changed.
   ======================================================================== */
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader{
  top:50.4svh!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{
  margin-top:clamp(34px, 4.5svh, 43px)!important;
}
@media (max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:49.2svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:clamp(29px, 4.0svh, 36px)!important;}
}
@media (max-height:680px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:48.4svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:27px!important;}
}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  top:78.5%!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle,
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(34px, 8.7vw, 45px)!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}
@media(max-height:760px){
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{top:79.5%!important;}
  .courseHomeBg.sevenCourseHome .courseHeroTitle,
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(31px,8.2vw,41px)!important;}
}

/* ========================================================================
   V16 — FINAL PREMIUM POLISH
   Scope only: course selection cards + 7-day/30-day course dashboards.
   No routing, login, storage, checkout, unlock or click handlers changed.
   ======================================================================== */

/* Course selection: keep header/background/text exactly in place, only make the two cards taller. */
.mainHomeBg.rdCourseSelectScreen .rdCourseCards{
  top:61.3svh!important;
  bottom:calc(env(safe-area-inset-bottom, 0px) + 18px)!important;
  gap:clamp(13px, 1.8svh, 17px)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard{
  border-radius:14px!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{
  top:50%!important;
  transform:translateY(-50%)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLabel,
.mainHomeBg.rdCourseSelectScreen .rdCardLock{
  top:24%!important;
}
@media (max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{
    top:60.8svh!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 14px)!important;
    gap:12px!important;
  }
}
@media (max-height:680px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:60.5svh!important;}
}

/* Shared dashboard shell: keep existing functions, make visual system calmer and premium. */
.courseHomeBg.sevenCourseHome,
.courseHomeBg.thirtyCourseHome{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  background:#030303!important;
}

/* Hero stays image-driven, but headline gets a soft cinematic base instead of floating loose. */
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  position:relative!important;
  flex:0 0 auto!important;
  height:44.2svh!important;
  min-height:330px!important;
  max-height:420px!important;
  background-size:cover!important;
  background-position:center top!important;
  overflow:hidden!important;
  border-bottom:0!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  height:45.4svh!important;
  min-height:340px!important;
  max-height:430px!important;
}
.courseHomeBg.sevenCourseHome .courseHero::after,
.courseHomeBg.thirtyCourseHome .courseHero::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.10) 36%, rgba(0,0,0,.62) 72%, #030303 100%),
    radial-gradient(ellipse at 50% 75%, rgba(0,0,0,.58) 0%, rgba(0,0,0,.28) 34%, rgba(0,0,0,0) 62%)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:37px!important;
  transform:none!important;
  z-index:3!important;
  padding:0 16px!important;
  text-align:center!important;
  display:flex!important;
  justify-content:center!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent::before,
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  content:''!important;
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  top:-18px!important;
  bottom:-18px!important;
  z-index:-1!important;
  border-radius:18px!important;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.50) 0%, rgba(0,0,0,.33) 45%, rgba(0,0,0,0) 74%)!important;
  filter:blur(.2px)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent .tag,
.courseHomeBg.thirtyCourseHome .courseHeroContent .tag,
.courseHomeBg.sevenCourseHome .courseHeroSub,
.courseHomeBg.thirtyCourseHome .courseHeroSub{
  display:none!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle,
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  margin:0!important;
  padding:0!important;
  font-family:var(--font-d)!important;
  font-size:clamp(34px, 8.6vw, 45px)!important;
  line-height:.92!important;
  letter-spacing:.035em!important;
  color:rgba(255,255,255,.98)!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-shadow:0 4px 24px rgba(0,0,0,.95)!important;
}

/* Equal, calm vertical rhythm on both course dashboards. */
.courseHomeBg.sevenCourseHome .sevenHomeActions,
.courseHomeBg.thirtyCourseHome .pathGrid{
  margin-top:12px!important;
  padding:0 16px!important;
  flex:0 0 auto!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityGrid,
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:10px!important;
  margin-top:12px!important;
  padding:0 16px!important;
  flex:0 0 auto!important;
}
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  margin:12px 16px calc(env(safe-area-inset-bottom,0px) + 18px)!important;
  flex:0 0 auto!important;
}

/* Main course/AI cards: same function and images, calmer border and sharper corner system. */
.courseHomeBg.sevenCourseHome .sevenStartCard,
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  border-radius:14px!important;
  border:1.05px solid rgba(201,168,76,.54)!important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.035) inset,
    0 0 10px rgba(201,168,76,.08),
    0 14px 28px rgba(0,0,0,.44)!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard{
  height:118px!important;
  min-height:118px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:120px!important;
  min-height:120px!important;
}

/* Utility cards: premium material instead of heavy glow. */
.courseHomeBg.sevenCourseHome .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile{
  aspect-ratio:1!important;
  height:auto!important;
  border-radius:13px!important;
  border:1.05px solid rgba(201,168,76,.48)!important;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(201,168,76,.16) 0%, rgba(201,168,76,.055) 39%, rgba(0,0,0,0) 76%),
    linear-gradient(180deg, rgba(34,34,29,.62) 0%, rgba(14,14,13,.92) 68%, rgba(6,6,6,.98) 100%)!important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.035) inset,
    0 0 8px rgba(201,168,76,.065),
    0 12px 24px rgba(0,0,0,.42)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  overflow:hidden!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile::before,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile::before{
  background:linear-gradient(135deg, rgba(255,255,255,.035), rgba(255,255,255,0) 48%)!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile::after,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile::after{
  inset:auto 18% 15px 18%!important;
  background:linear-gradient(90deg, transparent, rgba(201,168,76,.28), transparent)!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .premiumTileIcon{
  width:36px!important;
  height:36px!important;
  margin:0 0 14px!important;
  color:rgba(212,176,89,.78)!important;
  filter:drop-shadow(0 0 7px rgba(201,168,76,.10))!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon svg,
.courseHomeBg.thirtyCourseHome .premiumTileIcon svg{
  stroke-width:2.05!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile span,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile span{
  display:block!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  margin:0!important;
  padding:0 6px!important;
  text-align:center!important;
  font-family:var(--font-c)!important;
  font-size:10.1px!important;
  line-height:1.12!important;
  letter-spacing:.07em!important;
  color:rgba(245,243,238,.88)!important;
  text-shadow:0 2px 10px rgba(0,0,0,.72)!important;
}

/* Database: same button/function, quieter luxury finish. */
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  height:88px!important;
  min-height:88px!important;
  border-radius:14px!important;
  border:1.05px solid rgba(201,168,76,.48)!important;
  background-image:none!important;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(201,168,76,.095) 0%, rgba(201,168,76,.03) 44%, rgba(0,0,0,0) 80%),
    linear-gradient(180deg, rgba(24,24,21,.45), rgba(6,6,6,.98))!important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.025) inset,
    0 0 8px rgba(201,168,76,.055),
    0 14px 30px rgba(0,0,0,.44)!important;
}
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom span,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom span{
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  bottom:auto!important;
  right:auto!important;
  text-align:center!important;
  width:max-content!important;
  max-width:calc(100% - 36px)!important;
  font-size:clamp(17px,4.7vw,24px)!important;
  letter-spacing:.14em!important;
}

@media(max-height:760px){
  .courseHomeBg.sevenCourseHome .courseHero,
  .courseHomeBg.thirtyCourseHome .courseHero{
    height:43svh!important;
    min-height:300px!important;
  }
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:30px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroTitle,
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(30px,8vw,40px)!important;}
  .courseHomeBg.sevenCourseHome .sevenHomeActions,
  .courseHomeBg.thirtyCourseHome .pathGrid{margin-top:10px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityGrid,
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid{margin-top:10px!important;gap:9px!important;}
  .courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
  .courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{margin-top:10px!important;margin-bottom:calc(env(safe-area-inset-bottom,0px) + 14px)!important; height:78px!important; min-height:78px!important;}
  .courseHomeBg.sevenCourseHome .premiumTileIcon,
  .courseHomeBg.thirtyCourseHome .premiumTileIcon{width:32px!important;height:32px!important;margin-bottom:12px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityTile span,
  .courseHomeBg.thirtyCourseHome .premiumUtilityTile span{font-size:9.4px!important;}
}

/* V17: 30-day dashboard premium utility expansion + single praxis CTA */
.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  padding:10px 16px 10px!important;
  margin-top:0!important;
}
.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{
  aspect-ratio:auto!important;
  height:92px!important;
  min-height:92px!important;
  border-radius:16px!important;
  padding:10px 8px!important;
}
.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{
  width:30px!important;
  height:30px!important;
  margin:0 0 8px!important;
}
.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon svg{
  width:30px!important;
  height:30px!important;
  stroke-width:2!important;
}
.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{
  font-size:10.4px!important;
  line-height:1.05!important;
  letter-spacing:.13em!important;
  width:100%!important;
  text-align:center!important;
  justify-content:center!important;
}
.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile::after{
  inset:auto 22% 9px 22%!important;
  opacity:.55!important;
}
.thirtyCourseHome .thirtyDatabaseBottom{
  margin-top:8px!important;
  height:74px!important;
  border-radius:16px!important;
}
.thirtyCourseHome .thirtyDatabaseBottom span{
  font-size:16px!important;
  letter-spacing:.16em!important;
}
.rdPraxisDashboard .rdDashboardActions.rdDashboardActionsSingle{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  width:100%!important;
  height:auto!important;
  margin-top:0!important;
}
.rdPraxisDashboard .rdDashboardActions.rdDashboardActionsSingle .rdMainAction{
  width:100%!important;
  min-width:100%!important;
  height:54px!important;
  min-height:54px!important;
  border-radius:18px!important;
}
@media (max-height:780px){
  .thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{gap:8px!important;padding-top:8px!important;}
  .thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{height:82px!important;min-height:82px!important;}
  .thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{width:27px!important;height:27px!important;margin-bottom:6px!important;}
  .thirtyCourseHome .thirtyDatabaseBottom{height:66px!important;margin-top:6px!important;}
  .rdPraxisDashboard .rdDashboardActions.rdDashboardActionsSingle .rdMainAction{height:48px!important;min-height:48px!important;}
}

/* ========================================================================
   V18 — 30-day dashboard fullscreen repair
   Scope only: 30-day course dashboard layout density and title treatment.
   Goal: keep hero/cards/functions, fit 2 top cards + 6 utilities + database on one screen.
   ======================================================================== */
.courseHomeBg.thirtyCourseHome{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  height:39.6svh!important;
  min-height:292px!important;
  max-height:355px!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:26px!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  left:11%!important;
  right:11%!important;
  top:-14px!important;
  bottom:-14px!important;
  border-radius:14px!important;
  background:
    radial-gradient(ellipse at center, rgba(0,0,0,.56) 0%, rgba(0,0,0,.34) 43%, rgba(0,0,0,0) 73%)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(31px, 7.9vw, 42px)!important;
  letter-spacing:.045em!important;
  text-shadow:0 5px 24px rgba(0,0,0,.96), 0 0 1px rgba(255,255,255,.28)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  content:''!important;
  display:block!important;
  width:92px!important;
  height:1px!important;
  margin:12px auto 0!important;
  background:linear-gradient(90deg, transparent, rgba(211,176,88,.70), transparent)!important;
  opacity:.65!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid{
  margin-top:8px!important;
  padding:0 16px!important;
  gap:10px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:96px!important;
  min-height:96px!important;
  border-radius:13px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn span{
  font-size:clamp(11px, 3.1vw, 15px)!important;
  letter-spacing:.075em!important;
  bottom:18px!important;
  line-height:1.05!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:0 16px!important;
  margin-top:9px!important;
  flex:0 0 auto!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{
  aspect-ratio:auto!important;
  height:72px!important;
  min-height:72px!important;
  border-radius:12px!important;
  padding:7px 4px 6px!important;
  justify-content:center!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{
  width:23px!important;
  height:23px!important;
  margin:0 0 6px!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon svg{
  width:23px!important;
  height:23px!important;
  stroke-width:2.05!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{
  font-size:8.1px!important;
  line-height:1.04!important;
  letter-spacing:.105em!important;
  padding:0 2px!important;
  white-space:normal!important;
  text-align:center!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile::after{
  inset:auto 24% 7px 24%!important;
  opacity:.42!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  height:58px!important;
  min-height:58px!important;
  margin:9px 16px calc(env(safe-area-inset-bottom,0px) + 10px)!important;
  border-radius:13px!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom span{
  font-size:clamp(13px,3.6vw,18px)!important;
  letter-spacing:.14em!important;
}
@media(max-height:760px){
  .courseHomeBg.thirtyCourseHome .courseHero{
    height:38.4svh!important;
    min-height:270px!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:22px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(28px,7.4vw,38px)!important;}
  .courseHomeBg.thirtyCourseHome .pathGrid{margin-top:7px!important;gap:8px!important;}
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{height:86px!important;min-height:86px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{gap:7px!important;margin-top:7px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{height:64px!important;min-height:64px!important;padding-top:6px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{width:20px!important;height:20px!important;margin-bottom:5px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{font-size:7.4px!important;letter-spacing:.095em!important;}
  .courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{height:52px!important;min-height:52px!important;margin-top:7px!important;margin-bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important;}
}

/* V19 — 30-day dashboard spacing refinement (only requested visual tweaks)
   - Move title/content stack slightly lower
   - Make top two image buttons higher
   - Keep current spacing rhythm, enlarge utility icon/text slightly
   - Preserve fullscreen, routing and all existing functions
*/
.courseHomeBg.thirtyCourseHome .courseHero{
  height:42.2svh!important;
  min-height:318px!important;
  max-height:382px!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:auto!important;
  top:78.2%!important;
  transform:translateY(-50%)!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid{
  margin-top:12px!important;
  gap:10px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:116px!important;
  min-height:116px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn span{
  font-size:clamp(11.5px, 3.25vw, 15.5px)!important;
  bottom:20px!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{
  margin-top:10px!important;
  gap:9px!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{
  height:78px!important;
  min-height:78px!important;
  padding:8px 4px 7px!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{
  width:27px!important;
  height:27px!important;
  margin-bottom:7px!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon svg{
  width:27px!important;
  height:27px!important;
  stroke-width:2.1!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{
  font-size:8.9px!important;
  letter-spacing:.105em!important;
  line-height:1.05!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  height:60px!important;
  min-height:60px!important;
  margin-top:10px!important;
  margin-bottom:calc(env(safe-area-inset-bottom,0px) + 10px)!important;
}

@media(max-height:760px){
  .courseHomeBg.thirtyCourseHome .courseHero{
    height:40.4svh!important;
    min-height:286px!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{
    top:77.5%!important;
  }
  .courseHomeBg.thirtyCourseHome .pathGrid{
    margin-top:9px!important;
    gap:8px!important;
  }
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
    height:102px!important;
    min-height:102px!important;
  }
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{
    gap:7px!important;
    margin-top:8px!important;
  }
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{
    height:69px!important;
    min-height:69px!important;
    padding-top:7px!important;
  }
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{
    width:23px!important;
    height:23px!important;
    margin-bottom:5px!important;
  }
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{
    font-size:8.0px!important;
  }
  .courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
    height:52px!important;
    min-height:52px!important;
    margin-top:7px!important;
    margin-bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important;
  }
}

/* === V20 · 30-day dashboard premium responsive control-center polish ===
   Scoped only to .thirtyCourseHome. Keeps routing/functions/images untouched.
   Goal: same proportional layout in Safari browser + home-screen PWA, stronger hierarchy,
   calmer headline block, 3x2 utility grid, database visible on one screen. */
.courseHomeBg.thirtyCourseHome{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:
    clamp(310px, 39.5dvh, 390px)
    clamp(100px, 12.7dvh, 128px)
    clamp(176px, 22.2dvh, 224px)
    clamp(54px, 7.0dvh, 66px)!important;
  row-gap:clamp(9px, 1.25dvh, 13px)!important;
  padding-bottom:calc(env(safe-area-inset-bottom,0px) + clamp(8px, 1.1dvh, 14px))!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  grid-row:1!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  flex:unset!important;
  position:relative!important;
  background-position:center top!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .courseHero::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.08) 42%, rgba(0,0,0,.48) 76%, rgba(0,0,0,.94) 100%),
    radial-gradient(ellipse at 50% 78%, rgba(0,0,0,.68) 0%, rgba(0,0,0,.34) 34%, rgba(0,0,0,0) 62%)!important;
  z-index:1!important;
}
.courseHomeBg.thirtyCourseHome .courseHero::after{display:none!important;}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  z-index:2!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:clamp(18px, 3.4dvh, 34px)!important;
  transform:none!important;
  padding:0 18px!important;
  text-align:center!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  content:'AI DISCIPLINE SYSTEM'!important;
  display:block!important;
  margin:0 auto 8px!important;
  font-family:var(--font-c)!important;
  font-size:clamp(9px, 2.5vw, 12px)!important;
  line-height:1!important;
  letter-spacing:.26em!important;
  color:rgba(213,178,91,.86)!important;
  text-shadow:0 2px 12px rgba(0,0,0,.9)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  display:block!important;
  font-size:clamp(28px, 7.35vw, 39px)!important;
  line-height:.94!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 6px 26px rgba(0,0,0,.98), 0 0 1px rgba(255,255,255,.18)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  content:''!important;
  display:block!important;
  width:88px!important;
  height:1px!important;
  margin:11px auto 0!important;
  background:linear-gradient(90deg, transparent, rgba(204,169,82,.56), transparent)!important;
  opacity:.55!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid{
  grid-row:2!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(10px, 2.2vw, 13px)!important;
  margin:0!important;
  padding:0 16px!important;
  align-self:stretch!important;
  flex:unset!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  width:100%!important;
  margin:0!important;
  border-radius:13px!important;
  border:1.15px solid rgba(210,174,86,.54)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.035) inset, 0 12px 24px rgba(0,0,0,.40), 0 0 14px rgba(210,174,86,.07)!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn::before{
  background:linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.62))!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn span{
  bottom:clamp(15px,2.1dvh,21px)!important;
  font-size:clamp(10px, 2.85vw, 13.2px)!important;
  line-height:1.05!important;
  letter-spacing:.075em!important;
  text-shadow:0 3px 13px rgba(0,0,0,.95)!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{
  grid-row:3!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(8px, 1.35dvh, 11px) clamp(8px, 2vw, 11px)!important;
  padding:0 16px!important;
  margin:0!important;
  align-self:stretch!important;
  flex:unset!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  margin:0!important;
  border-radius:12px!important;
  padding:clamp(8px,1.25dvh,11px) 4px clamp(7px,1.05dvh,9px)!important;
  justify-content:center!important;
  background:
    linear-gradient(180deg, rgba(72,66,43,.42) 0%, rgba(16,16,14,.82) 52%, rgba(6,6,6,.96) 100%)!important;
  border:1.05px solid rgba(210,174,86,.52)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.035) inset, 0 8px 18px rgba(0,0,0,.35), 0 0 12px rgba(210,174,86,.055)!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{
  width:clamp(24px, 6vw, 30px)!important;
  height:clamp(24px, 6vw, 30px)!important;
  margin:0 0 clamp(5px,.9dvh,8px)!important;
  opacity:.92!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon svg{
  width:100%!important;
  height:100%!important;
  stroke-width:2.05!important;
  stroke:rgba(211,176,88,.86)!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{
  font-size:clamp(7.4px, 2.08vw, 9.2px)!important;
  line-height:1.02!important;
  letter-spacing:.105em!important;
  text-align:center!important;
  white-space:normal!important;
  padding:0 2px!important;
  color:rgba(245,242,235,.95)!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile::after{
  inset:auto 24% clamp(6px,.85dvh,8px) 24%!important;
  opacity:.33!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  grid-row:4!important;
  height:auto!important;
  min-height:0!important;
  margin:0 16px!important;
  border-radius:12px!important;
  border:1.05px solid rgba(210,174,86,.54)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.035) inset, 0 8px 18px rgba(0,0,0,.36), 0 0 12px rgba(210,174,86,.045)!important;
  background-image:none!important;
  background:linear-gradient(180deg, rgba(14,14,13,.92), rgba(3,3,3,.98))!important;
  flex:unset!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom span{
  font-size:clamp(13px, 3.4vw, 17px)!important;
  letter-spacing:.15em!important;
}
@media(max-height:760px){
  .courseHomeBg.thirtyCourseHome{
    grid-template-rows:
      clamp(276px, 37.5dvh, 320px)
      clamp(88px, 12.0dvh, 102px)
      clamp(152px, 21.4dvh, 176px)
      clamp(48px, 6.3dvh, 56px)!important;
    row-gap:clamp(7px, 1.0dvh, 10px)!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:clamp(13px,2.4dvh,20px)!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(24px,6.55vw,34px)!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroContent::before{font-size:8px!important;margin-bottom:6px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle::after{margin-top:8px!important;width:74px!important;}
  .courseHomeBg.thirtyCourseHome .pathGrid{gap:8px!important;padding:0 16px!important;}
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn span{font-size:clamp(9px,2.55vw,11.5px)!important;bottom:13px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{gap:7px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{border-radius:11px!important;padding-top:6px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{width:21px!important;height:21px!important;margin-bottom:4px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{font-size:7.0px!important;letter-spacing:.095em!important;}
}

/* === V21 · 30-day dashboard framed control area ===
   Only visual layout for 30-day course dashboard. Routes/onclicks unchanged. */
.courseHomeBg.thirtyCourseHome{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:clamp(340px, 42.7dvh, 410px) minmax(0, 1fr)!important;
  row-gap:clamp(10px, 1.45dvh, 15px)!important;
  padding-bottom:calc(env(safe-area-inset-bottom,0px) + clamp(9px,1.15dvh,14px))!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  grid-row:1!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(4px, 1.0dvh, 10px)!important;
  padding:0 18px!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  content:'AI DISCIPLINE SYSTEM'!important;
  display:block!important;
  margin:0 auto 7px!important;
  font-family:var(--font-c)!important;
  font-size:clamp(10px, 2.75vw, 13px)!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.24em!important;
  color:rgba(224,188,96,.95)!important;
  opacity:1!important;
  text-shadow:0 4px 18px rgba(0,0,0,1), 0 0 10px rgba(211,176,88,.16)!important;
  filter:none!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(29px, 7.55vw, 40px)!important;
  letter-spacing:.04em!important;
  text-shadow:0 8px 28px rgba(0,0,0,1), 0 0 1px rgba(255,255,255,.28)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  width:112px!important;
  margin-top:9px!important;
  opacity:.52!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  grid-row:2!important;
  display:grid!important;
  grid-template-rows:clamp(86px, 12.2dvh, 112px) 1px minmax(134px, 1fr) 1px clamp(48px, 6.8dvh, 62px)!important;
  row-gap:clamp(8px, 1.12dvh, 11px)!important;
  margin:0 14px!important;
  padding:clamp(10px,1.35dvh,13px)!important;
  border-radius:18px!important;
  border:1px solid rgba(205,169,82,.38)!important;
  background:linear-gradient(180deg, rgba(7,7,6,.40) 0%, rgba(5,5,5,.62) 48%, rgba(2,2,2,.88) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,225,145,.025) inset, 0 18px 36px rgba(0,0,0,.50), 0 0 24px rgba(203,165,76,.055)!important;
  backdrop-filter:blur(1px)!important;
  min-height:0!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .dashboardFrameDivider{
  width:100%!important;
  height:1px!important;
  background:linear-gradient(90deg, transparent 0%, rgba(207,170,82,.30) 22%, rgba(207,170,82,.30) 78%, transparent 100%)!important;
  opacity:.72!important;
}
.courseHomeBg.thirtyCourseHome .dashboardFrameDividerDatabase{opacity:.55!important;}
.courseHomeBg.thirtyCourseHome .pathGrid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(10px, 2.25vw, 13px)!important;
  margin:0!important;
  padding:0!important;
  align-self:stretch!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  border-radius:12px!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn span{
  font-size:clamp(10.5px, 2.95vw, 13.6px)!important;
  bottom:clamp(13px, 2dvh, 17px)!important;
  letter-spacing:.072em!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(8px, 1.18dvh, 10px) clamp(8px, 1.9vw, 10px)!important;
  padding:0!important;
  margin:0!important;
  min-height:0!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile{
  height:auto!important;
  min-height:0!important;
  border-radius:12px!important;
  padding:clamp(8px,1.25dvh,11px) 3px clamp(7px,1dvh,9px)!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{
  width:clamp(27px, 6.7vw, 34px)!important;
  height:clamp(27px, 6.7vw, 34px)!important;
  margin-bottom:clamp(5px,.85dvh,7px)!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon svg{
  stroke-width:2.15!important;
}
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{
  font-size:clamp(8.4px, 2.33vw, 10.4px)!important;
  letter-spacing:.095em!important;
  line-height:1.04!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:12px!important;
  align-self:stretch!important;
}
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom span{
  font-size:clamp(13.5px, 3.55vw, 17.5px)!important;
  letter-spacing:.15em!important;
}

@media(max-height:760px){
  .courseHomeBg.thirtyCourseHome{
    grid-template-rows:clamp(292px, 39.0dvh, 326px) minmax(0, 1fr)!important;
    row-gap:8px!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:4px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroContent::before{font-size:8.5px!important;margin-bottom:5px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(25px,6.9vw,35px)!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    grid-template-rows:clamp(78px, 11.3dvh, 94px) 1px minmax(118px,1fr) 1px clamp(44px,6.1dvh,52px)!important;
    row-gap:7px!important;
    padding:9px!important;
  }
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix{gap:7px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumTileIcon{width:23px!important;height:23px!important;margin-bottom:4px!important;}
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid.premiumUtilityGridSix .premiumUtilityTile span{font-size:7.3px!important;}
}

/* === V22 · exact framed 30-day dashboard rebuild from approved mockup ===
   Only affects the 30-day course dashboard visual layout. No routing/functionality changes. */
.courseHomeBg.thirtyCourseHome{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:clamp(318px, 41.2dvh, 386px) minmax(0,1fr)!important;
  row-gap:clamp(6px,.9dvh,10px)!important;
  padding:0 0 calc(env(safe-area-inset-bottom,0px) + 8px)!important;
  background-color:#020202!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  grid-row:1!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  background-position:center top!important;
  background-size:cover!important;
  border:0!important;
  flex:none!important;
}
.courseHomeBg.thirtyCourseHome .courseHero::after{
  display:block!important;
  background:linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.14) 48%, rgba(0,0,0,.80) 100%)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(8px,1.45dvh,16px)!important;
  padding:0 18px!important;
  z-index:3!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  content:'AI DISCIPLINE SYSTEM'!important;
  display:block!important;
  margin:0 auto clamp(5px,.8dvh,8px)!important;
  font-family:var(--font-c)!important;
  font-size:clamp(11px,3vw,14px)!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.25em!important;
  color:#d9b45f!important;
  opacity:1!important;
  text-shadow:0 3px 12px rgba(0,0,0,1), 0 0 16px rgba(217,180,95,.24)!important;
  filter:none!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  display:block!important;
  margin:0 auto!important;
  font-family:var(--font-c)!important;
  font-size:clamp(34px,8.8vw,48px)!important;
  line-height:.88!important;
  letter-spacing:.035em!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:0 8px 30px rgba(0,0,0,1), 0 0 2px rgba(255,255,255,.22)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  content:''!important;
  display:block!important;
  width:clamp(96px,26vw,126px)!important;
  height:1px!important;
  margin:clamp(8px,1.05dvh,12px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.55),transparent)!important;
  opacity:.78!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  grid-row:2!important;
  align-self:stretch!important;
  display:grid!important;
  grid-template-rows:clamp(118px,15.2dvh,148px) clamp(16px,2.0dvh,22px) minmax(222px,1fr) clamp(16px,2.0dvh,22px) clamp(66px,8.3dvh,86px)!important;
  row-gap:clamp(9px,1.2dvh,13px)!important;
  margin:0 14px!important;
  padding:clamp(11px,1.35dvh,15px)!important;
  border-radius:19px!important;
  border:1.15px solid rgba(211,176,88,.58)!important;
  background:
    radial-gradient(circle at 50% 0%, rgba(214,178,90,.08), transparent 34%),
    linear-gradient(180deg, rgba(7,7,6,.50) 0%, rgba(3,3,3,.84) 58%, rgba(2,2,2,.96) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,230,150,.035) inset, 0 18px 36px rgba(0,0,0,.55), 0 0 26px rgba(213,177,88,.075)!important;
  backdrop-filter:blur(1px)!important;
  min-height:0!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid{
  grid-row:1!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(10px,2.35vw,14px)!important;
  margin:0!important;
  padding:0!important;
  align-self:stretch!important;
  width:100%!important;
  height:100%!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDivider:first-of-type{grid-row:2!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix{grid-row:3!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{grid-row:4!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{grid-row:5!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDivider{
  width:100%!important;
  align-self:center!important;
  height:1px!important;
  background:linear-gradient(90deg, transparent 0%, rgba(209,173,84,.52) 15%, rgba(236,201,110,.50) 50%, rgba(209,173,84,.52) 85%, transparent 100%)!important;
  box-shadow:0 0 10px rgba(212,176,88,.15)!important;
  opacity:.82!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{opacity:.76!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  border-radius:12px!important;
  border:1.15px solid rgba(211,176,88,.62)!important;
  overflow:hidden!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.04) inset, 0 12px 24px rgba(0,0,0,.44), 0 0 14px rgba(211,176,88,.08)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn::before{
  background:linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.38) 46%, rgba(0,0,0,.74) 100%)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  bottom:clamp(14px,2.0dvh,20px)!important;
  left:8px!important;
  right:8px!important;
  font-size:clamp(13px,3.55vw,17px)!important;
  line-height:1.08!important;
  letter-spacing:.075em!important;
  text-align:center!important;
  color:#fff!important;
  text-shadow:0 4px 14px rgba(0,0,0,1)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGrid.premiumUtilityGridSix{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(10px,1.38dvh,14px) clamp(9px,2.05vw,13px)!important;
  padding:0!important;
  margin:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  width:100%!important;
  margin:0!important;
  border-radius:12px!important;
  padding:clamp(10px,1.35dvh,14px) 4px clamp(8px,1dvh,11px)!important;
  justify-content:center!important;
  background:
    radial-gradient(circle at 50% 4%, rgba(217,181,92,.13), transparent 44%),
    linear-gradient(180deg, rgba(69,63,43,.56) 0%, rgba(17,17,15,.86) 54%, rgba(5,5,5,.98) 100%)!important;
  border:1.1px solid rgba(211,176,88,.63)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.035) inset, 0 10px 20px rgba(0,0,0,.40), 0 0 13px rgba(211,176,88,.075)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{
  width:clamp(33px,8.0vw,43px)!important;
  height:clamp(33px,8.0vw,43px)!important;
  margin:0 0 clamp(7px,1dvh,10px)!important;
  opacity:.98!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon svg{
  width:100%!important;
  height:100%!important;
  stroke:rgba(218,181,91,.92)!important;
  stroke-width:2.25!important;
  filter:drop-shadow(0 0 6px rgba(218,181,91,.16))!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{
  font-size:clamp(10.7px,2.85vw,13.4px)!important;
  line-height:1.03!important;
  letter-spacing:.095em!important;
  text-align:center!important;
  white-space:normal!important;
  color:#fff!important;
  text-shadow:0 3px 9px rgba(0,0,0,.9)!important;
  padding:0 2px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile::after{
  inset:auto 20% clamp(6px,.8dvh,8px) 20%!important;
  opacity:.38!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(14px,3.2vw,20px)!important;
  height:auto!important;
  min-height:0!important;
  width:100%!important;
  margin:0!important;
  border-radius:12px!important;
  background-image:none!important;
  background:linear-gradient(180deg, rgba(16,16,15,.90), rgba(3,3,3,.99))!important;
  border:1.1px solid rgba(211,176,88,.62)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.035) inset, 0 10px 22px rgba(0,0,0,.42), 0 0 14px rgba(211,176,88,.065)!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom::before,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom::after{display:none!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseIcon{
  position:static!important;
  display:block!important;
  width:clamp(30px,7.2vw,40px)!important;
  height:clamp(30px,7.2vw,40px)!important;
  color:rgba(218,181,91,.92)!important;
  z-index:3!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseIcon svg{
  width:100%!important;
  height:100%!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.25!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseText{
  position:static!important;
  transform:none!important;
  font-size:clamp(20px,5.2vw,28px)!important;
  letter-spacing:.12em!important;
  color:#fff!important;
  text-shadow:0 4px 12px rgba(0,0,0,.95)!important;
  z-index:3!important;
}
@media(max-height:760px){
  .courseHomeBg.thirtyCourseHome{grid-template-rows:clamp(292px,38.2dvh,318px) minmax(0,1fr)!important;row-gap:6px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 6px)!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:5px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroContent::before{font-size:9.4px!important;margin-bottom:5px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(29px,7.9vw,38px)!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{grid-template-rows:clamp(104px,14.2dvh,118px) 14px minmax(198px,1fr) 14px clamp(56px,7.5dvh,68px)!important;row-gap:7px!important;padding:9px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{font-size:clamp(11px,3.1vw,14px)!important;bottom:12px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix{gap:8px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{padding-top:8px!important;border-radius:10px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{width:28px!important;height:28px!important;margin-bottom:5px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{font-size:8.8px!important;letter-spacing:.09em!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseText{font-size:18px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseIcon{width:28px!important;height:28px!important;}
}

/* === V23 · 30-day framed dashboard fit + alignment correction ===
   Scope: 30-day course dashboard only. Keeps all existing HTML, onclicks, assets and functions.
   Fixes: all framed buttons visible, top card text centered/not clipped, larger corridor, balanced spacing. */
.courseHomeBg.thirtyCourseHome{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:clamp(286px,36.8dvh,340px) minmax(0,1fr)!important;
  row-gap:clamp(6px,.8dvh,8px)!important;
  padding:0 0 calc(env(safe-area-inset-bottom,0px) + 8px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  grid-row:1!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(9px,1.4dvh,14px)!important;
  padding:0 14px!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  font-size:clamp(10.5px,2.85vw,13px)!important;
  letter-spacing:.25em!important;
  margin-bottom:clamp(4px,.65dvh,7px)!important;
  color:#d9b45f!important;
  text-shadow:0 4px 16px #000,0 0 12px rgba(217,180,95,.18)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(33px,8.5vw,45px)!important;
  line-height:.9!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  margin-top:clamp(7px,.9dvh,10px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  grid-row:2!important;
  align-self:stretch!important;
  min-height:0!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:clamp(104px,13.2dvh,126px) clamp(13px,1.55dvh,18px) minmax(200px,1fr) clamp(13px,1.55dvh,18px) clamp(58px,7.1dvh,72px)!important;
  row-gap:clamp(7px,.82dvh,9px)!important;
  margin:0 14px!important;
  padding:clamp(9px,1.05dvh,12px)!important;
  border-radius:18px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid{
  grid-row:1!important;
  height:100%!important;
  width:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(10px,2.3vw,13px)!important;
  padding:0!important;
  margin:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  height:100%!important;
  min-height:0!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:12px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:clamp(12px,1.7dvh,16px)!important;
  transform:translateX(-50%)!important;
  width:calc(100% - 18px)!important;
  max-width:calc(100% - 18px)!important;
  text-align:center!important;
  white-space:normal!important;
  overflow:visible!important;
  font-size:clamp(12px,3.25vw,15.2px)!important;
  line-height:1.05!important;
  letter-spacing:.072em!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGrid.premiumUtilityGridSix{
  grid-row:3!important;
  min-height:0!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(9px,1.05dvh,12px) clamp(9px,2vw,12px)!important;
  padding:0!important;
  margin:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{
  min-height:0!important;
  height:100%!important;
  border-radius:12px!important;
  padding:clamp(8px,.95dvh,10px) 4px clamp(7px,.8dvh,9px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{
  width:clamp(30px,7.4vw,38px)!important;
  height:clamp(30px,7.4vw,38px)!important;
  margin-bottom:clamp(5px,.7dvh,7px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{
  font-size:clamp(9.6px,2.55vw,12px)!important;
  line-height:1.03!important;
  letter-spacing:.095em!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  grid-row:5!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  border-radius:12px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseText{
  font-size:clamp(18px,4.7vw,25px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseIcon{
  width:clamp(28px,6.8vw,36px)!important;
  height:clamp(28px,6.8vw,36px)!important;
}
@media(max-height:760px){
  .courseHomeBg.thirtyCourseHome{
    grid-template-rows:clamp(260px,35.5dvh,292px) minmax(0,1fr)!important;
    row-gap:5px!important;
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 6px)!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:5px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroContent::before{font-size:8.8px!important;margin-bottom:4px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(27px,7.25vw,36px)!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    grid-template-rows:clamp(94px,12.4dvh,106px) 11px minmax(176px,1fr) 11px clamp(50px,6.6dvh,58px)!important;
    row-gap:6px!important;
    padding:8px!important;
  }
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{font-size:clamp(10.5px,2.95vw,13px)!important;bottom:10px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGrid.premiumUtilityGridSix{gap:7px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{width:25px!important;height:25px!important;margin-bottom:4px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{font-size:8.1px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseText{font-size:16px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseIcon{width:24px!important;height:24px!important;}
}

/* FINAL POLISH 2026-05-21 — course homes aligned exactly to current visual target */
.courseHomeBg.sevenCourseHome,
.courseHomeBg.thirtyCourseHome{
  background:#000!important;
}

.sevenCourseHome .courseHero,
.thirtyCourseHome .courseHero{
  height:43.5vh!important;
  min-height:360px!important;
  max-height:480px!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.12) 44%,rgba(0,0,0,.88) 100%),url('assets/img/home-reset.jpg')!important;
  background-size:cover!important;
  background-position:center top!important;
  border:0!important;
  margin:0!important;
}
.sevenCourseHome .courseHero::after,
.thirtyCourseHome .courseHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.15) 50%,#000 100%)!important;
}
.sevenCourseHome .courseHeroContent,
.thirtyCourseHome .courseHeroContent{
  padding:0 18px 20px!important;
  justify-content:flex-end!important;
  transform:none!important;
}
.sevenCourseHome .courseHeroTitle,
.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(39px,10.2vw,56px)!important;
  line-height:.9!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  max-width:92vw!important;
  margin:0 auto!important;
  color:#fff!important;
  text-shadow:0 4px 20px rgba(0,0,0,.95)!important;
}

.sevenCourseHome .dashboardControlFrame,
.thirtyCourseHome .dashboardControlFrame{
  width:calc(100% - 28px)!important;
  max-width:760px!important;
  margin:-2px auto calc(var(--sab) + 34px)!important;
  padding:10px!important;
  border:1.05px solid rgba(198,156,78,.58)!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,rgba(13,12,8,.36),rgba(0,0,0,.76))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.055) inset,0 18px 42px rgba(0,0,0,.58),0 0 18px rgba(198,156,78,.12)!important;
}
.sevenCourseHome .dashboardFrameDivider,
.thirtyCourseHome .dashboardFrameDivider{
  height:1px!important;
  margin:14px 6px 16px!important;
  background:linear-gradient(90deg,transparent,rgba(198,156,78,.28),transparent)!important;
}
.sevenCourseHome .dashboardFrameDividerDatabase,
.thirtyCourseHome .dashboardFrameDividerDatabase{
  margin:16px 6px 14px!important;
}

.sevenCourseHome .sevenHomeActions{
  margin:0!important;
  padding:0!important;
}
.sevenCourseHome .sevenHomeActions .choiceCard,
.sevenCourseHome .sevenStartCard{
  width:100%!important;
  height:112px!important;
  min-height:112px!important;
  margin:0!important;
  border-radius:20px!important;
  border:1.05px solid rgba(198,156,78,.62)!important;
  background-size:cover!important;
  background-position:center center!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.07) inset,0 10px 24px rgba(0,0,0,.42),0 0 14px rgba(198,156,78,.12)!important;
}
.sevenCourseHome .sevenStartCard::after{
  background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.60))!important;
}
.sevenCourseHome .sevenStartCard .choiceInner{
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  padding:0 18px!important;
}
.sevenCourseHome .sevenStartCard .choiceText,
.sevenCourseHome .sevenStartCard .choiceText h3,
.sevenCourseHome .sevenStartCard .choiceSubLabel{
  text-align:center!important;
  width:100%!important;
}
.sevenCourseHome .sevenStartCard .choiceSubLabel{
  font-size:13px!important;
  letter-spacing:.34em!important;
  color:rgba(246,239,220,.72)!important;
}
.sevenCourseHome .sevenStartCard h3{
  font-size:24px!important;
  letter-spacing:.06em!important;
  line-height:1!important;
  margin-top:9px!important;
}

.sevenCourseHome .pathGrid,
.thirtyCourseHome .pathGrid{
  gap:10px!important;
  margin:0!important;
}
.sevenCourseHome .pathImageBtn,
.thirtyCourseHome .pathImageBtn{
  border-radius:19px!important;
  border:1.05px solid rgba(198,156,78,.62)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.07) inset,0 10px 24px rgba(0,0,0,.42),0 0 14px rgba(198,156,78,.12)!important;
}
.thirtyCourseHome .pathGrid .pathImageBtn{
  height:102px!important;
  min-height:102px!important;
}
.thirtyCourseHome .pathGrid .pathImageBtn span{
  font-size:20px!important;
  letter-spacing:.055em!important;
}

.sevenCourseHome .premiumUtilityGrid,
.thirtyCourseHome .premiumUtilityGrid{
  width:100%!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:10px!important;
}
.sevenCourseHome .premiumUtilityTile,
.thirtyCourseHome .premiumUtilityTile{
  height:112px!important;
  min-height:112px!important;
  padding:12px 7px 13px!important;
  border-radius:19px!important;
  border:1.05px solid rgba(198,156,78,.60)!important;
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 9px 22px rgba(0,0,0,.40),0 0 13px rgba(198,156,78,.11)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
.sevenCourseHome .premiumTileIcon,
.thirtyCourseHome .premiumTileIcon{
  width:36px!important;
  height:36px!important;
  margin:0 0 17px!important;
  color:rgba(211,169,83,.96)!important;
  filter:drop-shadow(0 0 8px rgba(198,156,78,.22))!important;
}
.sevenCourseHome .premiumUtilityTile span,
.thirtyCourseHome .premiumUtilityTile span{
  font-size:13px!important;
  line-height:1.05!important;
  letter-spacing:.095em!important;
  text-align:center!important;
  color:rgba(247,244,237,.96)!important;
  white-space:normal!important;
}

.sevenCourseHome .journalDatabaseBtn,
.thirtyCourseHome .journalDatabaseBtn{
  height:76px!important;
  min-height:76px!important;
  margin:0!important;
  border-radius:19px!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.68),rgba(0,0,0,.92)),url('assets/img/archieve.jpg')!important;
  background-size:cover!important;
  background-position:center center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseGroup,
.thirtyCourseHome .journalDatabaseBtn .databaseGroup{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  transform:translateX(-2px)!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseIcon,
.thirtyCourseHome .journalDatabaseBtn .databaseIcon{
  display:inline-flex!important;
  width:34px!important;
  height:34px!important;
  color:rgba(211,169,83,.95)!important;
  flex:0 0 34px!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseIcon svg,
.thirtyCourseHome .journalDatabaseBtn .databaseIcon svg{
  width:34px!important;
  height:34px!important;
  stroke:currentColor!important;
  fill:none!important;
  stroke-width:3!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseText,
.thirtyCourseHome .journalDatabaseBtn .databaseText,
.sevenCourseHome .journalDatabaseBtn > span:not(.databaseGroup),
.thirtyCourseHome .journalDatabaseBtn > span:not(.databaseGroup){
  font-size:25px!important;
  letter-spacing:.16em!important;
  line-height:1!important;
  color:#f4f1ea!important;
  text-align:center!important;
}

@media(max-width:430px){
  .sevenCourseHome .dashboardControlFrame,
  .thirtyCourseHome .dashboardControlFrame{width:calc(100% - 30px)!important;padding:9px!important;border-radius:24px!important;}
  .sevenCourseHome .premiumUtilityGrid,
  .thirtyCourseHome .premiumUtilityGrid{gap:9px!important;}
  .sevenCourseHome .premiumUtilityTile,
  .thirtyCourseHome .premiumUtilityTile{height:107px!important;min-height:107px!important;border-radius:18px!important;}
  .sevenCourseHome .premiumUtilityTile span,
  .thirtyCourseHome .premiumUtilityTile span{font-size:12px!important;letter-spacing:.085em!important;}
  .sevenCourseHome .premiumTileIcon,
  .thirtyCourseHome .premiumTileIcon{width:33px!important;height:33px!important;margin-bottom:15px!important;}
  .thirtyCourseHome .pathGrid .pathImageBtn{height:96px!important;min-height:96px!important;}
  .sevenCourseHome .sevenStartCard{height:104px!important;min-height:104px!important;}
  .sevenCourseHome .journalDatabaseBtn,
  .thirtyCourseHome .journalDatabaseBtn{height:72px!important;min-height:72px!important;}
}

@media(max-height:780px){
  .sevenCourseHome .courseHero,
  .thirtyCourseHome .courseHero{height:39.5vh!important;min-height:314px!important;}
  .sevenCourseHome .dashboardControlFrame,
  .thirtyCourseHome .dashboardControlFrame{margin-bottom:calc(var(--sab) + 24px)!important;}
  .sevenCourseHome .premiumUtilityTile,
  .thirtyCourseHome .premiumUtilityTile{height:96px!important;min-height:96px!important;}
  .sevenCourseHome .premiumTileIcon,
  .thirtyCourseHome .premiumTileIcon{width:30px!important;height:30px!important;margin-bottom:12px!important;}
  .sevenCourseHome .premiumUtilityTile span,
  .thirtyCourseHome .premiumUtilityTile span{font-size:11px!important;}
  .thirtyCourseHome .pathGrid .pathImageBtn{height:86px!important;min-height:86px!important;}
  .sevenCourseHome .sevenStartCard{height:92px!important;min-height:92px!important;}
  .sevenCourseHome .journalDatabaseBtn,
  .thirtyCourseHome .journalDatabaseBtn{height:66px!important;min-height:66px!important;}
}

/* STEP 21 — precision correction from screenshot: identical hood hero, compact utility tiles, cleaner frame */
.sevenCourseHome .courseHero,
.thirtyCourseHome .courseHero{
  height:38vh!important;
  min-height:300px!important;
  max-height:360px!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.14) 44%,rgba(0,0,0,.70) 82%,#000 100%),url('assets/img/home-reset.jpg')!important;
  background-size:cover!important;
  background-position:center top!important;
}
.sevenCourseHome .courseHero:before,
.thirtyCourseHome .courseHero:before,
.sevenCourseHome .courseHero .miniLabel,
.thirtyCourseHome .courseHero .miniLabel{
  display:none!important;
  content:none!important;
}
.sevenCourseHome .courseHeroContent,
.thirtyCourseHome .courseHeroContent{
  bottom:18px!important;
  padding:0 16px!important;
}
.sevenCourseHome .courseHeroTitle,
.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(37px,9.4vw,52px)!important;
  letter-spacing:.045em!important;
}
.sevenCourseHome .dashboardControlFrame,
.thirtyCourseHome .dashboardControlFrame{
  width:calc(100% - 30px)!important;
  margin:-4px auto calc(var(--sab) + 28px)!important;
  padding:9px!important;
  border:1px solid rgba(198,156,78,.50)!important;
  border-radius:25px!important;
  background:linear-gradient(180deg,rgba(13,12,8,.28),rgba(0,0,0,.80))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.04) inset,0 16px 36px rgba(0,0,0,.56),0 0 14px rgba(198,156,78,.10)!important;
}
.sevenCourseHome .dashboardFrameDivider,
.thirtyCourseHome .dashboardFrameDivider{
  margin:11px 5px 12px!important;
  opacity:.75!important;
}
.sevenCourseHome .dashboardFrameDividerDatabase,
.thirtyCourseHome .dashboardFrameDividerDatabase{
  margin:12px 5px 12px!important;
}
.sevenCourseHome .sevenStartCard{
  height:92px!important;
  min-height:92px!important;
  border-radius:19px!important;
}
.sevenCourseHome .sevenStartCard .choiceSubLabel{
  font-size:11px!important;
  letter-spacing:.32em!important;
}
.sevenCourseHome .sevenStartCard h3{
  font-size:22px!important;
  margin-top:7px!important;
}
.thirtyCourseHome .pathGrid{gap:8px!important;}
.thirtyCourseHome .pathGrid .pathImageBtn{
  height:86px!important;
  min-height:86px!important;
  border-radius:18px!important;
}
.thirtyCourseHome .pathGrid .pathImageBtn span{
  font-size:18px!important;
  letter-spacing:.055em!important;
}
.sevenCourseHome .premiumUtilityGrid,
.thirtyCourseHome .premiumUtilityGrid{
  gap:8px!important;
}
.sevenCourseHome .premiumUtilityTile,
.thirtyCourseHome .premiumUtilityTile{
  height:84px!important;
  min-height:84px!important;
  padding:8px 5px 9px!important;
  border-radius:17px!important;
  border:1px solid rgba(198,156,78,.56)!important;
  background:radial-gradient(circle at 50% 9%,rgba(198,156,78,.15),rgba(18,18,14,.70) 45%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 8px 18px rgba(0,0,0,.38),0 0 10px rgba(198,156,78,.09)!important;
}
.sevenCourseHome .premiumTileIcon,
.thirtyCourseHome .premiumTileIcon{
  width:27px!important;
  height:27px!important;
  margin:0 0 11px!important;
}
.sevenCourseHome .premiumUtilityTile span,
.thirtyCourseHome .premiumUtilityTile span{
  font-size:10.5px!important;
  line-height:1.02!important;
  letter-spacing:.075em!important;
}
.sevenCourseHome .journalDatabaseBtn,
.thirtyCourseHome .journalDatabaseBtn{
  height:62px!important;
  min-height:62px!important;
  border-radius:18px!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseGroup,
.thirtyCourseHome .journalDatabaseBtn .databaseGroup{
  gap:14px!important;
  transform:none!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseIcon,
.thirtyCourseHome .journalDatabaseBtn .databaseIcon,
.sevenCourseHome .journalDatabaseBtn .databaseIcon svg,
.thirtyCourseHome .journalDatabaseBtn .databaseIcon svg{
  width:28px!important;
  height:28px!important;
  flex-basis:28px!important;
}
.sevenCourseHome .journalDatabaseBtn .databaseText,
.thirtyCourseHome .journalDatabaseBtn .databaseText{
  font-size:22px!important;
  letter-spacing:.15em!important;
}

@media(max-width:430px){
  .sevenCourseHome .courseHero,
  .thirtyCourseHome .courseHero{height:37vh!important;min-height:292px!important;}
  .sevenCourseHome .dashboardControlFrame,
  .thirtyCourseHome .dashboardControlFrame{width:calc(100% - 30px)!important;padding:8px!important;border-radius:24px!important;}
  .sevenCourseHome .sevenStartCard{height:88px!important;min-height:88px!important;}
  .thirtyCourseHome .pathGrid .pathImageBtn{height:82px!important;min-height:82px!important;}
  .sevenCourseHome .premiumUtilityTile,
  .thirtyCourseHome .premiumUtilityTile{height:78px!important;min-height:78px!important;border-radius:16px!important;}
  .sevenCourseHome .premiumTileIcon,
  .thirtyCourseHome .premiumTileIcon{width:25px!important;height:25px!important;margin-bottom:9px!important;}
  .sevenCourseHome .premiumUtilityTile span,
  .thirtyCourseHome .premiumUtilityTile span{font-size:10px!important;letter-spacing:.045em!important;}
  .sevenCourseHome .journalDatabaseBtn,
  .thirtyCourseHome .journalDatabaseBtn{height:58px!important;min-height:58px!important;}
  .sevenCourseHome .journalDatabaseBtn .databaseText,
  .thirtyCourseHome .journalDatabaseBtn .databaseText{font-size:21px!important;}
}

@media(max-height:780px){
  .sevenCourseHome .courseHero,
  .thirtyCourseHome .courseHero{height:35vh!important;min-height:274px!important;}
  .sevenCourseHome .dashboardControlFrame,
  .thirtyCourseHome .dashboardControlFrame{margin-bottom:calc(var(--sab) + 18px)!important;}
  .sevenCourseHome .premiumUtilityTile,
  .thirtyCourseHome .premiumUtilityTile{height:74px!important;min-height:74px!important;}
  .sevenCourseHome .premiumTileIcon,
  .thirtyCourseHome .premiumTileIcon{width:23px!important;height:23px!important;margin-bottom:8px!important;}
  .sevenCourseHome .premiumUtilityTile span,
  .thirtyCourseHome .premiumUtilityTile span{font-size:9.4px!important;}
  .thirtyCourseHome .pathGrid .pathImageBtn{height:76px!important;min-height:76px!important;}
  .sevenCourseHome .sevenStartCard{height:80px!important;min-height:80px!important;}
  .sevenCourseHome .journalDatabaseBtn,
  .thirtyCourseHome .journalDatabaseBtn{height:54px!important;min-height:54px!important;}
}

/* =========================================================
   COURSE HOME REBUILD v24 — unified 7-day + 30-day layout
   Goal: identical structure, smaller utility tiles, centered hero, calmer gold.
   ========================================================= */
.courseHomeBg.sevenCourseHome,
.courseHomeBg.thirtyCourseHome{
  min-height:100vh!important;
  min-height:100dvh!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  display:block!important;
  background:#000!important;
  padding-bottom:calc(var(--sab) + 30px)!important;
}
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  height:43.5vh!important;
  min-height:360px!important;
  max-height:430px!important;
  width:100%!important;
  flex:none!important;
  background-image:url('assets/img/home-reset.jpg')!important;
  background-size:cover!important;
  background-position:center 28%!important;
  background-repeat:no-repeat!important;
  border:0!important;
  margin:0!important;
}
.courseHomeBg.sevenCourseHome .courseHero::before,
.courseHomeBg.thirtyCourseHome .courseHero::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,226,150,.10),transparent 28%),
    linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.16) 42%,rgba(0,0,0,.58) 76%,#000 100%)!important;
}
.courseHomeBg.sevenCourseHome .courseHero::after,
.courseHomeBg.thirtyCourseHome .courseHero::after{
  display:none!important;
  content:none!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:30px!important;
  left:0!important;
  right:0!important;
  padding:0 14px!important;
  text-align:center!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle,
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  margin:0 auto!important;
  max-width:92vw!important;
  font-size:clamp(37px,9.1vw,50px)!important;
  line-height:.95!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 4px 18px rgba(0,0,0,.96),0 0 7px rgba(255,255,255,.14)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroSub,
.courseHomeBg.thirtyCourseHome .courseHeroSub,
.courseHomeBg.sevenCourseHome .courseHero .miniLabel,
.courseHomeBg.thirtyCourseHome .courseHero .miniLabel,
.courseHomeBg.sevenCourseHome .courseHeroContent::before,
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{
  display:none!important;
  content:none!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  width:calc(100% - 36px)!important;
  margin:-2px auto 0!important;
  padding:10px 10px 12px!important;
  border:1px solid rgba(181,143,75,.38)!important;
  border-radius:23px!important;
  background:linear-gradient(180deg,rgba(13,12,9,.22),rgba(0,0,0,.72) 72%,rgba(0,0,0,.92))!important;
  box-shadow:0 0 0 1px rgba(255,232,168,.035) inset,0 16px 36px rgba(0,0,0,.56),0 0 10px rgba(181,143,75,.06)!important;
  overflow:visible!important;
}
.courseHomeBg.sevenCourseHome .dashboardFrameDivider,
.courseHomeBg.thirtyCourseHome .dashboardFrameDivider{
  height:1px!important;
  margin:9px 6px 10px!important;
  background:linear-gradient(90deg,transparent,rgba(181,143,75,.20),transparent)!important;
  opacity:.60!important;
}
.courseHomeBg.sevenCourseHome .dashboardFrameDividerDatabase,
.courseHomeBg.thirtyCourseHome .dashboardFrameDividerDatabase{
  margin:10px 6px 10px!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions{
  padding:0!important;
  margin:0!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard{
  width:100%!important;
  height:95px!important;
  min-height:95px!important;
  border-radius:19px!important;
  background-size:cover!important;
  background-position:center 48%!important;
  border:1px solid rgba(181,143,75,.48)!important;
  box-shadow:0 0 0 1px rgba(255,232,168,.045) inset,0 12px 24px rgba(0,0,0,.45),0 0 9px rgba(181,143,75,.08)!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceInner{padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceSubLabel{font-size:10px!important;letter-spacing:.34em!important;color:rgba(245,239,225,.58)!important;}
.courseHomeBg.sevenCourseHome .sevenStartCard h3{font-size:21px!important;line-height:1!important;letter-spacing:.055em!important;margin:7px 0 0!important;}
.courseHomeBg.thirtyCourseHome .pathGrid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
  padding:0!important;
  margin:0!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  height:95px!important;
  min-height:95px!important;
  border-radius:19px!important;
  border:1px solid rgba(181,143,75,.48)!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,232,168,.045) inset,0 12px 24px rgba(0,0,0,.45),0 0 9px rgba(181,143,75,.08)!important;
}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn span{
  font-size:17px!important;
  line-height:1.02!important;
  letter-spacing:.055em!important;
  text-shadow:0 3px 12px rgba(0,0,0,.96)!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityGrid,
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:8px!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile{
  width:100%!important;
  height:70px!important;
  min-height:70px!important;
  aspect-ratio:auto!important;
  padding:7px 4px 6px!important;
  border-radius:15px!important;
  border:1px solid rgba(181,143,75,.42)!important;
  background:radial-gradient(circle at 50% 7%,rgba(181,143,75,.11),rgba(17,17,14,.58) 48%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,232,168,.035) inset,0 7px 15px rgba(0,0,0,.34),0 0 7px rgba(181,143,75,.045)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile::after,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile::after,
.courseHomeBg.sevenCourseHome .premiumUtilityTile span::after,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile span::after{
  display:none!important;
  content:none!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .premiumTileIcon{
  width:22px!important;
  height:22px!important;
  margin:0 0 7px!important;
  color:rgba(190,151,78,.86)!important;
  opacity:.92!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon svg,
.courseHomeBg.thirtyCourseHome .premiumTileIcon svg{
  width:100%!important;
  height:100%!important;
  stroke:currentColor!important;
  stroke-width:3.3!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile span,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile span{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:rgba(248,245,238,.94)!important;
  font-size:8.9px!important;
  line-height:1.05!important;
  letter-spacing:.08em!important;
  text-align:center!important;
  text-decoration:none!important;
  border:0!important;
  white-space:normal!important;
  text-shadow:0 2px 8px rgba(0,0,0,.92)!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn{
  width:100%!important;
  height:55px!important;
  min-height:55px!important;
  margin:0!important;
  border-radius:17px!important;
  border:1px solid rgba(181,143,75,.42)!important;
  background-image:linear-gradient(180deg,rgba(14,14,12,.30),rgba(0,0,0,.82)),url('assets/img/archieve.jpg')!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,232,168,.035) inset,0 8px 18px rgba(0,0,0,.36),0 0 8px rgba(181,143,75,.05)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseGroup,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseGroup{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  width:auto!important;
  height:auto!important;
  transform:none!important;
  margin:0!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseIcon,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseIcon{
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  position:static!important;
  transform:none!important;
  opacity:.86!important;
  color:rgba(190,151,78,.88)!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseIcon svg,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseIcon svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
  stroke:currentColor!important;
  stroke-width:3.2!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseText,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseText{
  display:block!important;
  position:static!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
  font-size:20px!important;
  line-height:1!important;
  letter-spacing:.16em!important;
  text-align:left!important;
  white-space:nowrap!important;
}

@media(max-width:430px){
  .courseHomeBg.sevenCourseHome .courseHero,
  .courseHomeBg.thirtyCourseHome .courseHero{height:43vh!important;min-height:350px!important;background-position:center 26%!important;}
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:28px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroTitle,
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(35px,8.8vw,43px)!important;letter-spacing:.04em!important;}
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{width:calc(100% - 36px)!important;padding:10px!important;border-radius:23px!important;}
}
@media(max-height:820px){
  .courseHomeBg.sevenCourseHome .courseHero,
  .courseHomeBg.thirtyCourseHome .courseHero{height:42vh!important;min-height:332px!important;max-height:380px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:24px!important;}
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{margin-top:-4px!important;padding:9px 10px 11px!important;}
  .courseHomeBg.sevenCourseHome .sevenStartCard,
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{height:88px!important;min-height:88px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityGrid,
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid{gap:7px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityTile,
  .courseHomeBg.thirtyCourseHome .premiumUtilityTile{height:66px!important;min-height:66px!important;border-radius:14px!important;}
  .courseHomeBg.sevenCourseHome .premiumTileIcon,
  .courseHomeBg.thirtyCourseHome .premiumTileIcon{width:20px!important;height:20px!important;margin-bottom:6px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityTile span,
  .courseHomeBg.thirtyCourseHome .premiumUtilityTile span{font-size:8.4px!important;letter-spacing:.07em!important;}
  .courseHomeBg.sevenCourseHome .journalDatabaseBtn,
  .courseHomeBg.thirtyCourseHome .journalDatabaseBtn{height:52px!important;min-height:52px!important;}
}
@media(max-height:740px){
  .courseHomeBg.sevenCourseHome .courseHero,
  .courseHomeBg.thirtyCourseHome .courseHero{height:39vh!important;min-height:300px!important;}
  .courseHomeBg.sevenCourseHome .sevenStartCard,
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{height:82px!important;min-height:82px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityTile,
  .courseHomeBg.thirtyCourseHome .premiumUtilityTile{height:61px!important;min-height:61px!important;}
  .courseHomeBg.sevenCourseHome .journalDatabaseBtn,
  .courseHomeBg.thirtyCourseHome .journalDatabaseBtn{height:48px!important;min-height:48px!important;}
}

/* =========================================================
   FINAL REBUILD LOCK v25 — Course Home 7/30 unified system
   Purpose: stop old patch conflicts, calm gold, smaller tiles,
   centered database, new hood hero used on both course homes.
   ========================================================= */
.courseHomeBg.sevenCourseHome,
.courseHomeBg.thirtyCourseHome{
  --rd-line: rgba(164,126,62,.34);
  --rd-line-strong: rgba(188,147,72,.46);
  --rd-icon: rgba(184,142,69,.78);
  --rd-text: rgba(250,248,242,.94);
  --rd-muted: rgba(250,244,230,.62);
  background:#000!important;
  min-height:100dvh!important;
  height:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding:0 0 calc(var(--sab) + 34px)!important;
}
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  position:relative!important;
  width:100%!important;
  height:46vh!important;
  min-height:386px!important;
  max-height:440px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background-image:url('assets/img/dashboard-hood-hero.jpeg')!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.courseHomeBg.sevenCourseHome .courseHero::before,
.courseHomeBg.thirtyCourseHome .courseHero::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 50% 14%, rgba(255,210,130,.08), transparent 33%),
    linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.05) 36%, rgba(0,0,0,.52) 74%, #000 100%)!important;
  z-index:1!important;
}
.courseHomeBg.sevenCourseHome .courseHero::after,
.courseHomeBg.thirtyCourseHome .courseHero::after{display:none!important;content:none!important;}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  position:absolute!important;
  z-index:2!important;
  left:0!important;
  right:0!important;
  bottom:48px!important;
  padding:0 18px!important;
  text-align:center!important;
  transform:none!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle,
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  margin:0 auto!important;
  width:100%!important;
  max-width:92vw!important;
  font-size:clamp(35px,8.5vw,45px)!important;
  line-height:.94!important;
  letter-spacing:.045em!important;
  white-space:nowrap!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:0 4px 18px rgba(0,0,0,.98),0 0 6px rgba(255,255,255,.10)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent::before,
.courseHomeBg.thirtyCourseHome .courseHeroContent::before,
.courseHomeBg.sevenCourseHome .courseHeroSub,
.courseHomeBg.thirtyCourseHome .courseHeroSub,
.courseHomeBg.sevenCourseHome .courseHero .miniLabel,
.courseHomeBg.thirtyCourseHome .courseHero .miniLabel{display:none!important;content:none!important;}

.courseHomeBg.sevenCourseHome .dashboardControlFrame,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  position:relative!important;
  z-index:3!important;
  width:calc(100% - 42px)!important;
  max-width:430px!important;
  margin:-20px auto 0!important;
  padding:12px 12px 13px!important;
  border:1px solid var(--rd-line)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg, rgba(8,8,7,.50) 0%, rgba(0,0,0,.84) 62%, rgba(0,0,0,.94) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,160,.025) inset, 0 18px 34px rgba(0,0,0,.58), 0 0 9px rgba(164,126,62,.045)!important;
  backdrop-filter:blur(2px)!important;
  -webkit-backdrop-filter:blur(2px)!important;
  overflow:visible!important;
}
.courseHomeBg.sevenCourseHome .dashboardFrameDivider,
.courseHomeBg.thirtyCourseHome .dashboardFrameDivider{
  height:1px!important;
  margin:11px 6px 12px!important;
  background:linear-gradient(90deg, transparent, rgba(164,126,62,.17), transparent)!important;
  opacity:.55!important;
}
.courseHomeBg.sevenCourseHome .dashboardFrameDividerDatabase,
.courseHomeBg.thirtyCourseHome .dashboardFrameDividerDatabase{margin:12px 6px 11px!important;}

.courseHomeBg.sevenCourseHome .sevenHomeActions{padding:0!important;margin:0!important;}
.courseHomeBg.sevenCourseHome .sevenStartCard,
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{
  position:relative!important;
  height:92px!important;
  min-height:92px!important;
  border-radius:18px!important;
  border:1px solid var(--rd-line-strong)!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,226,160,.035) inset,0 10px 22px rgba(0,0,0,.46),0 0 8px rgba(164,126,62,.055)!important;
  overflow:hidden!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard::before,
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn::before,
.courseHomeBg.sevenCourseHome .journalDatabaseBtn::before,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.68))!important;
  pointer-events:none!important;
  z-index:0!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceInner{
  position:relative!important;z-index:1!important;padding:0!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceSubLabel{font-size:10px!important;letter-spacing:.34em!important;color:var(--rd-muted)!important;}
.courseHomeBg.sevenCourseHome .sevenStartCard h3{font-size:21px!important;line-height:1!important;letter-spacing:.055em!important;margin:7px 0 0!important;color:var(--rd-text)!important;}
.courseHomeBg.thirtyCourseHome .pathGrid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:0!important;margin:0!important;}
.courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn > span{
  position:absolute!important;
  z-index:1!important;
  left:8px!important;right:8px!important;bottom:14px!important;top:auto!important;
  transform:none!important;
  width:auto!important;
  display:block!important;
  color:var(--rd-text)!important;
  font-size:clamp(13px,3.3vw,16px)!important;
  line-height:1.05!important;
  letter-spacing:.055em!important;
  text-align:center!important;
  text-shadow:0 3px 12px rgba(0,0,0,.96)!important;
}

.courseHomeBg.sevenCourseHome .premiumUtilityGrid,
.courseHomeBg.thirtyCourseHome .premiumUtilityGrid{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:9px!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile{
  width:100%!important;
  height:74px!important;
  min-height:74px!important;
  aspect-ratio:auto!important;
  padding:8px 4px 7px!important;
  border-radius:15px!important;
  border:1px solid rgba(164,126,62,.36)!important;
  background:linear-gradient(180deg, rgba(164,126,62,.10) 0%, rgba(15,15,13,.46) 45%, rgba(0,0,0,.90) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,160,.025) inset, 0 7px 14px rgba(0,0,0,.34), 0 0 5px rgba(164,126,62,.035)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  text-decoration:none!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile::after,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile::after,
.courseHomeBg.sevenCourseHome .premiumUtilityTile span::before,
.courseHomeBg.sevenCourseHome .premiumUtilityTile span::after,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile span::before,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile span::after{display:none!important;content:none!important;border:0!important;}
.courseHomeBg.sevenCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .premiumTileIcon{
  width:20px!important;height:20px!important;margin:0 0 7px!important;color:var(--rd-icon)!important;opacity:.88!important;flex:0 0 auto!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon svg,
.courseHomeBg.thirtyCourseHome .premiumTileIcon svg{width:100%!important;height:100%!important;stroke:currentColor!important;stroke-width:3.1!important;fill:none!important;}
.courseHomeBg.sevenCourseHome .premiumUtilityTile > span,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile > span{
  position:static!important;
  transform:none!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--rd-text)!important;
  font-size:clamp(9px,2.55vw,11px)!important;
  line-height:1.06!important;
  letter-spacing:.075em!important;
  text-align:center!important;
  white-space:normal!important;
  border:0!important;
  text-decoration:none!important;
  text-shadow:0 2px 8px rgba(0,0,0,.94)!important;
}

.courseHomeBg.sevenCourseHome .journalDatabaseBtn,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn{
  position:relative!important;
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  margin:0!important;
  border-radius:17px!important;
  border:1px solid rgba(164,126,62,.38)!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.74)),url('assets/img/archieve.jpg')!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,226,160,.025) inset,0 8px 16px rgba(0,0,0,.36),0 0 6px rgba(164,126,62,.04)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseGroup,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseGroup{
  position:relative!important;
  z-index:2!important;
  inset:auto!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:13px!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseIcon,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseIcon{
  position:static!important;display:block!important;width:22px!important;height:22px!important;flex:0 0 22px!important;margin:0!important;transform:none!important;color:var(--rd-icon)!important;opacity:.86!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseIcon svg,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseIcon svg{width:22px!important;height:22px!important;display:block!important;stroke:currentColor!important;stroke-width:3.1!important;fill:none!important;}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseText,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseText{
  position:static!important;display:block!important;margin:0!important;padding:0!important;transform:none!important;color:var(--rd-text)!important;font-size:clamp(20px,5vw,26px)!important;line-height:1!important;letter-spacing:.16em!important;text-align:left!important;white-space:nowrap!important;text-shadow:0 3px 12px rgba(0,0,0,.96)!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn > span:not(.databaseGroup),
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn > span:not(.databaseGroup){display:none!important;}

@media(max-width:430px){
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{width:calc(100% - 38px)!important;padding:11px 11px 12px!important;}
}
@media(max-height:820px){
  .courseHomeBg.sevenCourseHome .courseHero,
  .courseHomeBg.thirtyCourseHome .courseHero{height:45vh!important;min-height:374px!important;max-height:410px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:44px!important;}
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{margin-top:-18px!important;}
  .courseHomeBg.sevenCourseHome .sevenStartCard,
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{height:88px!important;min-height:88px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityTile,
  .courseHomeBg.thirtyCourseHome .premiumUtilityTile{height:70px!important;min-height:70px!important;}
}
@media(max-height:760px){
  .courseHomeBg.sevenCourseHome .courseHero,
  .courseHomeBg.thirtyCourseHome .courseHero{height:43vh!important;min-height:342px!important;max-height:382px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:36px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroTitle,
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(31px,8vw,39px)!important;}
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{margin-top:-16px!important;padding:10px!important;}
  .courseHomeBg.sevenCourseHome .sevenStartCard,
  .courseHomeBg.thirtyCourseHome .pathGrid .pathImageBtn{height:82px!important;min-height:82px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityGrid,
  .courseHomeBg.thirtyCourseHome .premiumUtilityGrid{gap:8px!important;}
  .courseHomeBg.sevenCourseHome .premiumUtilityTile,
  .courseHomeBg.thirtyCourseHome .premiumUtilityTile{height:64px!important;min-height:64px!important;border-radius:14px!important;}
  .courseHomeBg.sevenCourseHome .premiumTileIcon,
  .courseHomeBg.thirtyCourseHome .premiumTileIcon{width:18px!important;height:18px!important;margin-bottom:6px!important;}
  .courseHomeBg.sevenCourseHome .journalDatabaseBtn,
  .courseHomeBg.thirtyCourseHome .journalDatabaseBtn{height:54px!important;min-height:54px!important;}
}

/* === FINAL PATCH · requested 30-day dashboard only ===
   Scope: 30-day course dashboard visual layout only.
   Keeps routing, buttons, data and all other screens untouched. */
.courseHomeBg.thirtyCourseHome{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:clamp(252px,34dvh,326px) minmax(0,1fr)!important;
  row-gap:clamp(6px,.9dvh,9px)!important;
  padding:0 0 calc(env(safe-area-inset-bottom,0px) + 8px)!important;
  background:#000!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  grid-row:1!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  flex:none!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.00) 0%,rgba(0,0,0,.10) 38%,rgba(0,0,0,.72) 78%,#000 100%),url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  border:0!important;
}
.courseHomeBg.thirtyCourseHome .courseHero::after{display:none!important;}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:clamp(12px,2.2dvh,24px)!important;
  transform:none!important;
  padding:0 18px!important;
  text-align:center!important;
  z-index:3!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent::before{display:none!important;content:none!important;}
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  display:block!important;
  margin:0 auto clamp(4px,.7dvh,7px)!important;
  font-family:var(--font-c)!important;
  font-size:clamp(9.5px,2.55vw,12px)!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.23em!important;
  text-transform:uppercase!important;
  color:#d8b35d!important;
  text-shadow:0 3px 14px rgba(0,0,0,.98),0 0 14px rgba(216,179,93,.22)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  display:block!important;
  margin:0 auto!important;
  padding:0!important;
  font-family:var(--font-c)!important;
  font-size:clamp(25px,6.6vw,34px)!important;
  line-height:.92!important;
  letter-spacing:.045em!important;
  color:#fff!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 7px 26px rgba(0,0,0,1),0 0 2px rgba(255,255,255,.20)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  content:''!important;
  display:block!important;
  width:clamp(76px,21vw,104px)!important;
  height:1px!important;
  margin:clamp(6px,.9dvh,10px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.55),transparent)!important;
  opacity:.72!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  grid-row:2!important;
  width:calc(100% - 30px)!important;
  max-width:760px!important;
  height:100%!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:clamp(10px,1.35dvh,14px)!important;
  display:grid!important;
  grid-template-rows:clamp(88px,12.5dvh,116px) clamp(10px,1.3dvh,14px) minmax(154px,1fr) clamp(10px,1.3dvh,14px) clamp(54px,7.2dvh,72px)!important;
  row-gap:clamp(7px,1dvh,10px)!important;
  border-radius:22px!important;
  border:1.05px solid rgba(198,156,78,.56)!important;
  background:linear-gradient(180deg,rgba(13,12,8,.34),rgba(0,0,0,.82))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 16px 36px rgba(0,0,0,.56),0 0 14px rgba(198,156,78,.10)!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid{
  grid-row:1!important;
  width:100%!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(9px,2.2vw,13px)!important;
  margin:0!important;
  padding:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:16px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  font-size:clamp(11px,3vw,14px)!important;
  line-height:1.02!important;
  bottom:clamp(10px,1.5dvh,14px)!important;
  letter-spacing:.045em!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDivider{
  height:1px!important;
  align-self:center!important;
  margin:0!important;
  background:linear-gradient(90deg,transparent,rgba(198,156,78,.46),transparent)!important;
  opacity:.78!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGrid.premiumUtilityGridSix{
  grid-row:3!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(7px,1.05dvh,10px) clamp(8px,2vw,11px)!important;
  margin:0!important;
  padding:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:15px!important;
  padding:clamp(7px,1.05dvh,10px) 5px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{
  width:clamp(24px,6vw,31px)!important;
  height:clamp(24px,6vw,31px)!important;
  margin:0 0 clamp(5px,.8dvh,8px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{
  width:100%!important;
  font-size:clamp(8px,2.15vw,9.8px)!important;
  line-height:1.05!important;
  letter-spacing:.085em!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{grid-row:4!important;}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  grid-row:5!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:16px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseGroup{
  gap:14px!important;
  transform:none!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseIcon{
  width:clamp(24px,6vw,31px)!important;
  height:clamp(24px,6vw,31px)!important;
  flex:0 0 auto!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseText{
  font-size:clamp(16px,4.6vw,22px)!important;
  letter-spacing:.15em!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome{grid-template-rows:clamp(220px,31.5dvh,272px) minmax(0,1fr)!important;row-gap:6px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{grid-template-rows:clamp(74px,11dvh,90px) 9px minmax(130px,1fr) 9px clamp(46px,6.8dvh,58px)!important;padding:9px!important;row-gap:6px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(23px,6.2vw,31px)!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroKicker{font-size:clamp(8.5px,2.35vw,10.5px)!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{width:23px!important;height:23px!important;margin-bottom:4px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{font-size:7.6px!important;}
}

/* === FINAL CORRECTION 2026-05-21 · 30-day dashboard only ===
   Fixes: no stretched PWA layout, hero slightly larger, title composition,
   smaller utility tiles with larger centered labels/icons. */
.courseHomeBg.thirtyCourseHome{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:clamp(8px,1.2svh,12px)!important;
  padding:0 0 calc(env(safe-area-inset-bottom,0px) + 10px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  flex:0 0 clamp(310px,39svh,390px)!important;
  height:clamp(310px,39svh,390px)!important;
  background-size:112% auto!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(18px,2.7svh,30px)!important;
  text-align:center!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  font-size:clamp(9px,2.35vw,11px)!important;
  letter-spacing:.25em!important;
  margin:0 auto clamp(6px,.85svh,9px)!important;
  color:#d8b35d!important;
  text-align:center!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(9px,2.25vw,13px)!important;
  width:100%!important;
  margin:0 auto!important;
  text-align:center!important;
  white-space:nowrap!important;
  transform:none!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{display:none!important;content:none!important;}
.courseHomeBg.thirtyCourseHome .courseHeroTitle .titleGold{
  font-size:clamp(18px,4.9vw,25px)!important;
  line-height:.95!important;
  letter-spacing:.09em!important;
  color:#d8b35d!important;
  text-shadow:0 5px 18px rgba(0,0,0,1),0 0 12px rgba(216,179,93,.18)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle .titleSep{
  width:clamp(30px,8vw,45px)!important;
  height:1px!important;
  background:linear-gradient(90deg,rgba(216,180,94,.15),rgba(216,180,94,.70),rgba(216,180,94,.15))!important;
  display:block!important;
  flex:0 0 auto!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle .titleWhite{
  font-size:clamp(26px,6.9vw,35px)!important;
  line-height:.92!important;
  letter-spacing:.055em!important;
  color:#fff!important;
  text-shadow:0 7px 26px rgba(0,0,0,1),0 0 2px rgba(255,255,255,.20)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  width:calc(100% - 30px)!important;
  max-width:760px!important;
  margin:0 auto!important;
  padding:clamp(12px,1.55svh,15px)!important;
  display:grid!important;
  grid-template-rows:clamp(96px,12.8svh,122px) 12px auto 12px clamp(56px,7.1svh,68px)!important;
  row-gap:clamp(9px,1.15svh,12px)!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  height:100%!important;
  min-height:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  font-size:clamp(13px,3.25vw,16px)!important;
  line-height:1!important;
  bottom:clamp(13px,1.8svh,17px)!important;
  letter-spacing:.045em!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGrid.premiumUtilityGridSix{
  height:auto!important;
  min-height:0!important;
  grid-template-rows:repeat(2,clamp(92px,12.2svh,118px))!important;
  gap:clamp(10px,1.35svh,13px) clamp(10px,2.2vw,13px)!important;
  align-content:start!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{
  height:clamp(92px,12.2svh,118px)!important;
  min-height:0!important;
  max-height:118px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 5px!important;
  border-radius:16px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{
  width:clamp(27px,6.4vw,34px)!important;
  height:clamp(27px,6.4vw,34px)!important;
  margin:0 0 clamp(8px,1.05svh,11px)!important;
  flex:0 0 auto!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{
  font-size:clamp(9.5px,2.55vw,11.8px)!important;
  line-height:1.05!important;
  letter-spacing:.08em!important;
  text-align:center!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  height:clamp(56px,7.1svh,68px)!important;
  min-height:0!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome .courseHero{flex-basis:clamp(270px,37svh,320px)!important;height:clamp(270px,37svh,320px)!important;background-size:116% auto!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{padding:9px!important;row-gap:7px!important;grid-template-rows:clamp(78px,11.2svh,94px) 8px auto 8px clamp(46px,6.7svh,56px)!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGrid.premiumUtilityGridSix{grid-template-rows:repeat(2,clamp(76px,10.8svh,92px))!important;gap:8px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{height:clamp(76px,10.8svh,92px)!important;max-height:92px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumTileIcon{width:24px!important;height:24px!important;margin-bottom:6px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile span{font-size:8.8px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle .titleGold{font-size:clamp(16px,4.4vw,21px)!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle .titleWhite{font-size:clamp(23px,6.1vw,30px)!important;}
}

/* FINAL TARGETED FIX 2026-05-21 v28 · 30-day dashboard header + anthracite inner tiles only */
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(18px,2.7svh,30px)!important;
  text-align:center!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  display:block!important;
  width:100%!important;
  margin:0 auto clamp(7px,.9svh,10px)!important;
  color:#d8b35d!important;
  font-size:clamp(10px,2.45vw,12px)!important;
  line-height:1!important;
  letter-spacing:.24em!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 4px 18px rgba(0,0,0,.95),0 0 12px rgba(216,179,93,.18)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  display:block!important;
  width:100%!important;
  margin:0 auto!important;
  text-align:center!important;
  white-space:nowrap!important;
  transform:none!important;
  color:#fff!important;
  font-size:clamp(27px,7.05vw,36px)!important;
  line-height:.92!important;
  letter-spacing:.055em!important;
  text-shadow:0 7px 26px rgba(0,0,0,1),0 0 2px rgba(255,255,255,.20)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after,
.courseHomeBg.thirtyCourseHome .courseHeroTitle .titleGold,
.courseHomeBg.thirtyCourseHome .courseHeroTitle .titleSep,
.courseHomeBg.thirtyCourseHome .courseHeroTitle .titleWhite{
  display:none!important;
  content:none!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroUnderline{
  width:clamp(48px,14vw,72px)!important;
  height:1px!important;
  margin:clamp(8px,1svh,10px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.72),transparent)!important;
  opacity:.82!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  background:linear-gradient(180deg,rgba(44,44,40,.88) 0%,rgba(18,18,18,.94) 58%,rgba(8,8,8,.98) 100%)!important;
  border-color:rgba(176,176,166,.56)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.045) inset,0 0 18px rgba(201,168,76,.13),0 12px 28px rgba(0,0,0,.46)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn::before{
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.22) 45%,rgba(0,0,0,.76) 100%)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDivider,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{
  background:linear-gradient(90deg,transparent,rgba(198,156,78,.46),transparent)!important;
  opacity:.78!important;
}

/* === v29 targeted correction · 30-day dashboard only ===
   Fixes requested: centered header stack, gold borders restored, top images restored,
   browser/PWA proportions stabilized without touching routes/functions. */
.courseHomeBg.thirtyCourseHome{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:clamp(8px,1.15dvh,12px)!important;
  padding:0 0 calc(env(safe-area-inset-bottom,0px) + 10px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHero{
  flex:0 0 clamp(315px,39.5dvh,390px)!important;
  height:clamp(315px,39.5dvh,390px)!important;
  min-height:0!important;
  max-height:none!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.10) 40%,rgba(0,0,0,.72) 78%,#000 100%),url('assets/img/dashboard-hood-final.png')!important;
  background-size:112% auto!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  bottom:clamp(30px,4.2dvh,44px)!important;
  padding:0 18px!important;
  text-align:center!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  display:block!important;
  width:auto!important;
  margin:0 auto clamp(7px,.9dvh,10px)!important;
  color:#d8b35d!important;
  font-size:clamp(9.5px,2.35vw,12px)!important;
  line-height:1!important;
  letter-spacing:.24em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  display:block!important;
  width:auto!important;
  max-width:calc(100vw - 36px)!important;
  margin:0 auto!important;
  padding:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:clamp(30px,7.6vw,40px)!important;
  line-height:.92!important;
  letter-spacing:.05em!important;
  color:#fff!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after,
.courseHomeBg.thirtyCourseHome .courseHeroUnderline{
  content:''!important;
  display:block!important;
  width:clamp(70px,18vw,98px)!important;
  height:1px!important;
  margin:clamp(8px,1dvh,11px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.70),transparent)!important;
  opacity:.78!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  flex:0 0 auto!important;
  width:min(calc(100% - 30px),430px)!important;
  max-width:430px!important;
  margin:0 auto!important;
  padding:clamp(10px,1.35dvh,13px)!important;
  display:grid!important;
  grid-template-rows:clamp(88px,12.2dvh,112px) 12px auto 12px clamp(54px,7dvh,66px)!important;
  row-gap:clamp(8px,1.05dvh,11px)!important;
  border:1.05px solid rgba(198,156,78,.58)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(13,12,8,.34),rgba(0,0,0,.82))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 16px 36px rgba(0,0,0,.56),0 0 14px rgba(198,156,78,.10)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  background-size:cover!important;
  background-position:center!important;
  border:1.05px solid rgba(198,156,78,.62)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 10px 24px rgba(0,0,0,.44),0 0 13px rgba(198,156,78,.10)!important;
  border-radius:16px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn[style*="home-hero"]{
  background-image:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.58)),url('assets/img/home-hero.jpeg')!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn[style*="home-ai"]{
  background-image:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.58)),url('assets/img/home-ai.png')!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  font-size:clamp(13px,3.25vw,16px)!important;
  bottom:clamp(13px,1.8dvh,17px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  border:1.05px solid rgba(198,156,78,.58)!important;
  background:radial-gradient(circle at 50% 7%,rgba(198,156,78,.13),rgba(17,17,14,.58) 48%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 9px 20px rgba(0,0,0,.40),0 0 11px rgba(198,156,78,.08)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  background-image:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.74)),url('assets/img/archieve.jpg')!important;
  background-size:cover!important;
  background-position:center!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDivider,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{
  background:linear-gradient(90deg,transparent,rgba(198,156,78,.46),transparent)!important;
  opacity:.78!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome{overflow-y:auto!important;max-height:none!important;}
  .courseHomeBg.thirtyCourseHome .courseHero{flex-basis:300px!important;height:300px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:26px!important;}
}

/* === v30 precision refinement · 30-day dashboard only ===
   Requested changes only: slightly larger hero/title/kicker, one wider divider line,
   taller button sector/top course buttons, database background removed + content nudged left. */
.courseHomeBg.thirtyCourseHome .courseHero{
  flex-basis:clamp(324px,40.7dvh,404px)!important;
  height:clamp(324px,40.7dvh,404px)!important;
  background-size:116% auto!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(32px,4.45dvh,48px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  font-size:clamp(10.5px,2.58vw,13px)!important;
  letter-spacing:.245em!important;
  margin-bottom:clamp(8px,1.05dvh,11px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle{
  font-size:clamp(32px,8.05vw,42px)!important;
  letter-spacing:.05em!important;
  line-height:.92!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroTitle::after{
  display:none!important;
  content:none!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroUnderline{
  display:block!important;
  width:clamp(96px,24vw,132px)!important;
  height:1.15px!important;
  margin:clamp(9px,1.12dvh,12px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.78),transparent)!important;
  opacity:.84!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  width:min(calc(100% - 30px),430px)!important;
  max-width:430px!important;
  padding:clamp(11px,1.48dvh,15px)!important;
  grid-template-rows:clamp(100px,13.75dvh,130px) 12px auto 12px clamp(54px,7dvh,66px)!important;
  row-gap:clamp(8px,1.05dvh,11px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  min-height:0!important;
  height:100%!important;
  border-radius:17px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  font-size:clamp(13.5px,3.38vw,16.5px)!important;
  bottom:clamp(14px,1.95dvh,18px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  background-image:none!important;
  background:radial-gradient(circle at 50% 7%,rgba(198,156,78,.10),rgba(17,17,14,.55) 48%,rgba(0,0,0,.92) 100%)!important;
  background-size:auto!important;
  background-position:center!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseGroup{
  transform:translateX(-10px)!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome{overflow:hidden!important;max-height:100dvh!important;}
  .courseHomeBg.thirtyCourseHome .courseHero{
    flex-basis:clamp(304px,39.2dvh,326px)!important;
    height:clamp(304px,39.2dvh,326px)!important;
    background-size:118% auto!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:28px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroKicker{font-size:10.5px!important;margin-bottom:7px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroTitle{font-size:clamp(30px,7.65vw,38px)!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    grid-template-rows:clamp(94px,12.6dvh,108px) 10px auto 10px clamp(50px,6.7dvh,58px)!important;
    padding:10px!important;
    row-gap:8px!important;
  }
}

/* === v31 REAL FIX · 30-day dashboard only ===
   Requested: slightly larger hood hero, larger AI-SYSTEM, wider single line,
   taller main course buttons + control sector, more bottom air around DATENBANK,
   database image stays removed. No routes/functions touched. */
.courseHomeBg.thirtyCourseHome .courseHero{
  flex-basis:clamp(330px,41.4dvh,414px)!important;
  height:clamp(330px,41.4dvh,414px)!important;
  background-size:119% auto!important;
  background-position:center top!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  bottom:clamp(34px,4.65dvh,50px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  font-size:clamp(11.2px,2.75vw,13.8px)!important;
  letter-spacing:.245em!important;
  margin-bottom:clamp(8px,1.05dvh,11px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroUnderline{
  width:clamp(112px,28vw,154px)!important;
  height:1.2px!important;
  margin:clamp(9px,1.12dvh,12px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.80),transparent)!important;
  opacity:.86!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  grid-template-rows:clamp(108px,14.45dvh,138px) 12px auto 12px clamp(58px,7.45dvh,72px)!important;
  padding:clamp(12px,1.55dvh,16px) clamp(11px,1.48dvh,15px) clamp(15px,2.05dvh,20px)!important;
  row-gap:clamp(8px,1.05dvh,11px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  height:100%!important;
  min-height:0!important;
  border-radius:17px!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  font-size:clamp(13.5px,3.38vw,16.5px)!important;
  bottom:clamp(14px,1.95dvh,18px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  background-image:none!important;
  background:radial-gradient(circle at 50% 7%,rgba(198,156,78,.10),rgba(17,17,14,.55) 48%,rgba(0,0,0,.92) 100%)!important;
  height:100%!important;
  min-height:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom .databaseGroup{
  transform:translateX(-10px)!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome .courseHero{
    flex-basis:clamp(308px,39.8dvh,332px)!important;
    height:clamp(308px,39.8dvh,332px)!important;
    background-size:120% auto!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroContent{bottom:29px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroKicker{font-size:11px!important;margin-bottom:7px!important;}
  .courseHomeBg.thirtyCourseHome .courseHeroUnderline{width:126px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    grid-template-rows:clamp(98px,13.2dvh,114px) 10px auto 10px clamp(52px,7.0dvh,60px)!important;
    padding:10px 10px 13px!important;
    row-gap:8px!important;
  }
}

/* === v32 FINAL SAFETY SHIFT · 30-day dashboard only ===
   Requested only: move headline + complete button field a touch upward so the bottom border is never covered,
   keep all current spacings/proportions, and make the single gold underline slightly wider. */
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  transform:translateY(-10px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  transform:translateY(-12px)!important;
}
.courseHomeBg.thirtyCourseHome .courseHeroUnderline{
  width:clamp(128px,32vw,172px)!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome .courseHeroContent{
    transform:translateY(-9px)!important;
  }
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    transform:translateY(-14px)!important;
  }
  .courseHomeBg.thirtyCourseHome .courseHeroUnderline{
    width:142px!important;
  }
}

/* === v33 MASTER-LAYOUT TRANSFER · 7-day dashboard + global gold nav ===
   Only requested scope: make 7-day course dashboard follow the approved 30-day Master-Layout,
   preserving the single wide 7-day start button, and set top Back/Home/Menu icons to the same gold tone everywhere. */
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn{
  color: rgba(216,180,94,.96) !important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg{
  stroke: currentColor !important;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.72)) drop-shadow(0 0 6px rgba(201,168,76,.18)) !important;
}

.courseHomeBg.sevenCourseHome{
  height:100vh!important;
  height:100dvh!important;
  max-height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
  background:#000!important;
}
.courseHomeBg.sevenCourseHome .courseHero{
  flex:0 0 clamp(330px,41.4dvh,414px)!important;
  height:clamp(330px,41.4dvh,414px)!important;
  min-height:0!important;
  max-height:none!important;
  background-image:url('assets/img/dashboard-hood-final.png')!important;
  background-size:119% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  border:0!important;
}
.courseHomeBg.sevenCourseHome .courseHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.10) 42%,rgba(0,0,0,.80) 79%,#000 100%)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent{
  bottom:clamp(34px,4.65dvh,50px)!important;
  padding:0 16px!important;
  text-align:center!important;
  transform:translateY(-10px)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroKicker{
  display:block!important;
  font-family:var(--font-c)!important;
  font-weight:700!important;
  font-size:clamp(11.2px,2.75vw,13.8px)!important;
  letter-spacing:.245em!important;
  line-height:1!important;
  color:rgba(216,180,94,.94)!important;
  text-transform:uppercase!important;
  margin:0 0 clamp(8px,1.05dvh,11px)!important;
  text-shadow:0 2px 10px rgba(0,0,0,.9)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle{
  font-family:var(--font-d)!important;
  font-size:clamp(32px,8.05vw,42px)!important;
  letter-spacing:.05em!important;
  line-height:.92!important;
  color:#fff!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-shadow:0 3px 14px rgba(0,0,0,.92)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle::after{
  display:none!important;
  content:none!important;
}
.courseHomeBg.sevenCourseHome .courseHeroUnderline{
  display:block!important;
  width:clamp(128px,32vw,172px)!important;
  height:1.2px!important;
  margin:clamp(9px,1.12dvh,12px) auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.80),transparent)!important;
  opacity:.86!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame{
  flex:0 0 auto!important;
  width:min(calc(100% - 30px),430px)!important;
  max-width:430px!important;
  margin:0 auto!important;
  padding:clamp(12px,1.55dvh,16px) clamp(11px,1.48dvh,15px) clamp(15px,2.05dvh,20px)!important;
  display:grid!important;
  grid-template-rows:clamp(108px,14.45dvh,138px) 12px auto 12px clamp(58px,7.45dvh,72px)!important;
  row-gap:clamp(8px,1.05dvh,11px)!important;
  border:1.05px solid rgba(198,156,78,.58)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(13,12,8,.34),rgba(0,0,0,.82))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 16px 36px rgba(0,0,0,.56),0 0 14px rgba(198,156,78,.10)!important;
  transform:translateY(-12px)!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceCard{
  height:100%!important;
  min-height:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border-radius:17px!important;
  border:1.05px solid rgba(198,156,78,.62)!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.58)),url('assets/img/home-hero.jpeg')!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 10px 24px rgba(0,0,0,.44),0 0 13px rgba(198,156,78,.10)!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceCard::after{
  background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.62))!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceInner{
  height:100%!important;
  min-height:0!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding:0 12px clamp(14px,1.95dvh,18px)!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceText{
  text-align:center!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceSubLabel{
  display:block!important;
  font-family:var(--font-c)!important;
  font-weight:700!important;
  font-size:clamp(9px,2.45vw,11px)!important;
  letter-spacing:.28em!important;
  color:rgba(240,237,232,.54)!important;
  margin-bottom:4px!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions h3{
  font-family:var(--font-d)!important;
  font-size:clamp(22px,6.05vw,31px)!important;
  line-height:.96!important;
  letter-spacing:.055em!important;
  color:rgba(248,245,238,.98)!important;
  text-shadow:0 3px 12px rgba(0,0,0,.92)!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame .premiumUtilityGridSix{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:clamp(8px,1.1dvh,12px) clamp(10px,2.6vw,14px)!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame .premiumUtilityGridSix .premiumUtilityTile{
  aspect-ratio:1.12/1!important;
  min-height:0!important;
  height:auto!important;
  border-radius:16px!important;
  border:1.05px solid rgba(198,156,78,.58)!important;
  background:radial-gradient(circle at 50% 7%,rgba(198,156,78,.13),rgba(17,17,14,.58) 48%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 9px 20px rgba(0,0,0,.40),0 0 11px rgba(198,156,78,.08)!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile .premiumTileIcon{
  width:clamp(24px,6.2vw,30px)!important;
  height:clamp(24px,6.2vw,30px)!important;
  margin:0 auto clamp(9px,1.25dvh,13px)!important;
  color:rgba(216,180,94,.92)!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile span{
  font-size:clamp(9.5px,2.55vw,12px)!important;
  letter-spacing:.095em!important;
  line-height:1!important;
  color:rgba(248,245,238,.96)!important;
  text-align:center!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame .dashboardFrameDivider,
.courseHomeBg.sevenCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{
  display:block!important;
  width:100%!important;
  height:1px!important;
  margin:0!important;
  background:linear-gradient(90deg,transparent,rgba(198,156,78,.46),transparent)!important;
  opacity:.78!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame .sevenDatabaseBottom{
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  border-radius:17px!important;
  border:1.05px solid rgba(198,156,78,.58)!important;
  background-image:none!important;
  background:radial-gradient(circle at 50% 7%,rgba(198,156,78,.10),rgba(17,17,14,.55) 48%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.045) inset,0 9px 20px rgba(0,0,0,.40),0 0 11px rgba(198,156,78,.08)!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame .sevenDatabaseBottom .databaseGroup{
  transform:translateX(-10px)!important;
}
@media(max-height:740px){
  .courseHomeBg.sevenCourseHome .courseHero{
    flex-basis:clamp(308px,39.8dvh,332px)!important;
    height:clamp(308px,39.8dvh,332px)!important;
    background-size:120% auto!important;
  }
  .courseHomeBg.sevenCourseHome .courseHeroContent{
    bottom:29px!important;
    transform:translateY(-9px)!important;
  }
  .courseHomeBg.sevenCourseHome .courseHeroKicker{font-size:11px!important;margin-bottom:7px!important;}
  .courseHomeBg.sevenCourseHome .courseHeroUnderline{width:142px!important;}
  .courseHomeBg.sevenCourseHome .dashboardControlFrame{
    grid-template-rows:clamp(98px,13.2dvh,114px) 10px auto 10px clamp(52px,7.0dvh,60px)!important;
    padding:10px 10px 13px!important;
    row-gap:8px!important;
    transform:translateY(-14px)!important;
  }
}

/* === v34 TARGETED FIXES · user requested only ===
   - Keep 30-day master untouched visually.
   - 7-day dashboard hero title stack aligned like master.
   - Global nav icons white again.
   - Course intro/article/video pages start below fixed nav.
   - 7-day module dashboard heading centered + clean start button. */

/* Global top navigation: white icons everywhere, same size/position */
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn,
.mainHomeBg .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.courseHomeBg .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.moduleDashboardScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.introArticleScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.sevenCourseTextScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.introVideoScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.dayCourseTextScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.dayIntroScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.lockStartScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.goalScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.aiPraxisScreen .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.rdPraxisDashboard .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.rdPraxisToolPage .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.praxisCoachPage .topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn{
  color:rgba(255,255,255,.98)!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg{
  stroke:currentColor!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.62))!important;
}

/* 7-day Home dashboard: AI-SYSTEM centered above title + wider underline */
.courseHomeBg.sevenCourseHome .courseHeroContent{
  left:0!important;
  right:0!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
.courseHomeBg.sevenCourseHome .courseHeroKicker{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  margin:0 0 clamp(8px,1.05dvh,11px)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  margin:0!important;
}
.courseHomeBg.sevenCourseHome .courseHeroUnderline{
  width:clamp(168px,45vw,230px)!important;
  height:1.35px!important;
  margin:clamp(10px,1.18dvh,13px) auto 0!important;
}

/* 7-day intro text pages: prevent title/tag from sliding under status/nav */
.introArticleScreen.sevenCourseTextScreen,
.introArticleScreen{
  padding-top:calc(env(safe-area-inset-top, 0px) + 58px)!important;
  box-sizing:border-box!important;
}
.introArticleScreen > .tag{
  margin-top:0!important;
  display:block!important;
}
.introArticleScreen > h1{
  margin-top:8px!important;
  padding-top:0!important;
  max-width:calc(100% - 10px)!important;
  line-height:.92!important;
}

/* Welcome video: video card begins clearly below nav icons */
.introVideoScreen{
  padding-top:0!important;
}
.introVideoScreen .introVideoLayout{
  padding-top:calc(env(safe-area-inset-top, 0px) + 54px)!important;
}
.introVideoScreen .introVideoPlayer{
  border-radius:22px!important;
  border:1.05px solid rgba(198,156,78,.58)!important;
}

/* 7-day module dashboard: centered headline, no descriptive paragraph/tag, master-style start button */
.moduleDashboardScreen .moduleDashboardHeroContent{
  left:0!important;
  right:0!important;
  bottom:clamp(34px,5.2dvh,56px)!important;
  padding:0 15px!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .cleanTag,
.moduleDashboardScreen .moduleDashboardHeroContent p{
  display:none!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent h1{
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-family:var(--font-d)!important;
  font-size:clamp(32px,7.9vw,44px)!important;
  line-height:.94!important;
  letter-spacing:.04em!important;
  margin:0 0 clamp(20px,3dvh,28px)!important;
  padding:0!important;
  color:rgba(255,255,255,.98)!important;
  text-shadow:0 4px 18px rgba(0,0,0,.88)!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn{
  width:min(calc(100% - 14px),430px)!important;
  height:clamp(58px,7.2dvh,68px)!important;
  margin:0!important;
  border-radius:18px!important;
  border:1.05px solid rgba(198,156,78,.62)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015) 42%,rgba(0,0,0,.52))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.05) inset,0 12px 28px rgba(0,0,0,.48),0 0 12px rgba(198,156,78,.10)!important;
  color:rgba(255,255,255,.96)!important;
}
@media(max-width:380px){
  .moduleDashboardScreen .moduleDashboardHeroContent h1{font-size:clamp(28px,7.3vw,38px)!important;}
}

/* v35 targeted typography/header cleanup for 7-day intro + day pages */
.coursePageHeader{
  width:100%!important;
  max-width:calc(100% - 32px)!important;
  margin:0 auto clamp(12px,1.6dvh,16px)!important;
  padding:0!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
.coursePageHeader h1{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  font-family:var(--font-d)!important;
  font-size:clamp(30px,7.2vw,42px)!important;
  line-height:.92!important;
  letter-spacing:.045em!important;
  color:rgba(255,255,255,.98)!important;
  text-shadow:0 4px 18px rgba(0,0,0,.86)!important;
}
.coursePageHeaderLine{
  width:clamp(116px,33vw,176px)!important;
  height:1.2px!important;
  margin:clamp(10px,1.25dvh,13px) auto 0!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(198,156,78,0),rgba(198,156,78,.72),rgba(255,226,150,.36),rgba(198,156,78,0))!important;
  box-shadow:0 0 12px rgba(198,156,78,.24)!important;
}
.introArticleScreen.sevenCourseTextScreen,
.dayCourseTextScreen.sevenCourseTextScreen{
  padding-top:calc(env(safe-area-inset-top, 0px) + 76px)!important;
  box-sizing:border-box!important;
}
.introArticleScreen > .tag,
.dayCourseTextScreen > .tag,
.dayCourseTextScreen .dayPill{
  display:none!important;
}
.introArticleScreen > h1,
.dayCourseTextScreen > h1{
  display:none!important;
}
.dayCourseTextScreen.sevenCourseTextScreen .dayHero{
  display:none!important;
}
.dayTaskScreen .premiumTaskArticle{
  margin-left:16px!important;
  margin-right:16px!important;
}
.lockStartScreen .lockStartContent .coursePageHeader{
  margin-bottom:clamp(12px,1.7dvh,16px)!important;
}
.lockStartScreen .lockStartContent .coursePageHeader h1{
  font-size:clamp(32px,7.6vw,44px)!important;
}

/* v35 7-day home header must mirror approved Master: centered AI-SYSTEM above title */
.courseHomeBg.sevenCourseHome .courseHeroContent{
  left:0!important;
  right:0!important;
  width:100%!important;
  padding:0 18px!important;
  align-items:center!important;
  text-align:center!important;
}
.courseHomeBg.sevenCourseHome .courseHeroKicker{
  display:block!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  margin:0 auto clamp(8px,1dvh,11px)!important;
  text-align:center!important;
  width:100%!important;
  font-size:clamp(12px,2.8vw,15px)!important;
  letter-spacing:.28em!important;
  color:var(--gold)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroTitle{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.courseHomeBg.sevenCourseHome .courseHeroUnderline{
  width:clamp(188px,50vw,260px)!important;
  height:1.45px!important;
  margin:clamp(10px,1.22dvh,13px) auto 0!important;
}

/* v36 targeted cleanup: clean page headers, safe top spacing, menu/subpages */
.masterSubPage,
.goalScreen.masterSubPage,
.challengeHomeScreen.masterSubPage,
.addonHome.masterSubPage,
.settingsScreen.masterSubPage,
.dayIntroScreen.sevenCourseTextScreen{
  padding-top:calc(env(safe-area-inset-top, 0px) + 76px)!important;
  box-sizing:border-box!important;
}
.masterSubPage > .tag,
.masterSubPage > h1,
.masterSubPage > p:not(.subHeadlineGold){
  display:none!important;
}
.masterSubPage .coursePageHeader,
.dayIntroScreen.sevenCourseTextScreen .coursePageHeader{
  margin-top:0!important;
  margin-bottom:clamp(14px,1.8dvh,18px)!important;
}
.masterSubPage .coursePageHeader h1,
.dayIntroScreen.sevenCourseTextScreen .coursePageHeader h1{
  font-size:clamp(30px,7.2vw,42px)!important;
  white-space:nowrap!important;
}
.subHeadlineGold{
  display:block!important;
  text-align:center!important;
  padding:0 18px clamp(12px,1.6dvh,16px)!important;
  margin:0!important;
  color:var(--gold)!important;
  font-family:var(--font-mono)!important;
  font-size:clamp(11px,2.7vw,14px)!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
}
/* hide old hero treatment on Goal Blueprint pages after clean header switch */
.goalScreen.masterSubPage .goalHero{display:none!important;}
.goalScreen.masterSubPage > .card:first-of-type{margin-top:12px!important;}
/* keep list screens below nav, not under status bar */
.challengeHomeScreen.masterSubPage > div[style*="padding:8px"]{padding-top:4px!important;}
.addonHome.masterSubPage .extraGrid{padding-top:4px!important;}
.settingsScreen.masterSubPage .settingsSection:first-of-type{margin-top:12px!important;}
/* remove any remaining small pill/meta badges on clean 7-day flow pages */
.dayIntroScreen.sevenCourseTextScreen .dayPill,
.dayCourseTextScreen.sevenCourseTextScreen .dayPill,
.introArticleScreen.sevenCourseTextScreen .tag,
.dayCourseTextScreen.sevenCourseTextScreen .tag,
.masterSubPage .cleanTag{display:none!important;}

/* v37 targeted from v36: database only — master-style collapsible rubrics */
.databaseScreen{
  padding-top:calc(var(--safe-top, 0px) + 86px)!important;
  padding-bottom:110px!important;
}
.databaseScreen .databaseHeaderBlock{
  text-align:center;
  margin:0 auto 22px;
  max-width:760px;
}
.databaseScreen .databaseHeaderBlock h1{
  margin:0!important;
  font-family:var(--font-display);
  font-size:clamp(38px, 9vw, 64px)!important;
  line-height:.92!important;
  letter-spacing:.055em!important;
  color:var(--text)!important;
  text-transform:uppercase;
}
.databaseScreen .databaseHeaderBlock .sectionUnderline{
  width:min(190px, 44vw);
  height:1px;
  margin:16px auto 18px;
  background:linear-gradient(90deg, transparent, rgba(214,178,103,.82), transparent);
  box-shadow:0 0 12px rgba(214,178,103,.22);
}
.databaseScreen .databaseHeaderBlock p{
  max-width:620px;
  margin:0 auto!important;
  padding:0 14px!important;
  color:rgba(238,238,238,.70)!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.databaseScreen .databaseFolder{
  display:block;
  margin:14px auto!important;
  padding:0!important;
  max-width:760px;
  overflow:hidden;
  border-radius:28px!important;
  border:1px solid rgba(214,178,103,.54)!important;
  background:linear-gradient(180deg,rgba(20,20,18,.92),rgba(6,6,6,.96))!important;
  box-shadow:0 0 0 1px rgba(214,178,103,.07), 0 18px 40px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.databaseScreen .databaseFolder summary::-webkit-details-marker{display:none;}
.databaseScreen .databaseFolderButton{
  min-height:74px;
  padding:20px 22px;
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  user-select:none;
  background:radial-gradient(circle at 50% 0%,rgba(214,178,103,.13),transparent 48%);
}
.databaseScreen .databaseFolderTitle{
  font-family:var(--font-display);
  color:var(--text);
  font-size:clamp(22px,5.2vw,34px);
  letter-spacing:.075em;
  line-height:1;
  text-transform:uppercase;
}
.databaseScreen .databaseFolderMeta{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--gold);
  font-family:var(--font-display);
  letter-spacing:.08em;
  white-space:nowrap;
}
.databaseScreen .databaseFolderCount{
  font-size:14px;
  opacity:.9;
}
.databaseScreen .databaseFolderChevron{
  width:30px;
  height:30px;
  border:1px solid rgba(214,178,103,.48);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  line-height:1;
  transform:rotate(0deg);
  transition:transform .22s ease;
}
.databaseScreen .databaseFolder[open] .databaseFolderChevron{transform:rotate(180deg);}
.databaseScreen .databaseFolderBody{
  margin:0!important;
  padding:0 22px 22px!important;
  border-top:1px solid rgba(214,178,103,.16);
}
.databaseScreen .databaseSubFolder{
  border-top:1px solid rgba(214,178,103,.14)!important;
  padding-top:16px!important;
  margin-top:16px!important;
}
.databaseScreen .databaseSubFolder:first-child{border-top:0!important;margin-top:0!important;}
.databaseScreen .databaseSubFolder h3{
  font-family:var(--font-display)!important;
  font-size:18px!important;
  color:var(--gold)!important;
  letter-spacing:.07em!important;
}
.databaseScreen .databaseEntry{
  border:1px solid rgba(214,178,103,.20)!important;
  border-radius:20px!important;
  padding:14px 15px!important;
  margin:12px 0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012))!important;
}
.databaseScreen .databaseEntry h4{
  color:var(--gold)!important;
  font-size:15px!important;
}
.databaseScreen .databaseEntry p,.databaseScreen .databaseFolder p{
  font-size:14px!important;
  line-height:1.6!important;
  color:rgba(238,238,238,.72)!important;
}
@media(max-width:430px){
  .databaseScreen{padding-top:calc(var(--safe-top, 0px) + 78px)!important;}
  .databaseScreen .databaseFolderButton{min-height:68px;padding:18px 18px;}
  .databaseScreen .databaseFolderTitle{font-size:22px;}
  .databaseScreen .databaseFolderBody{padding:0 18px 20px!important;}
}

/* v38 targeted: database professional master layout + Zusatzlektionen list cards */
.databaseScreen{
  padding-top:calc(var(--safe-top, 0px) + 104px)!important;
  padding-left:clamp(24px,4vw,42px)!important;
  padding-right:clamp(24px,4vw,42px)!important;
}
.databaseScreen .databaseHeaderBlock{
  margin:0 auto clamp(26px,3.2dvh,34px)!important;
}
.databaseScreen .databaseHeaderBlock h1{
  font-size:clamp(34px,7.2vw,54px)!important;
  letter-spacing:.075em!important;
  line-height:.94!important;
}
.databaseScreen .databaseHeaderBlock .sectionUnderline{
  width:clamp(170px,42vw,270px)!important;
  height:1.35px!important;
  margin:14px auto 18px!important;
}
.databaseScreen .databaseHeaderBlock p{
  font-size:clamp(14px,3.35vw,16px)!important;
  line-height:1.48!important;
  max-width:680px!important;
  color:rgba(238,238,238,.64)!important;
}
.databaseScreen .databaseFolder{
  width:100%!important;
  max-width:760px!important;
  margin:clamp(14px,2dvh,18px) auto!important;
  border-radius:32px!important;
  border:1.15px solid rgba(197,151,73,.72)!important;
  background:linear-gradient(180deg,rgba(19,19,17,.94),rgba(5,5,5,.98))!important;
  box-shadow:0 0 0 1px rgba(238,196,105,.06), 0 18px 40px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.databaseScreen .databaseFolderButton{
  min-height:76px!important;
  padding:18px 22px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  background:radial-gradient(circle at 50% 0%,rgba(198,154,80,.14),transparent 56%)!important;
}
.databaseScreen .databaseFolderTitle{
  font-size:clamp(20px,4.6vw,30px)!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.databaseScreen .databaseFolderMeta{
  gap:13px!important;
  min-width:max-content!important;
}
.databaseScreen .databaseFolderCount{
  font-family:var(--font-mono)!important;
  font-size:clamp(11px,2.7vw,13px)!important;
  letter-spacing:.18em!important;
  color:rgba(214,178,103,.92)!important;
}
.databaseScreen .databaseFolderChevron{
  width:38px!important;
  height:38px!important;
  border:1.1px solid rgba(214,178,103,.66)!important;
  font-size:24px!important;
  color:rgba(232,198,119,.94)!important;
}
.databaseScreen .databaseFolderBody{
  padding:0 20px 22px!important;
  border-top:1px solid rgba(214,178,103,.16)!important;
}
@media(max-width:430px){
  .databaseScreen{padding-top:calc(var(--safe-top, 0px) + 96px)!important; padding-left:18px!important; padding-right:18px!important;}
  .databaseScreen .databaseFolderButton{min-height:70px!important;padding:17px 18px!important;}
  .databaseScreen .databaseFolderTitle{font-size:clamp(18px,4.8vw,22px)!important;letter-spacing:.11em!important;}
  .databaseScreen .databaseFolderChevron{width:34px!important;height:34px!important;font-size:22px!important;}
  .databaseScreen .databaseHeaderBlock h1{font-size:clamp(38px,8.4vw,48px)!important;}
}

.addonHome.masterSubPage{
  padding-top:calc(var(--safe-top, 0px) + 96px)!important;
  padding-left:clamp(22px,4vw,42px)!important;
  padding-right:clamp(22px,4vw,42px)!important;
}
.addonHome .addonListGrid{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  max-width:780px!important;
  margin:22px auto 120px!important;
  padding:0!important;
}
.addonHome .addonWideCard{
  width:100%!important;
  min-height:154px!important;
  display:grid!important;
  grid-template-columns:36% 1fr!important;
  overflow:hidden!important;
  border-radius:30px!important;
  border:1.15px solid rgba(197,151,73,.72)!important;
  background:linear-gradient(180deg,rgba(19,19,17,.96),rgba(6,6,6,.98))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.addonHome .addonWideThumb{
  height:100%!important;
  min-height:154px!important;
  border-radius:0!important;
  background-size:cover!important;
  background-position:center!important;
  opacity:.82!important;
}
.addonHome .addonWideText{
  padding:18px 18px 16px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
}
.addonHome .addonWideMeta{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:12px!important;
  font-family:var(--font-mono)!important;
  font-size:clamp(10px,2.45vw,12px)!important;
  letter-spacing:.19em!important;
  color:rgba(214,178,103,.86)!important;
  text-transform:uppercase!important;
}
.addonHome .addonWideText h3{
  margin:0!important;
  font-size:clamp(18px,4.6vw,27px)!important;
  line-height:1.08!important;
  letter-spacing:.055em!important;
  color:var(--text)!important;
}
.addonHome .addonWideText p{
  margin:13px 0 0!important;
  font-family:var(--font-display)!important;
  font-size:clamp(12px,3.1vw,15px)!important;
  letter-spacing:.11em!important;
  color:rgba(238,238,238,.58)!important;
  text-transform:uppercase!important;
}
.addonDetail{
  padding-top:calc(var(--safe-top, 0px) + 92px)!important;
}
.addonDetail > .tag,
.addonDetail > h1{display:none!important;}
.addonDetail .coursePageHeader h1{
  font-size:clamp(26px,6.2vw,38px)!important;
  white-space:normal!important;
  text-align:center!important;
}
.addonDetail .coursePageHeader{
  margin-bottom:16px!important;
}
@media(max-width:430px){
  .addonHome.masterSubPage{padding-top:calc(var(--safe-top, 0px) + 92px)!important; padding-left:18px!important; padding-right:18px!important;}
  .addonHome .addonListGrid{gap:16px!important; margin-top:18px!important;}
  .addonHome .addonWideCard{grid-template-columns:38% 1fr!important; min-height:142px!important; border-radius:26px!important;}
  .addonHome .addonWideThumb{min-height:142px!important;}
  .addonHome .addonWideText{padding:15px 14px!important;}
  .addonHome .addonWideText h3{font-size:clamp(16px,4.1vw,19px)!important;}
}


/* v39 targeted refinement: database button radius + extra lesson black cards/title split */
.databaseScreen{
  padding-top:calc(var(--safe-top, 0px) + 112px)!important;
}
.databaseScreen .databaseHeaderBlock{
  margin-bottom:28px!important;
}
.databaseScreen .databaseHeaderBlock h1{
  font-size:clamp(40px,8.8vw,56px)!important;
  letter-spacing:.09em!important;
}
.databaseScreen .databaseFolder{
  max-width:760px!important;
  width:100%!important;
  margin:14px auto!important;
  padding:0!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(10,10,9,.98),rgba(3,3,3,.99))!important;
  border:1.1px solid rgba(197,151,73,.72)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.035)!important;
  overflow:hidden!important;
}
.databaseScreen .databaseFolderButton{
  min-height:66px!important;
  padding:16px 20px!important;
  border-radius:16px!important;
}
.databaseScreen .databaseFolderTitle{
  font-size:clamp(18px,4.3vw,24px)!important;
  letter-spacing:.105em!important;
  line-height:1.05!important;
}
.databaseScreen .databaseFolderCount{
  font-size:clamp(11px,2.55vw,13px)!important;
  letter-spacing:.15em!important;
}
.databaseScreen .databaseFolderChevron{
  width:34px!important;
  height:34px!important;
  border-radius:12px!important;
  font-size:21px!important;
}
.databaseScreen .databaseFolderBody{
  padding:0 18px 18px!important;
}
@media(max-width:430px){
  .databaseScreen{padding-top:calc(var(--safe-top, 0px) + 108px)!important;padding-left:18px!important;padding-right:18px!important;}
  .databaseScreen .databaseFolder{border-radius:15px!important;margin:13px auto!important;}
  .databaseScreen .databaseFolderButton{min-height:64px!important;padding:15px 17px!important;border-radius:15px!important;}
  .databaseScreen .databaseFolderTitle{font-size:clamp(17px,4.1vw,20px)!important;letter-spacing:.095em!important;}
}

.addonHome .addonWideCard{
  background:#020202!important;
  border-radius:26px!important;
  border:1.15px solid rgba(197,151,73,.72)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.addonHome .addonWideText{
  background:#020202!important;
}
.addonHome .addonWideThumb{
  opacity:.86!important;
}
.addonHome .addonTitleSplit{
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  line-height:1.04!important;
}
.addonHome .addonTitleMain{
  display:block!important;
  font-family:var(--font-display)!important;
  font-size:clamp(19px,4.7vw,28px)!important;
  letter-spacing:.075em!important;
  color:#fff!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.addonHome .addonTitleSub{
  display:block!important;
  font-family:var(--font-display)!important;
  font-size:clamp(13px,3.15vw,18px)!important;
  letter-spacing:.06em!important;
  color:rgba(255,255,255,.78)!important;
  text-transform:uppercase!important;
  line-height:1.15!important;
}
@media(max-width:430px){
  .addonHome .addonWideCard{border-radius:22px!important;min-height:142px!important;}
  .addonHome .addonTitleMain{font-size:clamp(17px,4.3vw,20px)!important;}
  .addonHome .addonTitleSub{font-size:clamp(11px,2.95vw,14px)!important;}
}

/* v40 targeted fix: Zusatzlektionen full-width clean horizontal cards */
.addonHome.masterSubPage{
  padding-top:calc(var(--safe-top, 0px) + 118px)!important;
  padding-left:clamp(22px,4.5vw,38px)!important;
  padding-right:clamp(22px,4.5vw,38px)!important;
}
.addonHome.masterSubPage .coursePageHeader,
.addonHome.masterSubPage > h1{
  margin-top:0!important;
}
.addonHome .addonListGrid{
  width:100%!important;
  max-width:760px!important;
  margin:28px auto 120px!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:20px!important;
  box-sizing:border-box!important;
}
.addonHome .addonWideCard{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:none!important;
  align-self:stretch!important;
  min-height:158px!important;
  display:grid!important;
  grid-template-columns:42% 58%!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#020202!important;
  border:1.15px solid rgba(197,151,73,.72)!important;
  box-sizing:border-box!important;
}
.addonHome .addonWideThumb{
  width:100%!important;
  height:100%!important;
  min-height:158px!important;
  background-size:cover!important;
  background-position:center!important;
  opacity:.88!important;
}
.addonHome .addonWideText{
  width:100%!important;
  padding:18px 18px 16px!important;
  background:#020202!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.addonHome .addonWideMeta{
  gap:10px!important;
  margin-bottom:14px!important;
  font-size:clamp(9px,2.35vw,12px)!important;
  letter-spacing:.17em!important;
  white-space:nowrap!important;
}
.addonHome .addonTitleMain{
  font-size:clamp(18px,4.4vw,27px)!important;
  letter-spacing:.07em!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.addonHome .addonTitleSub{
  font-size:clamp(11px,2.9vw,16px)!important;
  line-height:1.12!important;
  letter-spacing:.055em!important;
}
.addonHome .addonWideText p{
  margin-top:14px!important;
  font-size:clamp(11px,2.8vw,14px)!important;
}
@media(max-width:430px){
  .addonHome.masterSubPage{
    padding-top:calc(var(--safe-top, 0px) + 116px)!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .addonHome .addonListGrid{
    width:100%!important;
    max-width:none!important;
    gap:18px!important;
    margin-top:28px!important;
  }
  .addonHome .addonWideCard{
    width:100%!important;
    min-height:150px!important;
    grid-template-columns:42% 58%!important;
    border-radius:24px!important;
  }
  .addonHome .addonWideThumb{min-height:150px!important;}
  .addonHome .addonWideText{padding:16px 16px 15px!important;}
  .addonHome .addonWideMeta{font-size:clamp(8.5px,2.35vw,10px)!important;letter-spacing:.14em!important;margin-bottom:12px!important;}
  .addonHome .addonTitleMain{font-size:clamp(17px,4.25vw,20px)!important;}
  .addonHome .addonTitleSub{font-size:clamp(10.5px,2.75vw,13px)!important;}
}

/* v41 targeted: Goal/Challenge hero images + Zusatzlektionen text-left/image-right */
.sectionHero{
  width:100%;
  max-width:760px;
  height:clamp(168px,42vw,260px);
  margin:0 auto 18px;
  border-radius:0 0 30px 30px;
  background-size:cover;
  background-position:center;
  position:relative;
  overflow:hidden;
  box-shadow:0 26px 60px rgba(0,0,0,.55);
}
.sectionHero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.82) 82%,#050505 100%);
  pointer-events:none;
}
.goalBlueprintHero{background-image:url('assets/img/goal-blueprint-hero.jpeg');}
.challengeCatalogHero{background-image:url('assets/img/challenge-catalog-hero.jpeg');}
.goalScreen.masterSubPage,.challengeHomeScreen.masterSubPage{
  padding-top:calc(var(--safe-top, 0px) + 94px)!important;
}
.goalScreen.masterSubPage > .courseTitleBlock,
.challengeHomeScreen.masterSubPage > .courseTitleBlock{
  margin-top:0!important;
}
.addonHome .addonWideCard{
  grid-template-columns:58% 42%!important;
}
.addonHome .addonWideText{
  grid-column:1!important;
  grid-row:1!important;
  background:#020202!important;
}
.addonHome .addonWideThumb{
  grid-column:2!important;
  grid-row:1!important;
  background-position:center!important;
}
.addonHome .addonWideMeta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}
@media(max-width:430px){
  .sectionHero{
    width:calc(100% + 32px);
    margin-left:-16px;
    margin-right:-16px;
    height:180px;
    border-radius:0 0 24px 24px;
  }
  .addonHome .addonWideCard{grid-template-columns:58% 42%!important;}
}

/* v42 targeted: Goal/Challenge hero full-bleed to top + challenge detail safe spacing */
.goalScreen.masterSubPage,
.challengeHomeScreen.masterSubPage{
  padding-top:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.goalScreen.masterSubPage .sectionHero,
.challengeHomeScreen.masterSubPage .sectionHero{
  width:100vw!important;
  max-width:none!important;
  height:clamp(230px,34vh,360px)!important;
  margin:0 0 clamp(24px,3.2vh,34px) 50%!important;
  transform:translateX(-50%)!important;
  border-radius:0!important;
  background-size:cover!important;
  background-position:center top!important;
  box-shadow:none!important;
}
.goalScreen.masterSubPage .sectionHero::after,
.challengeHomeScreen.masterSubPage .sectionHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.18) 50%,rgba(0,0,0,.86) 84%,#050505 100%)!important;
}
.goalScreen.masterSubPage .coursePageHeader,
.challengeHomeScreen.masterSubPage .coursePageHeader{
  padding-left:18px!important;
  padding-right:18px!important;
  margin-top:0!important;
}
.goalScreen.masterSubPage > .card,
.goalScreen.masterSubPage > .privacy,
.goalScreen.masterSubPage > .btn,
.challengeHomeScreen.masterSubPage > div[style*="padding:8px"]{
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:760px!important;
  width:calc(100% - 32px)!important;
}
.challengeHomeScreen.masterSubPage > div[style*="padding:8px"]{
  padding-top:4px!important;
  padding-bottom:120px!important;
}
.challengeInnerScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 108px)!important;
  padding-left:16px!important;
  padding-right:16px!important;
  box-sizing:border-box!important;
}
.challengeInnerScreen > h1{
  margin-top:0!important;
  text-align:left!important;
  max-width:760px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  font-size:clamp(34px,8.6vw,48px)!important;
  line-height:.98!important;
}
.challengeInnerScreen > .tag{display:none!important;}
.challengeInnerScreen .challengeInfoHero,
.challengeInnerScreen .challengeProCard,
.challengeInnerScreen .challengeEntryCard,
.challengeInnerScreen .challengeHistoryCard,
.challengeInnerScreen .challengeStartBtn{
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:430px){
  .goalScreen.masterSubPage .sectionHero,
  .challengeHomeScreen.masterSubPage .sectionHero{
    height:238px!important;
    margin-bottom:26px!important;
  }
  .challengeInnerScreen{padding-top:calc(env(safe-area-inset-top,0px) + 104px)!important;}
}

/* v43 targeted: Challenge catalog hero/title spacing + uniform challenge detail layout */
.challengeHomeScreen.masterSubPage .sectionHero{
  height:clamp(270px,38vh,420px)!important;
  margin-bottom:0!important;
  background-size:cover!important;
  background-position:center top!important;
}
.challengeHomeScreen.masterSubPage .sectionHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.12) 48%,rgba(0,0,0,.82) 84%,#050505 100%)!important;
}
.challengeHomeScreen.masterSubPage .coursePageHeader{
  margin-top:clamp(-38px,-4.2vh,-24px)!important;
  margin-bottom:14px!important;
  position:relative!important;
  z-index:2!important;
}
.challengeHomeScreen.masterSubPage .coursePageHeader h1{
  font-size:clamp(34px,8.6vw,52px)!important;
  line-height:.98!important;
}
.challengeHomeScreen.masterSubPage > div[style*="padding:8px"]{
  padding-top:0!important;
  margin-top:-2px!important;
  padding-bottom:120px!important;
}
.challengeHomeScreen.masterSubPage > div[style*="padding:8px"] > .card{
  width:100%!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-bottom:14px!important;
  border-radius:28px!important;
  padding:18px 18px 16px!important;
  box-sizing:border-box!important;
}
.challengeHomeScreen.masterSubPage .challengeDash{
  gap:16px!important;
}
.challengeHomeScreen.masterSubPage .challengeDash h3{
  font-size:clamp(20px,5.7vw,30px)!important;
  line-height:1.18!important;
  letter-spacing:.07em!important;
}
.challengeHomeScreen.masterSubPage .challengeDash p{
  font-size:clamp(13px,3.4vw,16px)!important;
}

.challengeInnerScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 88px)!important;
  padding-left:16px!important;
  padding-right:16px!important;
}
.challengeInnerScreen > h1{
  width:calc(100vw - 32px)!important;
  max-width:760px!important;
  margin:0 auto 28px!important;
  text-align:left!important;
  font-size:clamp(28px,7.2vw,40px)!important;
  line-height:1.06!important;
  letter-spacing:.055em!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
}
.challengeInnerScreen .challengeInfoHero,
.challengeInnerScreen .challengeProCard,
.challengeInnerScreen .challengeEntryCard,
.challengeInnerScreen .challengeHistoryCard{
  width:calc(100vw - 32px)!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  border-radius:28px!important;
  box-sizing:border-box!important;
}
.challengeInnerScreen .challengeInfoHero{
  padding:24px 22px!important;
}
.challengeInnerScreen .challengeProCard{
  padding:24px 22px 22px!important;
}
.challengeInnerScreen .challengeEntryCard,
.challengeInnerScreen .challengeHistoryCard{
  padding:22px!important;
  margin-top:18px!important;
}
.challengeInnerScreen .challengeStartBtn,
.challengeInnerScreen .challengeProCard button,
.challengeInnerScreen .challengeEntryCard .btn{
  width:calc(100vw - 32px)!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  border-radius:28px!important;
}
.challengeInnerScreen .challengeEntryCard .btn{
  width:100%!important;
}
.challengeInnerScreen .challengeProTop{
  gap:18px!important;
  align-items:center!important;
}
.challengeInnerScreen .challengeBigRing{
  width:118px!important;
  height:118px!important;
  flex:0 0 118px!important;
}
.challengeInnerScreen .challengeStats{
  gap:10px!important;
}
.challengeInnerScreen .challengeStats div{
  min-height:64px!important;
  border-radius:18px!important;
  padding:10px 14px!important;
}
.challengeInnerScreen .challengeStats b{
  font-size:clamp(26px,7vw,38px)!important;
}
@media(max-width:430px){
  .challengeHomeScreen.masterSubPage .sectionHero{
    height:270px!important;
  }
  .challengeHomeScreen.masterSubPage .coursePageHeader{
    margin-top:-32px!important;
    margin-bottom:12px!important;
  }
  .challengeHomeScreen.masterSubPage > div[style*="padding:8px"]{
    width:calc(100% - 28px)!important;
  }
  .challengeInnerScreen{
    padding-top:calc(env(safe-area-inset-top,0px) + 84px)!important;
  }
  .challengeInnerScreen > h1{
    font-size:clamp(28px,7.4vw,34px)!important;
    margin-bottom:24px!important;
  }
  .challengeInnerScreen .challengeInfoHero,
  .challengeInnerScreen .challengeProCard,
  .challengeInnerScreen .challengeEntryCard,
  .challengeInnerScreen .challengeHistoryCard,
  .challengeInnerScreen .challengeStartBtn{
    width:calc(100vw - 32px)!important;
  }
  .challengeInnerScreen .challengeProCard{
    padding:22px 18px 20px!important;
  }
  .challengeInnerScreen .challengeBigRing{
    width:104px!important;
    height:104px!important;
    flex-basis:104px!important;
  }
  .challengeInnerScreen .challengeBigRing svg{
    width:104px!important;
    height:104px!important;
  }
  .challengeInnerScreen .challengeStats div{
    min-height:58px!important;
    padding:9px 12px!important;
  }
}

/* v44 targeted: Pro challenge mode, cleaner challenge cards, 7-day start border, addon detail button width */
.challengeHomeScreen .challengeProToggleWrap{
  width:calc(100% - 32px)!important;
  max-width:760px!important;
  margin:0 auto 14px!important;
  display:flex!important;
  justify-content:center!important;
}
.challengeHomeScreen .challengeProToggle{
  width:100%!important;
  min-height:58px!important;
  border-radius:24px!important;
  border:1.15px solid rgba(197,151,73,.72)!important;
  background:linear-gradient(180deg,rgba(19,19,18,.96),rgba(4,4,4,.98))!important;
  color:var(--text)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:0 15px!important;
  box-shadow:0 18px 42px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.challengeHomeScreen .challengeProToggle span{
  font-family:var(--font-display)!important;
  font-size:clamp(20px,5vw,30px)!important;
  letter-spacing:.08em!important;
  color:var(--text)!important;
}
.challengeHomeScreen .challengeProToggle em{
  font-style:normal!important;
  font-family:var(--font-display)!important;
  font-size:clamp(13px,3.4vw,17px)!important;
  letter-spacing:.12em!important;
  color:var(--gold)!important;
}
.challengeHomeScreen .challengeProToggle.active{
  border-color:rgba(222,184,105,.9)!important;
  background:radial-gradient(circle at 50% 0%,rgba(202,161,83,.20),transparent 56%),linear-gradient(180deg,rgba(18,18,16,.98),rgba(3,3,3,.99))!important;
}
.challengeHomeScreen .challengeListTitle{
  display:block!important;
  margin-bottom:4px!important;
}
.challengeHomeScreen .challengeListTitle span{
  display:block!important;
  font-family:var(--font-display)!important;
  font-size:clamp(11px,3vw,15px)!important;
  letter-spacing:.16em!important;
  color:var(--gold)!important;
  line-height:1!important;
  margin-bottom:5px!important;
  text-transform:uppercase!important;
}
.challengeHomeScreen .challengeListTitle strong{
  display:block!important;
  font-family:var(--font-display)!important;
  font-size:clamp(20px,5.6vw,30px)!important;
  line-height:1.15!important;
  letter-spacing:.07em!important;
  color:var(--text)!important;
  text-transform:none!important;
}
.challengeHomeScreen.masterSubPage .challengeDash h3{font-size:inherit!important;}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn,
.courseIntroStartBtn{
  border:1.15px solid rgba(197,151,73,.72)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.08), 0 0 16px rgba(197,151,73,.10)!important;
}
.addonDetail .addonNavRow{
  width:calc(100% - 32px)!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.addonDetail .addonNavRow .btn{
  max-width:100%!important;
  box-sizing:border-box!important;
}
.addonDetail .addonLessonCard,
.addonDetail .addonProgressHead,
.addonDetail .addonProgress{
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:430px){
  .challengeHomeScreen .challengeProToggleWrap{width:calc(100% - 28px)!important;margin-bottom:12px!important;}
  .challengeHomeScreen .challengeProToggle{min-height:54px!important;border-radius:22px!important;padding:0 18px!important;}
  .challengeHomeScreen .challengeListTitle strong{font-size:clamp(19px,5.25vw,24px)!important;}
  .addonDetail .addonNavRow{width:calc(100% - 32px)!important;gap:10px!important;}
}

/* v45 VERIFIED PATCH — addon spacing, 7-day start, video border, professional Pro switch */
.addonDetail .addonLessonCard,
.addonDetail .addonProgressHead,
.addonDetail .addonProgress,
.addonDetail .addonNavRow{
  width:calc(100% - 32px)!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.addonDetail .addonLessonCard{
  padding-left:clamp(18px,4.4vw,28px)!important;
  padding-right:clamp(18px,4.4vw,28px)!important;
}
.addonDetail .addonNavRow{
  gap:12px!important;
}
.addonDetail .addonNavRow .btn{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.moduleDashboardScreen .courseIntroStartBtn,
.courseIntroStartBtn{
  border:1.15px solid rgba(197,151,73,.74)!important;
  border-radius:var(--r)!important;
  background:linear-gradient(180deg,rgba(20,20,19,.62),rgba(2,2,2,.92))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 14px 34px rgba(0,0,0,.46),0 0 16px rgba(197,151,73,.13)!important;
}
.introVideoScreen .introVideoPlayer,
.introVideoPlayer{
  border:1.15px solid rgba(255,255,255,.24)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.035) inset!important;
}
.challengeHomeScreen .challengeProToggleWrap{
  width:calc(100% - 32px)!important;
  max-width:760px!important;
  margin:0 auto 16px!important;
  display:flex!important;
  justify-content:center!important;
}
.challengeHomeScreen .challengeProToggle{display:none!important;}
.challengeHomeScreen .challengeProSwitch{
  width:100%!important;
  min-height:54px!important;
  border-radius:20px!important;
  border:1.1px solid rgba(197,151,73,.48)!important;
  background:linear-gradient(180deg,rgba(14,14,13,.86),rgba(2,2,2,.94))!important;
  color:var(--text)!important;
  display:grid!important;
  grid-template-columns:1fr auto auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:0 16px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.challengeHomeScreen .challengeProSwitchLabel{
  font-family:var(--font-display)!important;
  font-size:clamp(17px,4.3vw,24px)!important;
  letter-spacing:.09em!important;
  color:rgba(248,245,238,.96)!important;
  text-align:left!important;
}
.challengeHomeScreen .challengeProSwitchState{
  font-family:var(--font-c)!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  color:rgba(201,168,76,.86)!important;
  text-transform:uppercase!important;
}
.challengeHomeScreen .challengeProSwitchTrack{
  width:54px!important;
  height:30px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.15)!important;
  position:relative!important;
  box-shadow:inset 0 2px 8px rgba(0,0,0,.42)!important;
}
.challengeHomeScreen .challengeProSwitchKnob{
  position:absolute!important;
  top:3px!important;
  left:3px!important;
  width:22px!important;
  height:22px!important;
  border-radius:50%!important;
  background:rgba(245,242,236,.92)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.45)!important;
  transition:transform .18s ease, background .18s ease!important;
}
.challengeHomeScreen .challengeProSwitch.active{
  border-color:rgba(222,184,105,.80)!important;
  background:radial-gradient(circle at 76% 0%,rgba(202,161,83,.20),transparent 56%),linear-gradient(180deg,rgba(18,18,16,.92),rgba(3,3,3,.98))!important;
}
.challengeHomeScreen .challengeProSwitch.active .challengeProSwitchTrack{
  background:rgba(201,168,76,.38)!important;
  border-color:rgba(222,184,105,.58)!important;
}
.challengeHomeScreen .challengeProSwitch.active .challengeProSwitchKnob{
  transform:translateX(24px)!important;
  background:linear-gradient(180deg,#f0d78b,#bd8e43)!important;
}
@media(max-width:430px){
  .addonDetail .addonLessonCard,
  .addonDetail .addonProgressHead,
  .addonDetail .addonProgress,
  .addonDetail .addonNavRow{width:calc(100% - 32px)!important;}
  .challengeHomeScreen .challengeProSwitch{min-height:52px!important;border-radius:18px!important;padding:0 14px!important;}
  .challengeHomeScreen .challengeProSwitchTrack{width:50px!important;height:28px!important;}
  .challengeHomeScreen .challengeProSwitchKnob{width:20px!important;height:20px!important;}
  .challengeHomeScreen .challengeProSwitch.active .challengeProSwitchKnob{transform:translateX(22px)!important;}
}

/* v46 working: new dashboard background + clean 7-day cards */
.courseHomeBg .courseHero{
  background-image:url('assets/img/dashboard-hood-v46.jpeg') !important;
  background-size:cover !important;
  background-position:center top !important;
}
.sevenCourseHome .courseHero,
.thirtyCourseHome .courseHero{
  background-image:url('assets/img/dashboard-hood-v46.jpeg') !important;
  background-size:cover !important;
  background-position:center top !important;
}
.premiumModuleGrid .moduleImageCard.rdDayCardClean,
.moduleDashboardScreen .moduleImageCard.rdDayCardClean{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:13px 56px 13px 56px !important;
}
.premiumModuleGrid .rdDayCardClean .moduleNum{display:none !important;}
.premiumModuleGrid .rdDayCardClean .rdDayCardCopy,
.moduleDashboardScreen .rdDayCardClean .rdDayCardCopy{
  position:relative !important;
  z-index:3 !important;
  width:100% !important;
  max-width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}
.premiumModuleGrid .rdDayCardClean .rdDayKicker,
.moduleDashboardScreen .rdDayCardClean .rdDayKicker{
  font-family:var(--font-display) !important;
  font-size:11px !important;
  line-height:1 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:rgba(217,177,80,.92) !important;
  margin:0 !important;
}
.premiumModuleGrid .rdDayCardClean .moduleCopy h3,
.moduleDashboardScreen .rdDayCardClean .moduleCopy h3{
  font-family:var(--font-display) !important;
  font-size:clamp(18px,4.8vw,23px) !important;
  line-height:1.02 !important;
  letter-spacing:.045em !important;
  color:#fff !important;
  text-transform:uppercase !important;
  margin:0 !important;
  white-space:normal !important;
}
.premiumModuleGrid .rdDayCardClean .moduleCopy p,
.moduleDashboardScreen .rdDayCardClean .moduleCopy p{
  font-size:12px !important;
  line-height:1.15 !important;
  color:rgba(240,237,232,.64) !important;
  margin:1px 0 0 !important;
  padding:0 !important;
  text-align:center !important;
}
.premiumModuleGrid .rdDayCardClean:not(.lockedVisual)::after{
  right:18px !important;
}
.premiumModuleGrid .rdDayCardClean.lockedVisual .rdLockBadge,
.premiumModuleGrid .rdDayCardClean .lockBadge{
  right:16px !important;
}
@media(max-height:760px){
  .premiumModuleGrid .moduleImageCard.rdDayCardClean,
  .moduleDashboardScreen .moduleImageCard.rdDayCardClean{
    padding:11px 52px !important;
  }
  .premiumModuleGrid .rdDayCardClean .moduleCopy h3,
  .moduleDashboardScreen .rdDayCardClean .moduleCopy h3{
    font-size:clamp(16px,4.4vw,20px) !important;
  }
}

/* v48 VERIFIED TARGETED FIX
   Request: replace only dashboard hood background image for 7-day and 30-day dashboards,
   and move AI-SYSTEM / BUILD YOUR DISCIPLINE / divider / button frame slightly upward
   to prevent browser bottom clipping. No other layout/function changes. */
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  background-image:url('assets/img/dashboard-hood-v48.jpeg') !important;
  background-size:cover !important;
  background-position:center top !important;
  background-repeat:no-repeat !important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  transform:translateY(-12px) !important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  transform:translateY(-12px) !important;
}
@media (max-height:740px){
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{
    transform:translateY(-14px) !important;
  }
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    transform:translateY(-16px) !important;
  }
}

/* v50 VERIFIED: replace only 7/30 dashboard hood background + center 7-day start card text */
.courseHomeBg.sevenCourseHome,
.courseHomeBg.thirtyCourseHome{
  background-color:#000!important;
  background-image:url('assets/img/dashboard-hood-v49-final.jpeg')!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  background-image:url('assets/img/dashboard-hood-v49-final.jpeg')!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceInner{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceText{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  margin:0!important;
  padding:0!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard .choiceSubLabel,
.courseHomeBg.sevenCourseHome .sevenStartCard h3{
  width:100%!important;
  text-align:center!important;
  transform:none!important;
}
.courseHomeBg.sevenCourseHome .sevenStartCard h3{
  margin:6px auto 0!important;
}

/* === v51 PREMIUM POLISH · 7/30 dashboards only ===
   Scope: calm hero dominance, lift dashboard function area slightly, reduce gold intensity,
   add more premium transparency/depth, and improve hero-to-UI fade. No routing/functionality changes. */
.courseHomeBg.sevenCourseHome,
.courseHomeBg.thirtyCourseHome{
  background-color:#000!important;
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.36) 0%, rgba(0,0,0,.42) 34%, rgba(0,0,0,.64) 58%, rgba(0,0,0,.96) 86%, #000 100%),
    url('assets/img/dashboard-hood-v49-final.jpeg')!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.courseHomeBg.sevenCourseHome .courseHero,
.courseHomeBg.thirtyCourseHome .courseHero{
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.34) 38%, rgba(0,0,0,.58) 68%, rgba(0,0,0,.96) 100%),
    url('assets/img/dashboard-hood-v49-final.jpeg')!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.courseHomeBg.sevenCourseHome .courseHero::after,
.courseHomeBg.thirtyCourseHome .courseHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.30) 46%,rgba(0,0,0,.82) 80%,#000 100%)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroContent,
.courseHomeBg.thirtyCourseHome .courseHeroContent{
  transform:translateY(-22px)!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  transform:translateY(-24px)!important;
  border-color:rgba(198,156,78,.44)!important;
  background:linear-gradient(180deg,rgba(10,10,8,.30),rgba(2,2,2,.78))!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.025) inset,0 18px 36px rgba(0,0,0,.54),0 0 12px rgba(198,156,78,.055)!important;
  backdrop-filter:blur(1.5px)!important;
  -webkit-backdrop-filter:blur(1.5px)!important;
}
.courseHomeBg.sevenCourseHome .courseHeroUnderline,
.courseHomeBg.thirtyCourseHome .courseHeroUnderline{
  opacity:.62!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,94,.58),transparent)!important;
}
.courseHomeBg.sevenCourseHome .pathImageBtn,
.courseHomeBg.thirtyCourseHome .pathImageBtn,
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceCard,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  border-color:rgba(198,156,78,.52)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.035) inset,0 10px 24px rgba(0,0,0,.46),0 0 10px rgba(198,156,78,.075)!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityTile,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile,
.courseHomeBg.sevenCourseHome .thirtyDatabaseBottom,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
.courseHomeBg.thirtyCourseHome .sevenDatabaseBottom{
  border-color:rgba(198,156,78,.50)!important;
  background:radial-gradient(circle at 50% 0%,rgba(198,156,78,.075),rgba(12,12,10,.50) 42%,rgba(0,0,0,.84) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.025) inset,0 10px 24px rgba(0,0,0,.44),0 0 10px rgba(198,156,78,.06)!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .premiumTileIcon,
.courseHomeBg.sevenCourseHome .databaseIcon,
.courseHomeBg.thirtyCourseHome .databaseIcon{
  opacity:.90!important;
}
@media(max-height:740px){
  .courseHomeBg.sevenCourseHome .courseHeroContent,
  .courseHomeBg.thirtyCourseHome .courseHeroContent{
    transform:translateY(-24px)!important;
  }
  .courseHomeBg.sevenCourseHome .dashboardControlFrame,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    transform:translateY(-26px)!important;
  }
}

/* =========================================================
   V52 — Praxis Dashboard Master-Layout Rebuild
   Scope: Praxis dashboard only. No course/dashboard code changed.
   ========================================================= */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{
  padding-top:calc(var(--sab) + 56px)!important;
  padding-left:14px!important;
  padding-right:14px!important;
  padding-bottom:max(calc(var(--sab) + 16px),18px)!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:100vh!important;
  overflow:hidden!important;
  background-image:
    radial-gradient(circle at 72% 9%, rgba(218,177,74,.14) 0%, rgba(218,177,74,.04) 28%, transparent 55%),
    linear-gradient(180deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.58) 42%, rgba(0,0,0,.90) 78%, #000 100%),
    url('assets/img/praxis-bg.jpeg')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}

.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPraxisShell{
  max-width:430px!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  margin:0 auto!important;
}

/* Hero/Level block: softer, transparent, same premium radius language */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdHeroPanel{
  height:29.5vh!important;
  min-height:230px!important;
  max-height:285px!important;
  flex:0 0 auto!important;
  position:relative!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
}

.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiLevelPanel{
  position:absolute!important;
  right:0!important;
  bottom:8px!important;
  width:min(58vw,265px)!important;
  min-height:174px!important;
  padding:20px 18px 16px!important;
  border-radius:30px!important;
  border:1.15px solid rgba(225,190,92,.42)!important;
  background:linear-gradient(145deg,rgba(5,5,5,.76),rgba(7,7,7,.50))!important;
  box-shadow:0 18px 42px rgba(0,0,0,.48), inset 0 0 0 1px rgba(255,226,140,.055)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiLevelPanel:before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 8% 0%,rgba(225,190,92,.14),transparent 42%);
  pointer-events:none;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop{
  position:relative!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-rows:auto auto!important;
  column-gap:15px!important;
  align-items:center!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop span{
  grid-column:1!important;
  font-family:var(--font-c)!important;
  font-size:9px!important;
  letter-spacing:.16em!important;
  color:rgba(225,190,92,.88)!important;
  line-height:1!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop strong{
  grid-column:1!important;
  font-family:var(--font-c)!important;
  font-size:72px!important;
  line-height:.78!important;
  letter-spacing:-.03em!important;
  color:#e8c66a!important;
  text-shadow:0 0 22px rgba(201,168,76,.20)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop em{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
  font-family:var(--font-c)!important;
  font-style:normal!important;
  font-size:20px!important;
  line-height:1!important;
  letter-spacing:.16em!important;
  color:rgba(248,245,238,.94)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPulseLine{
  position:relative!important;
  margin:16px 0 10px!important;
  height:7px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.12)!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPulseLine i{
  display:block;height:100%;border-radius:inherit;
  background:linear-gradient(90deg,#cba24a,#f0d06f)!important;
  box-shadow:0 0 12px rgba(201,168,76,.24)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid{
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:0!important;
  padding-top:10px!important;
  border-top:1px solid rgba(255,255,255,.18)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid>div{
  padding:0 12px!important;
  text-align:center!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid>div+div{border-left:1px solid rgba(255,255,255,.14)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid small{
  display:block!important;
  font-family:var(--font-c)!important;
  font-size:8px!important;
  letter-spacing:.13em!important;
  color:rgba(225,190,92,.82)!important;
  margin-bottom:4px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid b{
  font-family:var(--font-c)!important;
  font-size:28px!important;
  color:#f2d179!important;
  line-height:1!important;
}

/* Metrics: one unified container, less fragmented */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPerformancePanel{
  height:92px!important;
  min-height:92px!important;
  flex:0 0 92px!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  border-radius:25px!important;
  border:1.1px solid rgba(225,190,92,.38)!important;
  background:linear-gradient(180deg,rgba(8,8,8,.72),rgba(3,3,3,.56))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,226,140,.05)!important;
  overflow:hidden!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge{
  padding:9px 0 7px!important;
  gap:0!important;
  background:transparent!important;
  border:0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge+.rdGauge{border-left:1px solid rgba(255,255,255,.13)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeSvg{width:58px!important;height:32px!important;margin:0 auto -2px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeTrack,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeValue{stroke-width:5.3!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeTrack{stroke:rgba(255,255,255,.13)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeValue{stroke:#d9b65d!important;filter:drop-shadow(0 0 7px rgba(201,168,76,.22))!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge-good .rdGaugeValue{stroke:#63ef76!important;filter:drop-shadow(0 0 7px rgba(99,239,118,.24))!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge-bad .rdGaugeValue{stroke:#f06778!important;filter:drop-shadow(0 0 7px rgba(240,103,120,.24))!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge b{
  font-size:6.8px!important;
  letter-spacing:.15em!important;
  color:rgba(248,245,238,.94)!important;
  margin-top:-2px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge strong{
  font-size:24px!important;
  color:rgba(248,245,238,.98)!important;
  margin-top:3px!important;
}

/* Progress panel: Master-style radius, softer gold, quieter rows */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdScoreDrawer,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdScoreDrawerFixed{
  flex:1 1 auto!important;
  min-height:0!important;
  margin:0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdProgressPanel{
  height:100%!important;
  min-height:0!important;
  padding:13px!important;
  gap:9px!important;
  border-radius:28px!important;
  border:1.1px solid rgba(225,190,92,.40)!important;
  background:linear-gradient(180deg,rgba(5,5,5,.76),rgba(2,2,2,.58))!important;
  box-shadow:0 18px 40px rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,226,140,.045)!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisProgressRow{
  height:58px!important;
  min-height:58px!important;
  grid-template-columns:48px minmax(0,1fr) 42px!important;
  gap:10px!important;
  padding:7px 8px!important;
  border-radius:18px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.09)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowIcon{
  width:40px!important;height:40px!important;border-radius:14px!important;
  border:1px solid rgba(225,190,92,.34)!important;
  background:rgba(225,190,92,.08)!important;
  box-shadow:inset 0 0 0 1px rgba(255,226,140,.035)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowIcon svg{width:21px!important;height:21px!important;stroke:#d8b65d!important;stroke-width:1.8!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowText{gap:7px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowText strong{
  font-size:14.6px!important;
  letter-spacing:.10em!important;
  color:rgba(248,245,238,.96)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowBar{height:4px!important;background:rgba(255,255,255,.12)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowBar i{background:linear-gradient(90deg,#caa24d,#f0cf70)!important;box-shadow:0 0 8px rgba(201,168,76,.18)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowCount b{font-size:14.5px!important;color:#efd071!important;}

.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdDashboardActions{flex:0 0 auto!important;margin:0!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdMainAction,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdDayStartAction{
  height:60px!important;
  min-height:60px!important;
  border-radius:22px!important;
  border:1.15px solid rgba(225,190,92,.44)!important;
  background:linear-gradient(180deg,rgba(42,42,42,.72),rgba(18,18,18,.78))!important;
  box-shadow:0 18px 36px rgba(0,0,0,.40), inset 0 0 0 1px rgba(255,255,255,.06)!important;
}

@media(max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{padding-top:calc(var(--sab) + 52px)!important;padding-bottom:max(calc(var(--sab) + 12px),14px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPraxisShell{gap:9px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdHeroPanel{height:26vh!important;min-height:205px!important;max-height:240px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiLevelPanel{min-height:150px!important;width:min(58vw,250px)!important;padding:17px 15px 13px!important;border-radius:27px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop strong{font-size:62px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop em{font-size:18px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid b{font-size:24px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPerformancePanel{height:82px!important;min-height:82px!important;flex-basis:82px!important;border-radius:22px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeSvg{width:50px!important;height:29px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge strong{font-size:20px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge b{font-size:6.2px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdProgressPanel{padding:10px!important;gap:7px!important;border-radius:25px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisProgressRow{height:48px!important;min-height:48px!important;grid-template-columns:42px minmax(0,1fr) 38px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowIcon{width:35px!important;height:35px!important;border-radius:12px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowText strong{font-size:12.7px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowCount b{font-size:12.8px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdMainAction{height:52px!important;min-height:52px!important;border-radius:20px!important;}
}

/* =========================================================
   v53 — Praxis final consistency rebuild
   Scope: Praxis Dashboard + Praxis Coach only.
   Purpose: align radius, gold tone, hero calmness, start button, coach header.
   ========================================================= */
:root{
  --rd-master-gold:#c49a59;
  --rd-master-gold-soft:rgba(196,154,89,.58);
  --rd-master-gold-line:rgba(196,154,89,.48);
  --rd-master-card:rgba(4,4,4,.72);
  --rd-master-card-deep:rgba(2,2,2,.84);
  --rd-master-radius:22px;
  --rd-master-radius-sm:18px;
}

/* Praxis dashboard: calmer background, less yellow, master radius */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{
  padding-top:calc(var(--sab) + 56px)!important;
  padding-left:14px!important;
  padding-right:14px!important;
  padding-bottom:max(calc(var(--sab) + 16px),18px)!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.34) 0%,rgba(0,0,0,.62) 40%,rgba(0,0,0,.91) 78%,#000 100%),
    radial-gradient(circle at 68% 8%,rgba(196,154,89,.08) 0%,rgba(196,154,89,.025) 30%,transparent 58%),
    url('assets/img/praxis-bg.jpeg')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPraxisShell{
  gap:10px!important;
  max-width:430px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdHeroPanel{
  height:28.5vh!important;
  min-height:222px!important;
  max-height:270px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdHeroPanel:after{
  content:""!important;
  position:absolute!important;
  left:-14px!important;right:-14px!important;bottom:-22px!important;height:90px!important;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.78) 72%,#000 100%)!important;
  pointer-events:none!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiLevelPanel{
  bottom:4px!important;
  width:min(56vw,258px)!important;
  min-height:164px!important;
  padding:18px 16px 14px!important;
  border-radius:var(--rd-master-radius)!important;
  border:1px solid var(--rd-master-gold-line)!important;
  background:linear-gradient(145deg,rgba(4,4,4,.80),rgba(5,5,5,.60))!important;
  box-shadow:0 16px 34px rgba(0,0,0,.50), inset 0 0 0 1px rgba(255,226,140,.035)!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiLevelPanel:before{
  opacity:.45!important;
  background:radial-gradient(circle at 8% 0%,rgba(196,154,89,.10),transparent 42%)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop span,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid small{
  color:var(--rd-master-gold)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop strong,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid b{
  color:#d9b65d!important;
  text-shadow:none!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop strong{font-size:66px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop em{font-size:19px!important;letter-spacing:.15em!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPulseLine{height:6px!important;margin:14px 0 9px!important;background:rgba(255,255,255,.12)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPulseLine i{background:linear-gradient(90deg,#b8893f,#d6b35b)!important;box-shadow:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid{border-top:1px solid rgba(255,255,255,.14)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiDataGrid>div+div{border-left:1px solid rgba(255,255,255,.12)!important;}

/* unified metrics container: master radius, matte border, quieter gauges */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPerformancePanel{
  height:88px!important;
  min-height:88px!important;
  flex-basis:88px!important;
  border-radius:var(--rd-master-radius)!important;
  border:1px solid var(--rd-master-gold-line)!important;
  background:linear-gradient(180deg,rgba(4,4,4,.78),rgba(2,2,2,.66))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.44), inset 0 0 0 1px rgba(255,226,140,.035)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge+.rdGauge{border-left:1px solid rgba(255,255,255,.10)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeSvg{width:55px!important;height:31px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeTrack,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeValue{stroke-width:4.8!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGaugeValue{stroke:#c49a59!important;filter:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge-good .rdGaugeValue{stroke:#55d36b!important;filter:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge-bad .rdGaugeValue{stroke:#e65f72!important;filter:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge strong{font-size:23px!important;text-shadow:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdGauge b{color:rgba(248,245,238,.88)!important;}

/* Progress card and rows: same master language, less bubble radius */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdProgressPanel{
  border-radius:var(--rd-master-radius)!important;
  border:1px solid var(--rd-master-gold-line)!important;
  background:linear-gradient(180deg,rgba(4,4,4,.78),rgba(0,0,0,.66))!important;
  box-shadow:0 16px 34px rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,226,140,.035)!important;
  padding:12px!important;
  gap:7px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisProgressRow{
  border-radius:var(--rd-master-radius-sm)!important;
  height:56px!important;
  min-height:56px!important;
  padding:7px 8px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.075)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowIcon{
  border-radius:13px!important;
  border:1px solid rgba(196,154,89,.38)!important;
  background:rgba(196,154,89,.075)!important;
  box-shadow:none!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowIcon svg{stroke:#c49a59!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowBar i{background:linear-gradient(90deg,#b8893f,#d6b35b)!important;box-shadow:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisRowCount b{color:#d9b65d!important;}

/* Start day button: remove double ring / gaming glow */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdMainAction,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdDayStartAction{
  height:58px!important;
  min-height:58px!important;
  border-radius:var(--rd-master-radius-sm)!important;
  border:1px solid var(--rd-master-gold-line)!important;
  background:linear-gradient(180deg,rgba(26,26,26,.72),rgba(7,7,7,.82))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.44), inset 0 0 0 1px rgba(255,255,255,.04)!important;
}

/* Praxis coach: header below nav, no avatar collision, cleaner chat */
.praxisCoachPage{
  background:#050505!important;
  padding-top:calc(var(--sab) + 70px)!important;
}
.praxisCoachPage .compactCoachHero,
.praxisCoachPage .coachPageHero.compactCoachHero{
  margin:0 16px 10px!important;
  padding:10px 0 10px!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:42px 1fr!important;
  gap:11px!important;
  align-items:center!important;
  background:transparent!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.praxisCoachPage .compactCoachHero img{
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  border:1px solid var(--rd-master-gold-line)!important;
  box-shadow:none!important;
}
.praxisCoachPage .compactCoachHero .miniLabel{
  font-size:10px!important;
  letter-spacing:.16em!important;
  color:var(--rd-master-gold)!important;
  white-space:nowrap!important;
}
.praxisCoachPage .compactCoachHero h1{
  font-size:22px!important;
  line-height:.95!important;
  letter-spacing:.08em!important;
  margin:1px 0 0!important;
}
.praxisCoachPage .compactCoachHero p{font-size:12px!important;color:rgba(240,237,232,.62)!important;margin-top:3px!important;}
.praxisCoachPage #praxisChatShell{padding:0 16px!important;}
.praxisCoachPage #praxisChatMessages{padding-top:8px!important;}
.praxisCoachPage .chatBubble.coach,
.praxisCoachPage .chatBubble.user{
  border-radius:var(--rd-master-radius-sm)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(18,18,18,.72)!important;
  box-shadow:none!important;
}
.praxisCoachPage .chatBubble.system{border-radius:var(--rd-master-radius-sm)!important;}
.praxisCoachPage .dashboardReviewBtn{
  border-radius:var(--rd-master-radius-sm)!important;
  border:1px solid var(--rd-master-gold-line)!important;
  background:linear-gradient(180deg,rgba(20,20,20,.82),rgba(4,4,4,.90))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,255,255,.035)!important;
}

@media(max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdHeroPanel{height:25.5vh!important;min-height:198px!important;max-height:232px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiLevelPanel{min-height:142px!important;width:min(56vw,246px)!important;padding:15px 14px 12px!important;border-radius:20px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop strong{font-size:58px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdAiPanelTop em{font-size:17px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdPerformancePanel{height:80px!important;min-height:80px!important;flex-basis:80px!important;border-radius:20px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdProgressPanel{border-radius:20px!important;padding:10px!important;gap:6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisProgressRow{height:48px!important;min-height:48px!important;border-radius:16px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdMainAction{height:52px!important;min-height:52px!important;border-radius:17px!important;}
}


/* =========================================================
   v54 Praxis one-screen rebuild from approved mockup
   - only Praxis home layout
   - no coach box/input/evening button on dashboard
   ========================================================= */
.aiPraxisScreen.praxisOnePage{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 58px) 14px max(calc(var(--sab) + 12px),12px)!important;
  background:#030303!important;
}
.aiPraxisScreen.praxisOnePage .topbar.rdGlobalTopbar{z-index:20!important;}
.praxisOneScreen{
  width:100%!important;
  max-width:430px!important;
  height:100%!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  position:relative!important;
  z-index:1!important;
}
.praxisOneHero{
  position:absolute!important;
  z-index:-1!important;
  left:-14px!important;right:-14px!important;top:calc(-1 * (var(--sab) + 58px))!important;
  height:39svh!important;
  min-height:255px!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.46) 42%,rgba(0,0,0,.80) 78%,#030303 100%),
    linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.26) 43%,rgba(0,0,0,.68) 100%),
    url('assets/img/praxis-mockup-hero.jpeg')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:.96!important;
  pointer-events:none!important;
}
.praxisOneGreeting{
  flex:0 0 auto!important;
  min-height:118px!important;
  padding:30px 6px 0!important;
  color:#f6f2e9!important;
}
.praxisOneGreeting:before{
  content:"";display:block;width:42px;height:1px;margin:0 0 16px 0;background:linear-gradient(90deg,#c49a59,transparent)!important;
}
.praxisOneGreeting h1{
  margin:0!important;
  max-width:235px!important;
  font-family:var(--font-c)!important;
  font-size:clamp(26px,4.9svh,39px)!important;
  line-height:.98!important;
  letter-spacing:.055em!important;
  text-shadow:0 3px 18px rgba(0,0,0,.72)!important;
}
.praxisOneGreeting p{
  margin:10px 0 0!important;
  max-width:255px!important;
  font-size:13px!important;
  line-height:1.45!important;
  color:rgba(240,237,232,.72)!important;
}
.praxisOneLevelCard,
.praxisOneStats,
.praxisOneProgress{
  border:1px solid rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg,rgba(10,10,10,.72),rgba(3,3,3,.80))!important;
  box-shadow:0 14px 32px rgba(0,0,0,.44), inset 0 0 0 1px rgba(255,255,255,.025)!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
}
.praxisOneLevelCard{
  flex:0 0 118px!important;
  border-radius:20px!important;
  padding:14px 17px 12px!important;
}
.praxisOneLevelMain{display:grid!important;grid-template-columns:90px 1fr!important;gap:12px!important;align-items:center!important;}
.praxisOneLevelMain small,
.praxisOneLevelMeta span,
.praxisOneStats small{
  font-family:var(--font-c)!important;
  letter-spacing:.16em!important;
  color:#c49a59!important;
}
.praxisOneLevelMain small{display:block;font-size:9px!important;margin-bottom:0!important;}
.praxisOneLevelMain strong{display:block;font-family:var(--font-c)!important;font-size:54px!important;line-height:.86!important;color:#f1f0ed!important;text-shadow:none!important;}
.praxisOneLevelMain h2{margin:16px 0 0!important;font-family:var(--font-c)!important;font-size:20px!important;letter-spacing:.25em!important;color:#f6f2e9!important;}
.praxisOneLevelBar{height:5px!important;border-radius:20px!important;background:rgba(255,255,255,.12)!important;overflow:hidden!important;margin:9px 0 8px!important;}
.praxisOneLevelBar i{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,#b88b45,#d8bd72)!important;}
.praxisOneLevelMeta{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;}
.praxisOneLevelMeta span{font-size:8.5px!important;color:#c49a59!important;}
.praxisOneLevelMeta b{font-size:13px!important;color:#f0d27f!important;}
.praxisOneStats{
  flex:0 0 94px!important;
  border-radius:19px!important;
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  overflow:hidden!important;
}
.praxisOneStat{padding:10px 7px 8px!important;text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;}
.praxisOneStat+.praxisOneStat{border-left:1px solid rgba(255,255,255,.10)!important;}
.praxisOneStatIcon{font-size:20px!important;line-height:1!important;color:#d4b46a!important;}
.praxisOneStat small{font-size:8px!important;color:rgba(245,241,232,.88)!important;}
.praxisOneStat strong{font-family:var(--font-c)!important;font-size:27px!important;line-height:.9!important;color:#f6f2e9!important;}
.praxisOneStat i{display:block;width:46px!important;height:3px!important;border-radius:20px;background:rgba(255,255,255,.13)!important;overflow:hidden!important;margin-top:1px!important;}
.praxisOneStat i em{display:block;height:100%;border-radius:20px;background:#c49a59!important;}
.praxisOneStat.energy i em{background:#4f9c62!important}.praxisOneStat.stress i em{background:#d68050!important}.praxisOneStat.sleep i em{background:#6f86a6!important}
.praxisOneStat b{font-size:10.5px!important;font-weight:500!important;color:rgba(240,237,232,.62)!important;}
.praxisOneProgress{
  flex:1 1 auto!important;
  min-height:0!important;
  border-radius:20px!important;
  padding:8px 10px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}
.praxisOneProgress .praxisProgressRow{
  height:20%!important;
  min-height:0!important;
  border-radius:0!important;
  padding:4px 4px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:44px 1fr 43px!important;
  gap:10px!important;
}
.praxisOneProgress .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.08)!important;}
.praxisOneProgress .praxisRowIcon{
  width:34px!important;height:34px!important;border-radius:10px!important;
  border:1px solid rgba(196,154,89,.30)!important;background:rgba(255,255,255,.025)!important;box-shadow:none!important;
}
.praxisOneProgress .praxisRowIcon svg{width:18px!important;height:18px!important;stroke:#c49a59!important;}
.praxisOneProgress .praxisRowText strong{font-size:15px!important;letter-spacing:.095em!important;line-height:1!important;color:#f6f2e9!important;}
.praxisOneProgress .praxisRowBar{height:4px!important;margin-top:7px!important;background:rgba(255,255,255,.11)!important;}
.praxisOneProgress .praxisRowBar i{background:linear-gradient(90deg,#b88b45,#d8bd72)!important;box-shadow:none!important;}
.praxisOneProgress .praxisRowCount b{font-size:14px!important;color:#d8bd72!important;}
.praxisOneStartBtn{
  flex:0 0 55px!important;
  height:55px!important;
  min-height:55px!important;
  border-radius:17px!important;
  border:1px solid rgba(196,154,89,.50)!important;
  background:linear-gradient(180deg,rgba(30,30,30,.72),rgba(5,5,5,.86))!important;
  box-shadow:0 12px 30px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.04)!important;
  color:#f7f3eb!important;
  letter-spacing:.18em!important;
}
@media(max-height:760px){
  .aiPraxisScreen.praxisOnePage{padding-top:calc(var(--sab) + 52px)!important;padding-bottom:max(calc(var(--sab) + 10px),10px)!important;}
  .praxisOneScreen{gap:7px!important;}
  .praxisOneHero{height:36svh!important;min-height:230px!important;}
  .praxisOneGreeting{min-height:104px!important;padding-top:22px!important;}
  .praxisOneGreeting h1{font-size:clamp(24px,4.55svh,34px)!important;}
  .praxisOneGreeting p{font-size:12px!important;margin-top:7px!important;}
  .praxisOneLevelCard{flex-basis:106px!important;padding:12px 15px 10px!important;}
  .praxisOneLevelMain strong{font-size:48px!important;}.praxisOneLevelMain h2{font-size:17px!important;}
  .praxisOneStats{flex-basis:82px!important;}.praxisOneStat strong{font-size:24px!important;}.praxisOneStat b{display:none!important;}
  .praxisOneProgress .praxisProgressRow{grid-template-columns:39px 1fr 39px!important;gap:8px!important;}
  .praxisOneProgress .praxisRowIcon{width:30px!important;height:30px!important;}.praxisOneProgress .praxisRowText strong{font-size:13px!important;}
  .praxisOneStartBtn{flex-basis:50px!important;height:50px!important;min-height:50px!important;}
}

/* =========================================================
   v55 targeted Praxis dashboard + coach cleanup
   - fixes clipped stat labels and bottom spacing
   - removes visual overlap by reserving CTA height
   - turns praxis coach into clean chat-only page
   ========================================================= */
.aiPraxisScreen.praxisOnePage{
  padding-top:calc(var(--sab) + 50px)!important;
  padding-bottom:max(calc(var(--sab) + 12px),12px)!important;
}
.praxisOneScreen{
  gap:7px!important;
}
.praxisOneHero{
  height:35svh!important;
  min-height:224px!important;
  opacity:.88!important;
}
.praxisOneGreeting{
  min-height:96px!important;
  padding-top:18px!important;
}
.praxisOneGreeting h1{
  font-size:clamp(25px,4.75svh,36px)!important;
  max-width:260px!important;
}
.praxisOneGreeting p{
  margin-top:7px!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.praxisOneLevelCard{
  flex-basis:108px!important;
  min-height:108px!important;
  padding:12px 16px 10px!important;
  border-radius:18px!important;
}
.praxisOneLevelMain{
  grid-template-columns:82px 1fr!important;
}
.praxisOneLevelMain strong{font-size:48px!important;}
.praxisOneLevelMain h2{font-size:18px!important;margin-top:14px!important;}
.praxisOneLevelBar{margin:7px 0 7px!important;}
.praxisOneStats{
  flex-basis:108px!important;
  min-height:108px!important;
  border-radius:18px!important;
}
.praxisOneStat{
  padding:8px 6px 7px!important;
  gap:4px!important;
}
.praxisOneStat strong{
  font-size:25px!important;
  line-height:1!important;
}
.praxisOneStat b{
  display:block!important;
  font-size:9.5px!important;
  line-height:1.05!important;
  max-height:12px!important;
  overflow:hidden!important;
}
.praxisOneStat i{width:44px!important;margin-top:0!important;}
.praxisOneProgress{
  flex:1 1 auto!important;
  min-height:252px!important;
  border-radius:18px!important;
  padding:8px 10px!important;
  margin-bottom:4px!important;
  overflow:hidden!important;
}
.praxisOneProgress .praxisProgressRow{
  grid-template-columns:38px 1fr 38px!important;
  gap:9px!important;
  padding:4px 2px!important;
}
.praxisOneProgress .praxisRowIcon{
  width:31px!important;
  height:31px!important;
  border-radius:9px!important;
}
.praxisOneProgress .praxisRowText strong{
  font-size:13px!important;
  letter-spacing:.09em!important;
}
.praxisOneProgress .praxisRowBar{
  height:4px!important;
  margin-top:6px!important;
}
.praxisOneProgress .praxisRowCount b{
  font-size:13px!important;
}
.praxisOneStartBtn{
  flex:0 0 52px!important;
  height:52px!important;
  min-height:52px!important;
  margin-top:0!important;
  border-radius:16px!important;
  position:relative!important;
  z-index:3!important;
}
@media(max-height:760px){
  .praxisOneGreeting{min-height:86px!important;padding-top:14px!important;}
  .praxisOneGreeting h1{font-size:clamp(22px,4.2svh,31px)!important;}
  .praxisOneGreeting p{font-size:11.5px!important;}
  .praxisOneLevelCard{flex-basis:96px!important;min-height:96px!important;}
  .praxisOneLevelMain strong{font-size:42px!important;}.praxisOneLevelMain h2{font-size:16px!important;}
  .praxisOneStats{flex-basis:96px!important;min-height:96px!important;}
  .praxisOneStatIcon{font-size:17px!important;}.praxisOneStat strong{font-size:22px!important;}.praxisOneStat b{display:block!important;font-size:8.5px!important;}
  .praxisOneProgress{min-height:224px!important;}
  .praxisOneProgress .praxisRowIcon{width:28px!important;height:28px!important;}
  .praxisOneProgress .praxisRowText strong{font-size:12px!important;}
  .praxisOneStartBtn{flex-basis:48px!important;height:48px!important;min-height:48px!important;}
}

.praxisCoachPage.praxisCoachCleanPage{
  height:100svh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 56px) 16px max(calc(var(--sab) + 12px),12px)!important;
  display:flex!important;
  flex-direction:column!important;
  background:#050505!important;
}
.praxisCoachCleanPage .topbar.rdGlobalTopbar{z-index:20!important;}
.praxisCoachCleanPage .compactCoachHero{
  flex:0 0 auto!important;
  position:relative!important;
  top:auto!important;left:auto!important;right:auto!important;
  margin:8px 0 10px!important;
  padding:0!important;
  min-height:58px!important;
  gap:12px!important;
  border-bottom:0!important;
  background:transparent!important;
}
.praxisCoachCleanPage .compactCoachHero img{
  width:48px!important;height:48px!important;border-radius:50%!important;
  border:1px solid rgba(196,154,89,.75)!important;
}
.praxisCoachCleanPage .compactCoachHero h1{
  font-size:24px!important;
  letter-spacing:.10em!important;
}
.praxisCoachCleanPage .compactCoachHero p{
  display:none!important;
}
.praxisCoachCleanPage .compactCoachHero .miniLabel{
  font-size:10px!important;
  letter-spacing:.18em!important;
}
.praxisCoachCleanPage #praxisChatShell{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:18px!important;
  background:rgba(11,11,11,.66)!important;
  overflow:hidden!important;
}
.praxisCoachCleanPage #praxisChatMessages{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  padding:14px 12px 12px!important;
}
.praxisCoachCleanPage .quickPanel{
  margin:0 12px 10px!important;
}
.praxisCoachCleanPage .chatInputRow{
  flex:0 0 auto!important;
  margin:0!important;
  padding:10px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  background:rgba(0,0,0,.36)!important;
}
.praxisCoachCleanPage .chatInputRow input{
  height:48px!important;
  border-radius:16px!important;
  background:rgba(0,0,0,.55)!important;
}
.praxisCoachCleanPage .chatInputRow button{
  width:48px!important;height:48px!important;border-radius:16px!important;
}
.praxisCoachCleanPage .dashboardReviewBtn{
  flex:0 0 54px!important;
  height:54px!important;
  min-height:54px!important;
  margin:12px 0 0!important;
  border-radius:17px!important;
  border:1px solid rgba(196,154,89,.58)!important;
  background:linear-gradient(180deg,rgba(23,23,23,.82),rgba(4,4,4,.92))!important;
  box-shadow:0 12px 28px rgba(0,0,0,.40), inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.praxisCoachCleanPage #lockedPanel{display:none!important;}

/* =========================================================
   v56 targeted Praxis spacing + coach controls fix
   - no layout rewrite, only internal sizing/alignment fixes
   - Praxis progress row becomes visual/count only
   ========================================================= */
.aiPraxisScreen.praxisOnePage{
  padding-top:calc(var(--sab) + 46px)!important;
  padding-bottom:max(calc(var(--sab) + 10px),10px)!important;
}
.praxisOneScreen{
  gap:6px!important;
}
.praxisOneHero{
  height:33.5svh!important;
  min-height:214px!important;
  max-height:292px!important;
}
.praxisOneGreeting{
  min-height:88px!important;
  padding-top:13px!important;
}
.praxisOneGreeting h1{
  font-size:clamp(24px,4.55svh,34px)!important;
  line-height:.97!important;
  max-width:300px!important;
}
.praxisOneGreeting p{
  font-size:12px!important;
  line-height:1.34!important;
  margin-top:6px!important;
  max-width:310px!important;
}
.praxisOneLevelCard{
  flex-basis:104px!important;
  min-height:104px!important;
  padding:11px 16px 13px!important;
  border-radius:17px!important;
  overflow:hidden!important;
}
.praxisOneLevelMain{
  grid-template-columns:74px 1fr!important;
  align-items:center!important;
}
.praxisOneLevelMain small{
  font-size:8.5px!important;
  line-height:1!important;
}
.praxisOneLevelMain strong{
  font-size:44px!important;
  line-height:.88!important;
}
.praxisOneLevelMain h2{
  font-size:17px!important;
  line-height:1!important;
  margin-top:10px!important;
  letter-spacing:.20em!important;
}
.praxisOneLevelBar{
  height:5px!important;
  margin:8px 0 8px!important;
}
.praxisOneLevelMeta{
  align-items:center!important;
  line-height:1!important;
  gap:10px!important;
  font-size:8.4px!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.praxisOneLevelMeta span:last-child{
  text-align:right!important;
  min-width:96px!important;
}
.praxisOneLevelMeta b{font-size:12px!important;}
.praxisOneStats{
  flex-basis:106px!important;
  min-height:106px!important;
  border-radius:17px!important;
  overflow:hidden!important;
}
.praxisOneStat{
  padding:8px 4px 8px!important;
  gap:4px!important;
  justify-content:center!important;
  min-width:0!important;
}
.praxisOneStatIcon{
  font-size:17px!important;
  line-height:1!important;
  height:17px!important;
}
.praxisOneStat small{
  font-size:8px!important;
  letter-spacing:.135em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.praxisOneStat strong{
  font-size:23px!important;
  line-height:.95!important;
}
.praxisOneStat i{
  width:40px!important;
  height:3px!important;
  margin:0 auto!important;
}
.praxisOneStat b{
  display:block!important;
  font-size:8.2px!important;
  line-height:1!important;
  max-height:10px!important;
  min-height:10px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.praxisOneProgress{
  flex:1 1 auto!important;
  min-height:248px!important;
  border-radius:17px!important;
  padding:7px 9px!important;
  margin-bottom:3px!important;
  overflow:hidden!important;
}
.praxisOneProgress .praxisProgressRow{
  height:20%!important;
  min-height:0!important;
  grid-template-columns:34px minmax(0,1fr) 34px!important;
  gap:8px!important;
  padding:3px 2px!important;
  align-items:center!important;
  cursor:pointer!important;
}
.praxisOneProgress .praxisProgressRow:nth-child(2){
  pointer-events:none!important;
  cursor:default!important;
}
.praxisOneProgress .praxisRowIcon{
  width:29px!important;
  height:29px!important;
  border-radius:8px!important;
}
.praxisOneProgress .praxisRowIcon svg{
  width:16px!important;
  height:16px!important;
}
.praxisOneProgress .praxisRowText{
  min-width:0!important;
  overflow:hidden!important;
}
.praxisOneProgress .praxisRowText strong{
  font-size:12.3px!important;
  letter-spacing:.075em!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.praxisOneProgress .praxisRowBar{
  height:4px!important;
  margin-top:6px!important;
}
.praxisOneProgress .praxisRowCount{
  justify-self:end!important;
  text-align:right!important;
}
.praxisOneProgress .praxisRowCount b{
  font-size:12.2px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.praxisOneStartBtn{
  flex:0 0 50px!important;
  height:50px!important;
  min-height:50px!important;
  border-radius:16px!important;
  margin-top:0!important;
  width:100%!important;
}

@media(max-height:760px){
  .aiPraxisScreen.praxisOnePage{padding-top:calc(var(--sab) + 44px)!important;padding-bottom:max(calc(var(--sab) + 8px),8px)!important;}
  .praxisOneScreen{gap:5px!important;}
  .praxisOneHero{height:31svh!important;min-height:198px!important;}
  .praxisOneGreeting{min-height:80px!important;padding-top:11px!important;}
  .praxisOneGreeting h1{font-size:clamp(22px,4.05svh,30px)!important;}
  .praxisOneGreeting p{font-size:11px!important;line-height:1.28!important;margin-top:4px!important;}
  .praxisOneLevelCard{flex-basis:92px!important;min-height:92px!important;padding:9px 14px 11px!important;}
  .praxisOneLevelMain{grid-template-columns:66px 1fr!important;}
  .praxisOneLevelMain strong{font-size:38px!important;}.praxisOneLevelMain h2{font-size:15px!important;margin-top:8px!important;}
  .praxisOneLevelBar{margin:6px 0 7px!important;}
  .praxisOneLevelMeta{font-size:7.6px!important;letter-spacing:.10em!important;}
  .praxisOneLevelMeta span:last-child{min-width:84px!important;}
  .praxisOneStats{flex-basis:91px!important;min-height:91px!important;}
  .praxisOneStat{padding:6px 3px 6px!important;gap:3px!important;}
  .praxisOneStatIcon{font-size:15px!important;height:15px!important;}
  .praxisOneStat small{font-size:7.4px!important;letter-spacing:.12em!important;}
  .praxisOneStat strong{font-size:20px!important;}
  .praxisOneStat i{width:35px!important;}
  .praxisOneStat b{font-size:7.5px!important;min-height:8px!important;max-height:8px!important;}
  .praxisOneProgress{min-height:218px!important;padding:6px 8px!important;}
  .praxisOneProgress .praxisProgressRow{grid-template-columns:30px minmax(0,1fr) 32px!important;gap:7px!important;padding:2px 1px!important;}
  .praxisOneProgress .praxisRowIcon{width:26px!important;height:26px!important;}
  .praxisOneProgress .praxisRowIcon svg{width:15px!important;height:15px!important;}
  .praxisOneProgress .praxisRowText strong{font-size:11px!important;letter-spacing:.045em!important;}
  .praxisOneProgress .praxisRowBar{margin-top:5px!important;}
  .praxisOneProgress .praxisRowCount b{font-size:11px!important;}
  .praxisOneStartBtn{flex-basis:47px!important;height:47px!important;min-height:47px!important;}
}

/* Coach page: align send button and make close-day CTA match sector width */
.praxisCoachCleanPage .chatInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 52px!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px 12px!important;
}
.praxisCoachCleanPage .chatInputRow input{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.praxisCoachCleanPage .chatInputRow button{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.praxisCoachCleanPage .chatInputRow button svg{
  display:block!important;
  width:17px!important;
  height:17px!important;
  transform:translateX(1px)!important;
}
.praxisCoachCleanPage .dashboardReviewBtn{
  width:100%!important;
  margin:12px 0 0!important;
  align-self:stretch!important;
  box-sizing:border-box!important;
}

/* =========================================================
   v57 final targeted polish only
   - evening review / saved screens start below global nav
   - unified lighter premium yellow accents on dashboard + praxis
   ========================================================= */
:root{
  --rd-accent-yellow:#E6C65A;
  --rd-accent-yellow-soft:rgba(230,198,90,.82);
  --rd-accent-yellow-border:rgba(230,198,90,.46);
  --rd-accent-yellow-glow:rgba(230,198,90,.14);
}

/* 7-day evening review + saved screens: keep content below fixed top icons */
.journalScreen,
.aiCheckinCompleteScreen,
.dayCompleteScreen{
  padding-top:calc(var(--sat,0px) + 74px)!important;
  overflow-y:auto!important;
  min-height:100dvh!important;
}
.journalScreen .coursePageHeader,
.aiCheckinCompleteScreen > .tag,
.aiCheckinCompleteScreen > h1,
.dayCompleteScreen > div:first-child{
  margin-top:0!important;
}
.journalScreen .coursePageHeader h1{
  padding-top:0!important;
}
.journalScreen > .card{
  margin-top:14px!important;
}
.aiCheckinCompleteScreen > .tag{
  display:none!important;
}
.aiCheckinCompleteScreen > h1{
  font-size:clamp(38px,10vw,52px)!important;
  line-height:.92!important;
  padding:0 18px!important;
}
.aiCheckinCompleteScreen > .card.chat{
  margin:18px 16px 0!important;
}
.aiCheckinCompleteScreen > .btn{
  width:calc(100% - 32px)!important;
  margin:22px 16px 0!important;
}
.dayCompleteScreen{
  justify-content:flex-start!important;
  text-align:center!important;
}
.dayCompleteScreen > .btn{
  margin-top:24px!important;
}

/* 7/30 dashboard: lighter premium yellow only on icons + AI-SYSTEM labels */
.courseHomeBg.sevenCourseHome .courseHeroKicker,
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  color:var(--rd-accent-yellow)!important;
  text-shadow:0 0 14px rgba(230,198,90,.16)!important;
}
.courseHomeBg.sevenCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .premiumTileIcon,
.courseHomeBg.sevenCourseHome .databaseIcon,
.courseHomeBg.thirtyCourseHome .databaseIcon,
.courseHomeBg.sevenCourseHome .premiumUtilityTile svg,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile svg,
.courseHomeBg.sevenCourseHome .thirtyDatabaseBottom svg,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom svg,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom svg,
.courseHomeBg.thirtyCourseHome .sevenDatabaseBottom svg{
  color:var(--rd-accent-yellow)!important;
  stroke:var(--rd-accent-yellow)!important;
  filter:drop-shadow(0 0 8px rgba(230,198,90,.12))!important;
}

/* Praxis dashboard: unify yellow accents, keep structure unchanged */
.praxisOneLevelMain small,
.praxisOneLevelMeta,
.praxisOneLevelMeta b,
.praxisOneStatIcon,
.praxisOneProgress .praxisRowIcon,
.praxisOneProgress .praxisRowCount b,
.praxisOneProgress .praxisRowIcon svg{
  color:var(--rd-accent-yellow)!important;
  stroke:var(--rd-accent-yellow)!important;
}
.praxisOneLevelFill,
.praxisOneProgress .praxisRowBar span{
  background:linear-gradient(90deg,rgba(230,198,90,.96),rgba(230,198,90,.78))!important;
  box-shadow:0 0 10px rgba(230,198,90,.12)!important;
}
.praxisOneLevelCard,
.praxisOneStats,
.praxisOneProgress,
.praxisOneProgress .praxisRowIcon,
.praxisOneStartBtn{
  border-color:var(--rd-accent-yellow-border)!important;
}
.praxisOneStartBtn{
  box-shadow:0 0 0 1px rgba(255,255,255,.035) inset,0 10px 26px rgba(0,0,0,.38),0 0 16px var(--rd-accent-yellow-glow)!important;
}

/* Coach page: same yellow accent, plus final button alignment safety */
.praxisCoachCleanPage .miniLabel,
.praxisCoachCleanPage .compactCoachHero .miniLabel{
  color:var(--rd-accent-yellow)!important;
}
.praxisCoachCleanPage .dashboardReviewBtn{
  border-color:var(--rd-accent-yellow-border)!important;
  color:#f5f1e8!important;
}
.praxisCoachCleanPage .chatInputRow button{
  border-color:rgba(255,255,255,.15)!important;
}

/* v58 targeted clean-up: Tagebuch / To-Do-Liste / Erkenntnisse only */
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage{
  padding-top:max(162px,calc(var(--sat) + 132px))!important;
  padding-left:16px!important;
  padding-right:16px!important;
  background:#000!important;
  background-image:none!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage::before{
  background:
    linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.46) 37%,rgba(0,0,0,.82) 70%,#000 100%),
    url('assets/img/praxis-bg.jpeg') left top/cover no-repeat!important;
  filter:brightness(.82)!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdToolShell.rdToolSubShell{
  width:100%!important;
  max-width:430px!important;
  gap:18px!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdSimpleTitle{
  width:100%!important;
  padding:0!important;
  margin:0 auto 18px!important;
  text-align:center!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdSimpleTitle h1{
  font-family:var(--font-c),"Arial Narrow",Arial,sans-serif!important;
  font-size:34px!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-align:center!important;
  color:#fff!important;
  text-transform:none!important;
  margin:0!important;
  text-shadow:0 12px 28px rgba(0,0,0,.72)!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdSimpleTitle::after{
  content:""!important;
  display:block!important;
  width:150px!important;
  height:1px!important;
  margin:16px auto 0!important;
  background:linear-gradient(90deg,transparent,rgba(226,190,93,.58),transparent)!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdSimpleTitle p,
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdMistakeTitle p{
  display:none!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdInputCard,
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdList{
  width:100%!important;
  margin:0!important;
  padding:20px!important;
  background:linear-gradient(145deg,rgba(5,5,5,.80),rgba(0,0,0,.70))!important;
  border:1px solid rgba(222,180,82,.22)!important;
  border-radius:22px!important;
  box-shadow:0 18px 38px rgba(0,0,0,.44)!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdInputCard label{
  color:#e2be5d!important;
  font-size:10px!important;
  letter-spacing:.16em!important;
  margin-bottom:12px!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdInputCard input,
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdInputCard textarea{
  background:rgba(0,0,0,.36)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdInputCard textarea{
  min-height:120px!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdInputCard .btn,
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdToolShell > .btn{
  margin-top:16px!important;
  width:100%!important;
  border-radius:18px!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdJournalList{
  display:block!important;
  padding:18px 20px!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdJournalList article{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  padding:0 0 16px!important;
  margin:0 0 16px!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdJournalList article:last-child{
  margin-bottom:0!important;
  padding-bottom:0!important;
  border-bottom:0!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdJournalList article b{
  display:block!important;
  margin:0 0 8px!important;
  color:rgba(255,255,255,.92)!important;
  font-size:18px!important;
  line-height:1.25!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdJournalList article p{
  margin:0!important;
  color:rgba(255,255,255,.70)!important;
  font-size:16px!important;
  line-height:1.45!important;
  white-space:pre-wrap!important;
  overflow:visible!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdTodoChips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
}
.aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdTodoChips button{
  border-radius:999px!important;
  background:rgba(0,0,0,.34)!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:none!important;
}
@media (max-height:760px){
  .aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage{
    padding-top:max(145px,calc(var(--sat) + 118px))!important;
  }
  .aiPraxisScreen.rdPraxisToolPage.rdHoodToolPage .rdSimpleTitle h1{font-size:31px!important;}
}

/* =========================================================
   v59 targeted Praxis coach chat flow + WhatsApp-style layout
   - removes outer chat frame
   - keeps messages full width and scrollable
   - evening review opens only via coach CTA button, not automatically
   ========================================================= */
.praxisCoachCleanPage #praxisChatShell{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  padding:0!important;
}
.praxisCoachCleanPage #praxisChatMessages{
  padding:12px 0 14px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.praxisCoachCleanPage .coachMsgRow{
  width:100%!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:flex-start!important;
  margin:0 0 14px!important;
}
.praxisCoachCleanPage .coachBubbleAvatar{
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  border:1px solid rgba(230,198,90,.72)!important;
  margin-top:2px!important;
}
.praxisCoachCleanPage .chatBubble.coach,
.praxisCoachCleanPage .chatBubble.user{
  width:auto!important;
  max-width:100%!important;
  border-radius:18px!important;
  background:rgba(18,18,18,.72)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:none!important;
  padding:15px 16px!important;
  font-size:16px!important;
  line-height:1.55!important;
}
.praxisCoachCleanPage .chatBubble.user{
  margin-left:46px!important;
  background:rgba(31,27,14,.58)!important;
  border-color:rgba(230,198,90,.25)!important;
}
.praxisCoachCleanPage .quickPanel{
  margin:0 0 12px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachCleanPage .quickPanel .btn,
.praxisCoachCleanPage .reviewCtaPanel .btn{
  width:100%!important;
  min-height:54px!important;
  border-radius:18px!important;
  border:1px solid rgba(230,198,90,.50)!important;
  background:linear-gradient(180deg,rgba(24,24,24,.86),rgba(5,5,5,.94))!important;
  color:rgba(248,245,238,.96)!important;
  box-shadow:0 10px 25px rgba(0,0,0,.36), inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.praxisCoachCleanPage .chatInputRow{
  width:100%!important;
  margin:10px 0 0!important;
  padding:0!important;
  border-top:0!important;
  background:transparent!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 56px!important;
  gap:10px!important;
}
.praxisCoachCleanPage .chatInputRow input{
  height:56px!important;
  min-height:56px!important;
  border-radius:18px!important;
  background:rgba(0,0,0,.58)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  padding:0 18px!important;
}
.praxisCoachCleanPage .chatInputRow button{
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  min-height:56px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.praxisCoachCleanPage .dashboardReviewBtn{
  width:100%!important;
  align-self:stretch!important;
  margin:12px 0 0!important;
  min-height:56px!important;
  border-radius:18px!important;
}

/* =========================================================
   v60 Praxis coach rhythm + compact review CTA/modal
   ========================================================= */
.praxisCoachCleanPage .reviewCtaPanel{
  display:flex!important;
  justify-content:flex-start!important;
  padding-left:47px!important;
  margin:2px 0 14px!important;
}
.praxisCoachCleanPage .reviewCtaPanel.hidden{display:none!important;}
.praxisCoachCleanPage .reviewCtaPanel .btn{
  width:auto!important;
  min-width:0!important;
  max-width:82%!important;
  min-height:34px!important;
  height:42px!important;
  padding:0 18px!important;
  border-radius:14px!important;
  font-size:12px!important;
  letter-spacing:.14em!important;
  box-shadow:0 8px 20px rgba(0,0,0,.32), inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.checkOverlay{
  align-items:center!important;
  justify-content:center!important;
  padding:calc(var(--sat) + 72px) 16px calc(var(--sab) + 24px)!important;
}
.checkDialog{
  position:relative!important;
  width:min(430px,100%)!important;
  max-height:min(82svh,760px)!important;
  overflow-y:auto!important;
  border-radius:22px!important;
  margin:0!important;
}
.checkCloseBtn{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(0,0,0,.42)!important;
  color:rgba(255,255,255,.90)!important;
  font-size:22px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:2!important;
  padding:0!important;
}
.praxisCoachCleanPage .chatBubble.checkSummary{
  width:auto!important;
  max-width:82%!important;
  margin:0 0 14px 47px!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  background:rgba(29,25,12,.62)!important;
  border:1px solid rgba(230,198,90,.24)!important;
  color:rgba(255,255,255,.88)!important;
  font-size:14px!important;
  line-height:1.42!important;
  white-space:pre-line!important;
  box-shadow:none!important;
}
.praxisCoachCleanPage .chatBubble.coach,
.praxisCoachCleanPage .chatBubble.user{
  white-space:pre-line!important;
}

/* === RD AI COACH FINAL UX PATCH v3 === */
.praxisCoachPage.praxisCoachCleanPage{
  height:100vh!important; height:100dvh!important; min-height:100vh!important; overflow:hidden!important;
  display:flex!important; flex-direction:column!important; padding-bottom:0!important;
}
.praxisCoachPage .topbar.rdGlobalTopbar{flex:0 0 54px!important; min-height:54px!important; padding-bottom:4px!important;}
.praxisCoachPage .compactCoachHero,
.praxisCoachPage .coachPageHero.compactCoachHero{
  flex:0 0 auto!important; min-height:0!important; padding:4px 18px 8px!important; margin:0 0 4px!important;
  gap:10px!important; border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.praxisCoachPage .compactCoachHero img{width:48px!important;height:48px!important;}
.praxisCoachPage .compactCoachHero h1{font-size:28px!important; line-height:.9!important; margin:0!important; padding:0!important;}
.praxisCoachPage .compactCoachHero .miniLabel{font-size:10px!important; letter-spacing:.22em!important;}
.praxisCoachPage .compactCoachHero p{display:none!important;}
.praxisCoachPage #praxisChatShell,
.praxisCoachPage .coachPageShell{
  flex:1 1 auto!important; min-height:0!important; height:auto!important; display:flex!important; flex-direction:column!important;
  padding:0 12px!important; margin:0!important; overflow:hidden!important;
}
.praxisCoachPage #praxisChatMessages,
.praxisCoachPage .chatMessages{
  flex:1 1 auto!important; min-height:0!important; height:auto!important; overflow-y:auto!important; padding:8px 0 10px!important;
  scroll-behavior:smooth!important;
}
.praxisCoachPage .quickPanel{display:none!important;}
.praxisCoachPage .chatInputRow{
  flex:0 0 auto!important; padding:8px 0 calc(var(--sab) + 10px)!important; margin:0!important; gap:10px!important; background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.92) 28%)!important;
}
.praxisCoachPage .chatInputRow input{height:54px!important; min-height:54px!important; font-size:16px!important; border-radius:18px!important; padding:0 16px!important;}
.praxisCoachPage .chatInputRow button{width:58px!important; height:58px!important; min-width:58px!important; border-radius:18px!important;}
.praxisCoachPage .dashboardReviewBtn{display:none!important;}
.praxisCoachPage .coachMsgRow{margin:10px 0!important; align-items:flex-start!important;}
.praxisCoachPage .coachBubbleAvatar{width:34px!important;height:34px!important;min-width:34px!important;margin-top:5px!important;}
.praxisCoachPage .chatBubble.coach,
.praxisCoachPage .chatBubble.user{
  font-size:17px!important; line-height:1.55!important; border-radius:20px!important; padding:18px 18px!important; max-width:82%!important;
}
.praxisCoachPage .chatBubble.user{margin-left:auto!important; background:rgba(44,33,10,.72)!important; border:1px solid rgba(212,174,84,.38)!important;}
.praxisCoachPage .chatBubble.coach{background:rgba(17,17,17,.86)!important; border:1px solid rgba(255,255,255,.13)!important;}
.praxisCoachPage .actionBubble{padding:12px 14px!important; display:flex!important; align-items:center!important; gap:10px!important; flex-wrap:wrap!important; max-width:82%!important;}
.praxisCoachPage .actionBubble span{font-size:14px!important; color:rgba(245,242,235,.76)!important; line-height:1.3!important;}
.praxisCoachPage .inlineCoachAction{
  appearance:none!important; border:1px solid rgba(225,190,92,.65)!important; background:rgba(18,14,6,.82)!important; color:rgba(255,247,225,.96)!important;
  border-radius:999px!important; padding:8px 13px!important; font-family:var(--font-display)!important; text-transform:uppercase!important; letter-spacing:.08em!important;
  font-size:12px!important; line-height:1!important; box-shadow:0 0 14px rgba(201,168,76,.12)!important;
}
.praxisCoachPage .inlineCoachAction.start{padding:11px 18px!important; font-size:13px!important;}
.praxisCoachPage .inlineCoachAction.done{opacity:.8!important; background:rgba(34,48,24,.72)!important;}
/* Sicherheitsnetz gegen Button-Überlauf bei langen Listen-Titeln */
.praxisCoachPage .inlineCoachAction{max-width:88%!important; overflow:hidden!important; text-overflow:ellipsis!important; white-space:nowrap!important;}
.praxisCoachPage .compactCheckSummary{
  width:fit-content!important; max-width:82%!important; margin:8px 0 8px 46px!important; padding:10px 13px!important; border-radius:14px!important;
  font-size:13px!important; line-height:1.35!important; color:rgba(242,238,226,.84)!important; background:rgba(34,30,14,.58)!important; border:1px solid rgba(225,190,92,.30)!important;
}
@media(max-height:740px){
  .praxisCoachPage .topbar.rdGlobalTopbar{flex-basis:48px!important;min-height:48px!important;}
  .praxisCoachPage .compactCoachHero,.praxisCoachPage .coachPageHero.compactCoachHero{padding:2px 18px 6px!important;}
  .praxisCoachPage .compactCoachHero img{width:42px!important;height:42px!important;}
  .praxisCoachPage .compactCoachHero h1{font-size:25px!important;}
  .praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{font-size:16px!important;line-height:1.48!important;padding:15px 16px!important;}
  .praxisCoachPage .chatInputRow input{height:50px!important;min-height:50px!important;}
  .praxisCoachPage .chatInputRow button{width:54px!important;height:54px!important;min-width:54px!important;}
}

/* === RD AI COACH FINAL UX PATCH v5 ===
   - wider message bubbles
   - tighter vertical rhythm
   - clear session dividers
   - less dead space between coach/user turns
*/
.praxisCoachPage #praxisChatShell,
.praxisCoachPage .coachPageShell{
  padding-left:10px!important;
  padding-right:10px!important;
}
.praxisCoachPage #praxisChatMessages,
.praxisCoachPage .chatMessages{
  padding-top:6px!important;
  padding-bottom:8px!important;
}
.praxisCoachPage .coachMsgRow{
  margin:7px 0!important;
  gap:7px!important;
  grid-template-columns:34px minmax(0,1fr)!important;
}
.praxisCoachPage .coachBubbleAvatar{
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  margin-top:4px!important;
}
.praxisCoachPage .chatBubble.coach,
.praxisCoachPage .chatBubble.user{
  max-width:89%!important;
  padding:15px 16px!important;
  line-height:1.48!important;
  border-radius:18px!important;
}
.praxisCoachPage .chatBubble.coach{
  max-width:90%!important;
}
.praxisCoachPage .chatBubble.user{
  max-width:86%!important;
  margin-top:7px!important;
  margin-bottom:7px!important;
}
.praxisCoachPage .actionBubble{
  max-width:90%!important;
  padding:11px 13px!important;
  margin-top:6px!important;
}
.praxisCoachPage .compactCheckSummary{
  max-width:86%!important;
  margin-left:42px!important;
}
.praxisCoachPage .coachSessionDivider{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:16px 0 10px!important;
  color:rgba(226,196,110,.78)!important;
  font-family:var(--font-display)!important;
  font-size:10px!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
}
.praxisCoachPage .coachSessionDivider:before,
.praxisCoachPage .coachSessionDivider:after{
  content:""!important;
  height:1px!important;
  flex:1!important;
  background:rgba(226,196,110,.16)!important;
}
.praxisCoachPage .chatInputRow{
  padding-top:6px!important;
}
@media(max-height:740px){
  .praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{font-size:15.5px!important;line-height:1.44!important;padding:13px 14px!important;}
  .praxisCoachPage .coachMsgRow{margin:6px 0!important;}
}

/* === RD AI COACH FINAL UX PATCH v6 ===
   State-engine UI polish: wider bubbles, less dead space, cleaner action rows.
*/
.praxisCoachPage .coachPageShell{padding-left:6px!important;padding-right:6px!important;}
.praxisCoachPage .coachMsgRow{margin:5px 0!important;gap:6px!important;grid-template-columns:30px minmax(0,1fr)!important;}
.praxisCoachPage .coachBubbleAvatar{width:29px!important;height:29px!important;min-width:29px!important;}
.praxisCoachPage .chatBubble.coach{max-width:93%!important;}
.praxisCoachPage .chatBubble.user{max-width:90%!important;}
.praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{padding:14px 16px!important;line-height:1.44!important;}
.praxisCoachPage .actionBubble{max-width:93%!important;}
.praxisCoachPage .coachSessionDivider{margin:12px 0 7px!important;}
.praxisCoachPage .chatMessages{padding-bottom:6px!important;}
.praxisCoachPage .chatInputRow{padding-top:5px!important;}
@media(max-width:420px){.praxisCoachPage .chatBubble.coach{max-width:94%!important}.praxisCoachPage .chatBubble.user{max-width:91%!important}}

/* === RD AI Coach v7 profile + chat flow polish === */
.profileSetupScreen{padding-top:calc(88px + var(--sat,0px))!important;}
.profileSetupScreen>.tag{margin-top:8px!important;}
.profileInfoLabel{display:flex!important;align-items:center;justify-content:space-between;gap:8px;}
.profileInfoIcon{width:22px;height:22px;border-radius:50%;border:1px solid rgba(225,190,92,.55);background:rgba(225,190,92,.08);color:rgba(240,237,232,.86);font-size:12px;font-weight:800;line-height:1;padding:0;}
.profileFixedInfo{margin-top:14px;padding:12px 13px;border:1px solid rgba(225,190,92,.28);border-radius:14px;background:rgba(225,190,92,.06);display:flex;flex-direction:column;gap:4px;}
.profileFixedInfo strong{font-family:var(--font-c);letter-spacing:.16em;font-size:11px;color:rgba(225,190,92,.9);}
.profileFixedInfo span{font-size:13px;color:rgba(240,237,232,.68);line-height:1.45;}
.praxisCoachPage .chatBubble{max-width:90%!important;}
.praxisCoachPage .coachMsgRow .chatBubble.coach{max-width:88%!important;}
.praxisCoachPage .chatBubble.user{max-width:82%!important;}
.praxisCoachPage .actionBubble{max-width:88%!important;}

/* === RD AI Coach v8 final conversation system polish === */
.praxisCoachPage #praxisChatShell,
.praxisCoachPage .coachPageShell{padding-left:8px!important;padding-right:8px!important;}
.praxisCoachPage #praxisChatMessages,
.praxisCoachPage .chatMessages{padding-top:4px!important;padding-bottom:5px!important;}
.praxisCoachPage .coachMsgRow{margin:3px 0!important;gap:5px!important;grid-template-columns:28px minmax(0,1fr)!important;}
.praxisCoachPage .coachBubbleAvatar{width:27px!important;height:27px!important;min-width:27px!important;margin-top:3px!important;}
.praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{font-size:15.5px!important;line-height:1.36!important;padding:11px 13px!important;border-radius:16px!important;}
.praxisCoachPage .chatBubble.coach{max-width:95%!important;}
.praxisCoachPage .chatBubble.user{max-width:92%!important;margin-top:4px!important;margin-bottom:4px!important;}
.praxisCoachPage .actionBubble{max-width:95%!important;padding:9px 11px!important;margin-top:3px!important;}
.praxisCoachPage .coachSessionDivider{margin:8px 0 5px!important;}
.praxisCoachPage .chatInputRow{padding:5px 0 4px!important;gap:8px!important;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.94) 22%)!important;}
.praxisCoachPage .chatInputRow input{height:48px!important;min-height:48px!important;font-size:15px!important;border-radius:16px!important;}
.praxisCoachPage .chatInputRow button{width:50px!important;height:50px!important;min-width:50px!important;border-radius:16px!important;}
.coachBottomActionHost{flex:0 0 auto!important;padding:0 0 calc(var(--sab) + 8px)!important;background:rgba(0,0,0,.96)!important;}
.coachBottomAction{width:100%!important;height:42px!important;border-radius:16px!important;border:1px solid rgba(225,190,92,.48)!important;background:linear-gradient(180deg,rgba(42,42,42,.82),rgba(13,13,13,.94))!important;color:rgba(255,248,232,.96)!important;font-family:var(--font-display)!important;text-transform:uppercase!important;letter-spacing:.18em!important;font-size:13px!important;box-shadow:0 0 16px rgba(201,168,76,.10)!important;}
.coachBottomAction:empty,.coachBottomActionHost:empty{display:none!important;}
.rdMorningDialog .checkMiniLabel{display:block;margin:10px 0 6px;color:rgba(225,190,92,.92);font-family:var(--font-display);font-size:11px;letter-spacing:.16em;text-transform:uppercase;}
.rdMorningDialog .sleepSelect{margin-bottom:10px!important;}
@media(max-height:740px){.praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{font-size:14.8px!important;line-height:1.32!important;padding:10px 12px!important}.praxisCoachPage .coachMsgRow{margin:2px 0!important}.coachBottomAction{height:39px!important;font-size:12px!important}.praxisCoachPage .chatInputRow input{height:44px!important;min-height:44px!important}.praxisCoachPage .chatInputRow button{width:46px!important;height:46px!important;min-width:46px!important}}

/* RD Coach v9 refinement: denser premium chat + stable bottom controls */
.praxisCoachPage #praxisChatMessages{padding-top:4px!important;padding-bottom:8px!important;}
.praxisCoachPage .coachMsgRow{margin:2px 0!important;gap:5px!important;grid-template-columns:27px minmax(0,1fr)!important;}
.praxisCoachPage .coachBubbleAvatar{width:25px!important;height:25px!important;}
.praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{font-size:15px!important;line-height:1.30!important;padding:9px 11px!important;border-radius:15px!important;}
.praxisCoachPage .chatBubble.coach{max-width:96%!important;}
.praxisCoachPage .chatBubble.user{max-width:93%!important;margin-top:3px!important;margin-bottom:3px!important;}
.praxisCoachPage .actionBubble{padding:10px 12px!important;}
.praxisCoachPage .inlineCoachAction{height:34px!important;font-size:11px!important;padding:0 16px!important;}
.praxisCoachPage .chatInputRow{gap:8px!important;padding-top:7px!important;}
.praxisCoachPage .chatInputRow input{height:42px!important;min-height:34px!important;font-size:14px!important;}
.praxisCoachPage .chatInputRow button{width:44px!important;height:44px!important;min-width:44px!important;}
.praxisCoachPage .coachBottomActionHost{padding-top:6px!important;padding-bottom:calc(var(--sab) + 7px)!important;}
.praxisCoachPage .coachBottomAction{height:38px!important;border-radius:14px!important;font-size:12px!important;letter-spacing:.16em!important;}
.praxisCoachPage .coachSessionDivider{margin:8px 0!important;font-size:10px!important;}

/* === RD AI Coach v10 Core-Rebuild polish === */
.praxisCoachPage .chatBubble.coach,
.praxisCoachPage .chatBubble.user{
  padding:11px 13px!important;
  line-height:1.36!important;
  font-size:15.4px!important;
  border-radius:17px!important;
}
.praxisCoachPage .coachMsgRow{margin:4px 0!important;gap:5px!important;}
.praxisCoachPage .coachBubbleAvatar{width:27px!important;height:27px!important;min-width:27px!important;margin-top:3px!important;}
.praxisCoachPage .chatBubble.coach{max-width:95%!important;}
.praxisCoachPage .chatBubble.user{max-width:92%!important;margin-top:4px!important;margin-bottom:4px!important;}
.praxisCoachPage .actionBubble{max-width:95%!important;padding:9px 11px!important;}
.praxisCoachPage .compactCheckSummary{max-width:90%!important;margin:5px 0 5px 34px!important;padding:8px 10px!important;}
.praxisCoachPage #praxisChatMessages,.praxisCoachPage .chatMessages{padding-top:4px!important;padding-bottom:4px!important;}
.praxisCoachPage .coachBottomActionHost{padding-top:4px!important;}
.praxisCoachPage .coachBottomAction{height:42px!important;min-height:34px!important;border-radius:14px!important;font-size:12px!important;letter-spacing:.12em!important;}
.praxisCoachPage .chatInputRow{padding-top:4px!important;padding-bottom:calc(var(--sab) + 7px)!important;gap:7px!important;}
.praxisCoachPage .chatInputRow input{height:48px!important;min-height:48px!important;border-radius:15px!important;}
.praxisCoachPage .chatInputRow button{height:48px!important;width:50px!important;min-width:50px!important;border-radius:15px!important;}
@media(max-height:740px){
  .praxisCoachPage .chatBubble.coach,.praxisCoachPage .chatBubble.user{font-size:14.8px!important;line-height:1.32!important;padding:9px 11px!important;}
  .praxisCoachPage .coachMsgRow{margin:3px 0!important;}
}

/* Reset Discipline Coach v11 — ChatGPT-like premium conversation layout */
.praxisCoachPage .coachOpenRow{
  align-items:flex-start!important;
  gap:9px!important;
  margin:6px 0 8px!important;
  width:100%!important;
}
.praxisCoachPage .coachOpenText{
  flex:1!important;
  max-width:calc(100% - 42px)!important;
  padding:2px 4px 6px 0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:rgba(235,235,235,.82)!important;
  font-size:15.2px!important;
  line-height:1.44!important;
  white-space:pre-wrap!important;
  word-break:break-word!important;
}
.praxisCoachPage .coachOpenText strong{color:rgba(255,255,255,.95);font-weight:700;}
.praxisCoachPage .rdBullet{color:var(--gold);font-weight:700;margin-right:3px;}
.praxisCoachPage .chatBubble.user{
  max-width:78%!important;
  padding:10px 13px!important;
  line-height:1.35!important;
  font-size:15px!important;
  border-radius:17px!important;
}
.praxisCoachPage .chatMessages{gap:4px!important;padding-bottom:145px!important;}
.praxisCoachPage .coachMsgRow.actionRow{margin:7px 0!important;}
.praxisCoachPage .actionBubble{max-width:92%!important;padding:12px 14px!important;}
.praxisCoachPage .compactCoachHero{padding-bottom:8px!important;margin-bottom:8px!important;}
.praxisCoachPage .coachSessionDivider{margin:8px 0 10px!important;}
.praxisCoachPage .chatInputRow{margin-top:4px!important;}
.praxisCoachPage .coachBottomAction{height:44px!important;}
@media(max-height:740px){.praxisCoachPage .coachOpenText{font-size:14.5px!important;line-height:1.36!important}.praxisCoachPage .chatBubble.user{font-size:14.5px!important;line-height:1.30!important;padding:9px 12px!important}.praxisCoachPage .chatMessages{padding-bottom:132px!important}}


/* === Reset Discipline stable coach v14: one-chat premium layout + browser voice input === */
.praxisCoachPage .coachBubbleAvatar{display:none!important;}
.praxisCoachPage .coachMsgRow.coachOpenRow,
.praxisCoachPage .coachMsgRow.noAvatarCoach{
  display:block!important;
  margin:12px 0 14px!important;
  padding-left:0!important;
}
.praxisCoachPage .coachOpenText{
  width:100%!important;
  max-width:100%!important;
  padding:0 4px!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  color:rgba(238,238,238,.94)!important;
  font-size:16px!important;
  line-height:1.48!important;
  letter-spacing:.01em!important;
  box-shadow:none!important;
  white-space:pre-wrap!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.praxisCoachPage .coachOpenText p{margin:0 0 .72em!important;}
.praxisCoachPage .coachOpenText ul,
.praxisCoachPage .coachOpenText ol{margin:.45em 0 .8em 1.1em!important;padding:0!important;}
.praxisCoachPage .coachOpenText li{margin:.22em 0!important;}
.praxisCoachPage .chatBubble.user{
  max-width:84%!important;
  margin-left:auto!important;
  background:rgba(44,33,10,.72)!important;
  border:1px solid rgba(212,174,84,.38)!important;
  color:rgba(255,250,235,.96)!important;
}
.praxisCoachPage .chatMessages{padding-bottom:146px!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px 52px!important;
  gap:8px!important;
  align-items:center!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  width:48px!important;height:48px!important;min-width:48px!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(180deg,rgba(34,34,34,.9),rgba(7,7,7,.96))!important;
  color:rgba(235,205,120,.95)!important;
}
.rdVoiceOverlay{
  position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.72);
  display:flex;align-items:flex-end;justify-content:center;padding:24px 20px calc(env(safe-area-inset-bottom) + 26px);
  backdrop-filter:blur(12px);
}
.rdVoiceSheet{
  width:min(560px,100%);border:1px solid rgba(212,174,84,.42);border-radius:28px;
  background:linear-gradient(180deg,rgba(24,24,24,.96),rgba(8,8,8,.98));
  box-shadow:0 0 50px rgba(201,168,76,.14);padding:22px 20px 18px;text-align:center;
}
.rdVoiceTitle{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:rgba(235,205,120,.95);font-size:14px;margin-bottom:18px;}
.rdVoiceBars{height:74px;display:flex;align-items:center;justify-content:center;gap:7px;margin:4px 0 16px;}
.rdVoiceBars span{width:8px;border-radius:999px;background:linear-gradient(180deg,rgba(235,205,120,1),rgba(120,92,34,.8));animation:rdVoicePulse 1s ease-in-out infinite;height:24px;}
.rdVoiceBars span:nth-child(2){animation-delay:.12s;height:42px}.rdVoiceBars span:nth-child(3){animation-delay:.24s;height:64px}.rdVoiceBars span:nth-child(4){animation-delay:.36s;height:42px}.rdVoiceBars span:nth-child(5){animation-delay:.48s;height:24px}
@keyframes rdVoicePulse{0%,100%{transform:scaleY(.45);opacity:.65}50%{transform:scaleY(1.12);opacity:1}}
.rdVoiceText{min-height:54px;max-height:150px;overflow:auto;color:rgba(255,255,255,.92);font-size:16px;line-height:1.45;text-align:left;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);}
.rdVoiceControls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;}
.rdVoiceControls button{height:50px;border-radius:18px;font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;border:1px solid rgba(255,255,255,.13);color:#fff;background:rgba(35,35,35,.9);}
.rdVoiceControls .rdVoiceSend{border-color:rgba(212,174,84,.55);background:linear-gradient(180deg,rgba(75,60,25,.9),rgba(28,22,10,.96));}
@media(max-width:420px){.praxisCoachPage .coachOpenText{font-size:15.4px!important;line-height:1.43!important}.praxisCoachPage .chatInputRow.rdVoiceInputRow{grid-template-columns:minmax(0,1fr) 44px 50px!important;gap:7px!important}.praxisCoachPage .chatInputRow .rdVoiceBtn{width:44px!important;height:44px!important;min-width:44px!important}}

/* v15 stable single-coach voice: inline composer, no full-screen voice overlay */
.praxisCoachPage .rdComposerWrap{
  flex:0 0 auto!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  padding:8px 0 8px!important;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.22))!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive{
  padding-top:6px!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px 52px!important;
  gap:8px!important;
  align-items:center!important;
  border-top:0!important;
  padding:0!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{
  display:none!important;
}
.praxisCoachPage .rdInlineVoicePanel{
  width:100%!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) 74px 92px!important;
  gap:8px!important;
  align-items:center!important;
  padding:4px 0!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:44px;min-width:58px;display:flex;align-items:center;justify-content:center;gap:4px;
  border-radius:18px;border:1px solid rgba(212,174,84,.22);background:rgba(212,174,84,.045);
}
.praxisCoachPage .rdInlineVoiceBars span{
  width:4px;border-radius:999px;background:linear-gradient(180deg,rgba(235,205,120,1),rgba(137,99,35,.9));
  animation:rdVoicePulse 1s ease-in-out infinite;height:16px;
}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(2){animation-delay:.12s;height:26px}.praxisCoachPage .rdInlineVoiceBars span:nth-child(3){animation-delay:.24s;height:36px}.praxisCoachPage .rdInlineVoiceBars span:nth-child(4){animation-delay:.36s;height:26px}.praxisCoachPage .rdInlineVoiceBars span:nth-child(5){animation-delay:.48s;height:16px}
.praxisCoachPage .rdInlineVoiceText{
  min-height:44px;max-height:88px;overflow:auto;border-radius:18px;border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.035);color:rgba(255,255,255,.92);font-size:14.5px;line-height:1.35;padding:11px 13px;
}
.praxisCoachPage .rdInlineVoiceStop,.praxisCoachPage .rdInlineVoiceSend{
  height:44px;border-radius:16px;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:11px;
  border:1px solid rgba(255,255,255,.14);color:#fff;background:linear-gradient(180deg,rgba(34,34,34,.95),rgba(8,8,8,.98));
}
.praxisCoachPage .rdInlineVoiceSend{border-color:rgba(212,174,84,.55);background:linear-gradient(180deg,rgba(73,58,22,.95),rgba(20,15,7,.98));}
.rdVoiceOverlay{display:none!important;}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:auto minmax(0,1fr) 62px 78px!important;gap:6px!important;}
  .praxisCoachPage .rdInlineVoiceText{font-size:13.8px!important;padding:10px 11px!important;}
  .praxisCoachPage .rdInlineVoiceStop,.praxisCoachPage .rdInlineVoiceSend{font-size:10px!important;letter-spacing:.1em!important;}
}

/* v16 voice + coach polish: lighter ChatGPT-like dictation, tighter coach rhythm */
.praxisCoachPage .rdComposerWrap.voiceActive{padding-top:4px!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdInlineVoicePanel{
  width:100%!important;
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr) 44px 48px!important;
  gap:7px!important;
  align-items:center!important;
  padding:0!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:42px!important;min-width:76px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;
  border-radius:15px!important;border:1px solid rgba(212,174,84,.28)!important;background:rgba(255,255,255,.025)!important;
  overflow:hidden!important;position:relative!important;
}
.praxisCoachPage .rdInlineVoiceBars:after{
  content:'';position:absolute;inset:auto 8px 9px 8px;height:1px;background:linear-gradient(90deg,transparent,rgba(212,174,84,.35),transparent);opacity:.55;
}
.praxisCoachPage .rdInlineVoiceBars span{
  width:3px!important;border-radius:99px!important;background:linear-gradient(180deg,rgba(240,210,125,1),rgba(137,99,35,.88))!important;
  animation:rdVoicePulseSmall .72s ease-in-out infinite!important;height:10px!important;
}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(2){animation-delay:.08s!important;height:16px!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(3){animation-delay:.16s!important;height:24px!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(4){animation-delay:.24s!important;height:16px!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(5){animation-delay:.32s!important;height:10px!important}
@keyframes rdVoicePulseSmall{0%,100%{transform:scaleY(.55);opacity:.55}50%{transform:scaleY(1.55);opacity:1}}
.praxisCoachPage .rdInlineVoiceText{
  min-height:34px!important;max-height:42px!important;overflow:hidden!important;border-radius:15px!important;border:1px solid rgba(255,255,255,.09)!important;
  background:rgba(0,0,0,.2)!important;color:rgba(255,255,255,.78)!important;font-size:13.5px!important;line-height:42px!important;padding:0 12px!important;
  white-space:nowrap!important;text-overflow:ellipsis!important;
}
.praxisCoachPage .rdInlineVoiceStop,.praxisCoachPage .rdInlineVoiceSend{
  height:42px!important;width:44px!important;min-width:44px!important;border-radius:15px!important;font-size:0!important;letter-spacing:0!important;padding:0!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■';font-size:15px;color:rgba(255,255,255,.82);line-height:1;}
.praxisCoachPage .rdInlineVoiceSend:before{content:'➤';font-size:17px;color:rgba(255,255,255,.92);line-height:1;transform:translateX(1px);}
.praxisCoachPage .coachOpenText{font-size:15.6px!important;line-height:1.42!important;}
.praxisCoachPage .coachOpenText p{margin:0 0 .55em!important;}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:64px minmax(0,1fr) 42px 46px!important;gap:6px!important;}
  .praxisCoachPage .rdInlineVoiceBars{min-width:64px!important;}
  .praxisCoachPage .rdInlineVoiceText{font-size:13px!important;padding:0 10px!important;}
}

/* v17 ChatGPT-like compact voice composer */
.praxisCoachPage .rdComposerWrap.voiceActive{
  padding:7px 0 8px!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdInlineVoicePanel{
  width:100%!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 46px!important;
  gap:8px!important;
  align-items:center!important;
  padding:0!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars{
  order:2!important;
  height:42px!important;
  min-width:0!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.055)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
  overflow:hidden!important;
  position:relative!important;
}
.praxisCoachPage .rdInlineVoiceBars:after{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars span{
  width:3px!important;
  height:13px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.38)!important;
  animation:rdVoiceWaveV17 .82s ease-in-out infinite!important;
}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(1){animation-delay:.00s!important;height:11px!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(2){animation-delay:.10s!important;height:15px!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(3){animation-delay:.20s!important;height:22px!important;background:rgba(255,255,255,.55)!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(4){animation-delay:.30s!important;height:15px!important}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(5){animation-delay:.40s!important;height:11px!important}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  width:46px!important;height:46px!important;min-width:46px!important;border-radius:999px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.praxisCoachPage .rdInlineVoiceStop{order:1!important;}
.praxisCoachPage .rdInlineVoiceSend{order:3!important;background:rgba(255,255,255,.92)!important;border-color:rgba(255,255,255,.65)!important;}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:12px!important;color:rgba(255,255,255,.92)!important;}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:24px!important;font-weight:800!important;color:#111!important;transform:translateY(-1px)!important;}
@keyframes rdVoiceWaveV17{0%,100%{transform:scaleY(.62);opacity:.45}45%{transform:scaleY(1.7);opacity:.9}70%{transform:scaleY(.9);opacity:.65}}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:7px!important;}
  .praxisCoachPage .rdInlineVoiceStop,.praxisCoachPage .rdInlineVoiceSend{width:44px!important;height:44px!important;min-width:44px!important;}
}


/* v18: ChatGPT-like inline voice composer — exact structure: stop circle, moving waveform pill, send circle */
.praxisCoachPage .rdInlineVoicePanel{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 48px!important;
  align-items:center!important;
  gap:9px!important;
  padding:0!important;
  margin:0!important;
  height:58px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  width:100%!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  width:44px!important;height:44px!important;min-width:44px!important;border-radius:999px!important;
  border:1px solid rgba(255,255,255,.10)!important;background:rgba(28,28,28,.92)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;
  font-size:0!important;line-height:1!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 7px 20px rgba(0,0,0,.22)!important;
  color:transparent!important;letter-spacing:0!important;order:unset!important;
}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:13px!important;color:rgba(255,255,255,.94)!important;transform:scale(.88)!important;}
.praxisCoachPage .rdInlineVoiceSend{background:#f2f2f2!important;border-color:rgba(255,255,255,.65)!important;}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:24px!important;font-weight:900!important;color:#111!important;transform:translateY(-1px)!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:44px!important;min-height:44px!important;width:100%!important;min-width:0!important;
  border-radius:999px!important;background:rgba(28,28,28,.92)!important;border:1px solid rgba(255,255,255,.10)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;
  padding:0 17px!important;overflow:hidden!important;position:relative!important;order:unset!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 6px 18px rgba(0,0,0,.20)!important;
}
.praxisCoachPage .rdInlineVoiceBars:before{
  content:'';position:absolute;left:10px;right:10px;top:50%;height:1px;background:rgba(255,255,255,.06);transform:translateY(-50%);
}
.praxisCoachPage .rdInlineVoiceBars span{
  width:3px!important;min-width:3px!important;border-radius:999px!important;background:rgba(210,210,210,.55)!important;
  height:10px!important;display:block!important;opacity:.72!important;transform-origin:center!important;
  animation:rdVoiceTapeV18 1.35s linear infinite!important;
  animation-delay:calc(var(--i,0) * -0.035s)!important;
}
@keyframes rdVoiceTapeV18{
  0%{transform:translateX(10px) scaleY(calc(.42 + var(--rdVoiceLevel,.25) * .7));opacity:.28}
  35%{transform:translateX(3px) scaleY(calc(.55 + var(--rdVoiceLevel,.25) * 1.8));opacity:.85}
  70%{transform:translateX(-4px) scaleY(calc(.38 + var(--rdVoiceLevel,.25) * 1.0));opacity:.55}
  100%{transform:translateX(-10px) scaleY(calc(.42 + var(--rdVoiceLevel,.25) * .7));opacity:.28}
}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:42px minmax(0,1fr) 46px!important;gap:7px!important;height:54px!important;}
  .praxisCoachPage .rdInlineVoiceStop{width:42px!important;height:42px!important;min-width:42px!important;}
  .praxisCoachPage .rdInlineVoiceSend{width:46px!important;height:46px!important;min-width:46px!important;}
  .praxisCoachPage .rdInlineVoiceBars{height:42px!important;padding:0 13px!important;gap:2.5px!important;}
  .praxisCoachPage .rdInlineVoiceBars span{width:2.5px!important;min-width:2.5px!important;}
}


/* v19 final: ChatGPT-style composer states */
.praxisCoachPage .rdComposerWrap{
  width:100%!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:center!important;
  padding:6px 0 6px!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow input{
  height:48px!important;
  min-height:48px!important;
  border-radius:18px!important;
  padding:0 48px 0 16px!important;
  background:rgba(0,0,0,.58)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  position:absolute!important;
  right:58px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  border-radius:999px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(215,178,86,.95)!important;
  padding:0!important;
  z-index:3!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{width:18px!important;height:18px!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn){
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:18px!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive{padding:6px 0 6px!important;}
.praxisCoachPage .rdInlineVoicePanel{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  height:54px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .rdInlineVoiceStop{order:1!important;}
.praxisCoachPage .rdInlineVoiceBars{order:2!important;}
.praxisCoachPage .rdInlineVoiceSend{order:3!important;}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  font-size:0!important;
  letter-spacing:0!important;
  color:transparent!important;
}
.praxisCoachPage .rdInlineVoiceStop{
  background:rgba(25,25,25,.92)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:12px!important;color:#fff!important;line-height:1!important;}
.praxisCoachPage .rdInlineVoiceSend{
  background:#f4f4f4!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 4px 16px rgba(0,0,0,.25)!important;
}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:25px!important;font-weight:900!important;color:#111!important;line-height:1!important;transform:translateY(-1px)!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:44px!important;
  min-height:44px!important;
  width:100%!important;
  min-width:0!important;
  border-radius:999px!important;
  background:rgba(32,32,32,.94)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  padding:0 20px!important;
  overflow:hidden!important;
  position:relative!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.praxisCoachPage .rdInlineVoiceBars:before,
.praxisCoachPage .rdInlineVoiceBars:after{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars span{
  width:3px!important;
  min-width:3px!important;
  border-radius:999px!important;
  background:rgba(210,210,210,.55)!important;
  height:10px!important;
  display:block!important;
  opacity:.74!important;
  transform-origin:center!important;
  animation:rdVoiceTapeV19 1.15s linear infinite!important;
  animation-delay:calc(var(--i,0) * -0.045s)!important;
}
@keyframes rdVoiceTapeV19{
  0%{transform:translateX(26px) scaleY(calc(.42 + var(--rdVoiceLevel,.25) * .6));opacity:.20}
  25%{transform:translateX(12px) scaleY(calc(.55 + var(--rdVoiceLevel,.25) * 1.1));opacity:.52}
  50%{transform:translateX(0) scaleY(calc(.7 + var(--rdVoiceLevel,.25) * 2.4));opacity:.95}
  75%{transform:translateX(-12px) scaleY(calc(.48 + var(--rdVoiceLevel,.25) * 1.2));opacity:.58}
  100%{transform:translateX(-26px) scaleY(calc(.38 + var(--rdVoiceLevel,.25) * .8));opacity:.20}
}
@media(max-width:420px){
  .praxisCoachPage .chatInputRow .rdVoiceBtn{right:56px!important;width:30px!important;height:30px!important;min-width:30px!important;}
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:42px minmax(0,1fr) 46px!important;gap:7px!important;height:52px!important;}
  .praxisCoachPage .rdInlineVoiceStop{width:42px!important;height:42px!important;min-width:42px!important;}
  .praxisCoachPage .rdInlineVoiceSend{width:46px!important;height:46px!important;min-width:46px!important;}
  .praxisCoachPage .rdInlineVoiceBars{height:42px!important;padding:0 14px!important;gap:2.5px!important;}
  .praxisCoachPage .rdInlineVoiceBars span{width:2.5px!important;min-width:2.5px!important;}
}


/* v20 final polish: larger readable coach text + calmer ChatGPT-like voice composer */
.praxisCoachPage .chatMessages,
.praxisCoachPage .chatMessages p,
.praxisCoachPage .coachMsg,
.praxisCoachPage .userMsg{
  font-size:18.5px!important;
  line-height:1.56!important;
}
@media(max-width:420px){
  .praxisCoachPage .chatMessages,
  .praxisCoachPage .chatMessages p,
  .praxisCoachPage .coachMsg,
  .praxisCoachPage .userMsg{font-size:18px!important;line-height:1.55!important;}
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  color:rgba(196,154,82,.72)!important;
  opacity:.82!important;
  right:57px!important;
  width:28px!important;height:28px!important;min-width:28px!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{width:16px!important;height:16px!important;stroke-width:1.55!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn){
  width:44px!important;height:44px!important;min-width:44px!important;border-radius:17px!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow input{
  height:46px!important;min-height:46px!important;border-radius:17px!important;
}
.praxisCoachPage .rdInlineVoicePanel{
  grid-template-columns:38px minmax(0,1fr) 44px!important;
  gap:8px!important;
  height:48px!important;
  padding:0!important;
}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  width:38px!important;height:38px!important;min-width:38px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 4px 14px rgba(0,0,0,.20)!important;
}
.praxisCoachPage .rdInlineVoiceSend{width:44px!important;height:44px!important;min-width:44px!important;background:rgba(244,244,244,.96)!important;}
.praxisCoachPage .rdInlineVoiceStop:before{font-size:10px!important;color:rgba(255,255,255,.86)!important;}
.praxisCoachPage .rdInlineVoiceSend:before{font-size:23px!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:38px!important;min-height:38px!important;
  border-radius:999px!important;
  background:rgba(29,29,29,.96)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  justify-content:flex-start!important;
  gap:2.5px!important;
  padding:0 12px!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdInlineVoiceBars span{
  width:2px!important;min-width:2px!important;
  height:9px!important;
  opacity:.55!important;
  background:rgba(210,210,210,.62)!important;
  animation:rdVoiceTapeV20 .95s linear infinite!important;
  animation-delay:calc(var(--i,0) * -0.018s)!important;
}
@keyframes rdVoiceTapeV20{
  0%{transform:translateX(230px) scaleY(calc(.35 + var(--rdVoiceLevel,.25) * .45));opacity:.12}
  20%{opacity:.42}
  45%{transform:translateX(95px) scaleY(calc(.45 + var(--rdVoiceLevel,.25) * 1.8));opacity:.82}
  70%{transform:translateX(25px) scaleY(calc(.38 + var(--rdVoiceLevel,.25) * 1.2));opacity:.55}
  100%{transform:translateX(-34px) scaleY(calc(.30 + var(--rdVoiceLevel,.25) * .5));opacity:.10}
}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:38px minmax(0,1fr) 44px!important;height:48px!important;}
  .praxisCoachPage .rdInlineVoiceStop{width:38px!important;height:38px!important;min-width:38px!important;}
  .praxisCoachPage .rdInlineVoiceSend{width:44px!important;height:44px!important;min-width:44px!important;}
  .praxisCoachPage .rdInlineVoiceBars{height:38px!important;padding:0 10px!important;}
}


/* v21 FINAL: cleaner ChatGPT-like voice composer + slightly larger chat text */
.praxisCoachPage .chatMessages,
.praxisCoachPage .chatMessages p,
.praxisCoachPage .coachMsg,
.praxisCoachPage .userMsg{
  font-size:19px!important;
  line-height:1.58!important;
}
@media(max-width:420px){
  .praxisCoachPage .chatMessages,
  .praxisCoachPage .chatMessages p,
  .praxisCoachPage .coachMsg,
  .praxisCoachPage .userMsg{font-size:18.5px!important;line-height:1.58!important;}
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:8px!important;
  padding:7px 0!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow input{
  height:48px!important;
  min-height:48px!important;
  border-radius:24px!important;
  padding:0 46px 0 17px!important;
  background:rgba(8,8,8,.78)!important;
  border:1px solid rgba(255,255,255,.105)!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  right:59px!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  opacity:.58!important;
  color:rgba(210,180,110,.62)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{width:15px!important;height:15px!important;stroke-width:1.45!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn){
  width:48px!important;height:48px!important;min-width:48px!important;border-radius:20px!important;
  background:linear-gradient(180deg,rgba(42,42,42,.95),rgba(20,20,20,.96))!important;
  border:1px solid rgba(255,255,255,.12)!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive{padding:6px 0!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdInlineVoicePanel{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 50px!important;
  align-items:center!important;
  gap:10px!important;
  height:54px!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  width:44px!important;height:44px!important;min-width:44px!important;border-radius:999px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;font-size:0!important;letter-spacing:0!important;color:transparent!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdInlineVoiceStop{
  background:rgba(24,24,24,.96)!important;border:1px solid rgba(255,255,255,.12)!important;
}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:12px!important;color:rgba(255,255,255,.88)!important;}
.praxisCoachPage .rdInlineVoiceSend{
  width:50px!important;height:50px!important;min-width:50px!important;
  background:#f3f3f3!important;border:1px solid rgba(255,255,255,.75)!important;
}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:27px!important;font-weight:900!important;color:#111!important;line-height:1!important;transform:translateY(-2px)!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:44px!important;min-height:44px!important;width:100%!important;min-width:0!important;
  border-radius:999px!important;background:rgba(31,31,31,.96)!important;border:1px solid rgba(255,255,255,.10)!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:2.3px!important;padding:0 14px!important;overflow:hidden!important;position:relative!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.praxisCoachPage .rdInlineVoiceBars:before,
.praxisCoachPage .rdInlineVoiceBars:after{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars span{
  width:2px!important;min-width:2px!important;border-radius:999px!important;
  height:10px!important;background:rgba(210,210,210,.58)!important;opacity:.62!important;
  transform-origin:center!important;
  animation:rdVoiceTapeV21 2.35s linear infinite!important;
  animation-delay:calc(var(--i,0) * -0.065s)!important;
}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(3n){height:14px!important;opacity:.78!important;}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(5n){height:7px!important;opacity:.42!important;}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(7n){height:18px!important;opacity:.86!important;}
@keyframes rdVoiceTapeV21{
  0%{transform:translateX(24px) scaleY(calc(.45 + var(--rdVoiceLevel,.22) * .65));opacity:.18}
  25%{transform:translateX(12px) scaleY(calc(.65 + var(--rdVoiceLevel,.22) * 1.6));opacity:.78}
  55%{transform:translateX(-4px) scaleY(calc(.5 + var(--rdVoiceLevel,.22) * 2.2));opacity:.92}
  82%{transform:translateX(-18px) scaleY(calc(.45 + var(--rdVoiceLevel,.22) * .9));opacity:.45}
  100%{transform:translateX(-30px) scaleY(calc(.35 + var(--rdVoiceLevel,.22) * .55));opacity:.14}
}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:43px minmax(0,1fr) 49px!important;gap:8px!important;height:52px!important;}
  .praxisCoachPage .rdInlineVoiceStop{width:43px!important;height:43px!important;min-width:43px!important;}
  .praxisCoachPage .rdInlineVoiceSend{width:49px!important;height:49px!important;min-width:49px!important;}
  .praxisCoachPage .rdInlineVoiceBars{height:43px!important;padding:0 12px!important;gap:2px!important;}
}

/* v21-REAL: clean ChatGPT-like input/voice composer + readable coach text */
.praxisCoachPage .chatMessages,
.praxisCoachPage .coachOpenText{
  font-size:19px!important;
  line-height:1.54!important;
}
@media(max-width:420px){
  .praxisCoachPage .chatMessages,
  .praxisCoachPage .coachOpenText{font-size:18.6px!important;line-height:1.53!important;}
}
.praxisCoachPage .rdComposerWrap{
  padding:8px 0 calc(env(safe-area-inset-bottom) + 8px)!important;
  border-top:1px solid rgba(255,255,255,.09)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.96) 35%)!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:center!important;
  padding:0!important;
  position:relative!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow input{
  height:48px!important;
  min-height:48px!important;
  border-radius:19px!important;
  padding:0 44px 0 16px!important;
  background:rgba(0,0,0,.72)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  color:rgba(255,255,255,.94)!important;
  font-size:15.8px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  position:absolute!important;
  right:58px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(174,140,72,.58)!important;
  opacity:.72!important;
  padding:0!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{width:17px!important;height:17px!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn){
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:19px!important;
  background:linear-gradient(180deg,rgba(43,43,43,.98),rgba(13,13,13,.98))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive{padding:8px 0 calc(env(safe-area-inset-bottom) + 8px)!important;}
.praxisCoachPage .rdInlineVoicePanel{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  height:50px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  border-radius:999px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:0!important;
  letter-spacing:0!important;
  color:transparent!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.praxisCoachPage .rdInlineVoiceStop{
  order:1!important;
  width:44px!important;height:44px!important;min-width:44px!important;
  background:rgba(30,30,30,.92)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:11px!important;color:rgba(255,255,255,.9)!important;}
.praxisCoachPage .rdInlineVoiceSend{
  order:3!important;
  width:48px!important;height:48px!important;min-width:48px!important;
  background:rgba(246,246,246,.97)!important;
  border:1px solid rgba(255,255,255,.65)!important;
}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:26px!important;font-weight:900!important;color:#0d0d0d!important;line-height:1!important;transform:translateY(-1px)!important;}
.praxisCoachPage .rdInlineVoiceBars{
  order:2!important;
  height:42px!important;
  min-height:34px!important;
  width:100%!important;
  min-width:0!important;
  border-radius:999px!important;
  background:rgba(31,31,31,.96)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:2px!important;
  padding:0 14px!important;
  overflow:hidden!important;
  position:relative!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.praxisCoachPage .rdInlineVoiceBars:before,
.praxisCoachPage .rdInlineVoiceBars:after{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars span{
  width:2px!important;
  min-width:2px!important;
  border-radius:999px!important;
  background:rgba(220,220,220,.58)!important;
  height:10px!important;
  opacity:.55!important;
  transform-origin:center!important;
  animation:rdVoiceTapeV21 2.4s linear infinite!important;
  animation-delay:calc(var(--i,0) * -0.032s)!important;
}
@keyframes rdVoiceTapeV21{
  0%{transform:translateX(260px) scaleY(calc(.34 + var(--rdVoiceLevel,.20) * .55));opacity:.08;}
  18%{opacity:.36;}
  42%{transform:translateX(115px) scaleY(calc(.44 + var(--rdVoiceLevel,.20) * 2.2));opacity:.88;}
  68%{transform:translateX(35px) scaleY(calc(.38 + var(--rdVoiceLevel,.20) * 1.35));opacity:.62;}
  100%{transform:translateX(-48px) scaleY(calc(.30 + var(--rdVoiceLevel,.20) * .6));opacity:.08;}
}
@media(max-width:420px){
  .praxisCoachPage .rdInlineVoicePanel{grid-template-columns:42px minmax(0,1fr) 46px!important;gap:7px!important;height:50px!important;}
  .praxisCoachPage .rdInlineVoiceStop{width:42px!important;height:42px!important;min-width:42px!important;}
  .praxisCoachPage .rdInlineVoiceSend{width:46px!important;height:46px!important;min-width:46px!important;}
  .praxisCoachPage .rdInlineVoiceBars{height:40px!important;padding:0 12px!important;}
  .praxisCoachPage .rdInlineVoiceBars span{width:2px!important;min-width:2px!important;}
}


/* v23 clean rebuild: reset coach composer + restore readable compact text */
.praxisCoachPage .chatMessages,
.praxisCoachPage .coachOpenText{
  font-size:18px!important;
  line-height:1.50!important;
  letter-spacing:.005em!important;
}
@media(max-width:420px){
  .praxisCoachPage .chatMessages,
  .praxisCoachPage .coachOpenText{font-size:17.4px!important;line-height:1.50!important;}
}
.praxisCoachPage .rdComposerWrap{
  padding:7px 0 calc(env(safe-area-inset-bottom) + 7px)!important;
  border-top:1px solid rgba(255,255,255,.085)!important;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.97) 36%)!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  position:relative!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow input{
  height:48px!important;
  min-height:48px!important;
  border-radius:18px!important;
  padding:0 48px 0 16px!important;
  font-size:15px!important;
  background:#050505!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:rgba(255,255,255,.92)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  position:absolute!important;
  right:59px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  border:none!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(185,185,185,.72)!important;
  opacity:1!important;
  padding:0!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{width:20px!important;height:20px!important;stroke-width:1.7!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn){
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:linear-gradient(180deg,rgba(44,44,44,.98),rgba(13,13,13,.98))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:rgba(255,255,255,.95)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  padding:0!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn) svg{width:16px!important;height:16px!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive{padding:7px 0 calc(env(safe-area-inset-bottom) + 7px)!important;}
.praxisCoachPage .rdInlineVoicePanel{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  height:48px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .rdInlineVoiceStop,
.praxisCoachPage .rdInlineVoiceSend{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:18px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:0!important;
  letter-spacing:0!important;
  color:transparent!important;
}
.praxisCoachPage .rdInlineVoiceStop{
  background:linear-gradient(180deg,rgba(44,44,44,.98),rgba(13,13,13,.98))!important;
  border:1px solid rgba(255,255,255,.14)!important;
}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:12px!important;color:rgba(255,255,255,.88)!important;line-height:1!important;}
.praxisCoachPage .rdInlineVoiceSend{
  background:#f4f4f4!important;
  border:1px solid rgba(255,255,255,.75)!important;
}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:25px!important;font-weight:900!important;color:#111!important;line-height:1!important;transform:translateY(-1px)!important;}
.praxisCoachPage .rdInlineVoiceBars{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  border-radius:18px!important;
  background:#1d1d1f!important;
  border:1px solid rgba(255,255,255,.11)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:2px!important;
  padding:0 14px!important;
  overflow:hidden!important;
  position:relative!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.praxisCoachPage .rdInlineVoiceBars:before,
.praxisCoachPage .rdInlineVoiceBars:after{display:none!important;}
.praxisCoachPage .rdInlineVoiceBars span{
  width:2px!important;
  min-width:2px!important;
  height:9px!important;
  border-radius:999px!important;
  background:rgba(215,215,215,.62)!important;
  opacity:.55!important;
  transform-origin:center!important;
  animation:rdVoiceTapeV23 4.8s linear infinite!important;
  animation-delay:calc(var(--i,0) * -0.045s)!important;
}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(4n){height:13px!important;opacity:.72!important;}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(7n){height:17px!important;opacity:.86!important;}
.praxisCoachPage .rdInlineVoiceBars span:nth-child(11n){height:6px!important;opacity:.38!important;}
@keyframes rdVoiceTapeV23{
  0%{transform:translateX(360px) scaleY(calc(.32 + var(--rdVoiceLevel,.18) * .55));opacity:.05;}
  12%{opacity:.32;}
  42%{transform:translateX(145px) scaleY(calc(.45 + var(--rdVoiceLevel,.18) * 2.0));opacity:.82;}
  70%{transform:translateX(40px) scaleY(calc(.38 + var(--rdVoiceLevel,.18) * 1.25));opacity:.58;}
  100%{transform:translateX(-70px) scaleY(calc(.30 + var(--rdVoiceLevel,.18) * .55));opacity:.05;}
}

/* ===== Reset Discipline Coach v4 clean overrides ===== */
.praxisCoachPage .coachBottomActionHost{display:none!important;height:0!important;padding:0!important;margin:0!important;overflow:hidden!important;}
.praxisCoachPage .chatMessages{padding-bottom:112px!important;}
.praxisCoachPage .coachTopActions{display:flex;gap:8px;margin:7px 0 4px;align-items:center;}
.praxisCoachPage .coachTopActions button{height:24px;padding:0 10px;border-radius:999px;border:1px solid rgba(211,174,83,.34);background:rgba(18,18,18,.72);color:rgba(225,190,92,.9);font-family:var(--font-display);font-size:9px;letter-spacing:.18em;text-transform:uppercase;}
.praxisCoachPage .coachTopActions button.active{background:rgba(211,174,83,.18);box-shadow:0 0 12px rgba(211,174,83,.14);}
.praxisCoachPage .actionBubble{display:inline-flex!important;align-items:center!important;gap:10px!important;max-width:88%!important;padding:10px 12px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:18px!important;box-shadow:none!important;}
.praxisCoachPage .actionBubble span{font-size:13px!important;line-height:1.25!important;color:rgba(235,235,235,.78)!important;}
.praxisCoachPage .inlineCoachAction{height:32px!important;white-space:nowrap!important;border-radius:999px!important;background:rgba(212,174,84,.12)!important;border:1px solid rgba(212,174,84,.45)!important;color:rgba(255,241,201,.95)!important;box-shadow:0 0 14px rgba(212,174,84,.08)!important;}
.praxisCoachPage .compactCheckSummary{max-width:74%!important;margin:4px 0 16px auto!important;border-radius:15px!important;padding:8px 12px!important;background:rgba(255,255,255,.052)!important;border:1px solid rgba(255,255,255,.07)!important;color:rgba(230,230,230,.72)!important;font-size:13px!important;line-height:1.3!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceInputRow{display:none!important;}
.praxisCoachPage .rdInlineVoicePanel{height:54px!important;grid-template-columns:44px minmax(0,1fr) 48px!important;align-items:center!important;border-radius:20px!important;background:rgba(18,18,20,.94)!important;border:1px solid rgba(255,255,255,.09)!important;box-shadow:0 10px 34px rgba(0,0,0,.34)!important;padding:5px 7px!important;}
.praxisCoachPage .rdInlineVoiceBars{order:2!important;height:42px!important;min-width:0!important;width:100%!important;border-radius:17px!important;background:rgba(0,0,0,.25)!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:3px!important;padding:0 14px!important;}
.praxisCoachPage .rdInlineVoiceBars span{display:block!important;width:3px!important;min-width:3px!important;border-radius:99px!important;background:rgba(235,235,235,.38)!important;height:calc(8px + (var(--rdVoiceLevel,.25) * 26px))!important;animation:rdWaveSlide 1.45s linear infinite!important;transform-origin:center!important;}
@keyframes rdWaveSlide{0%{transform:translateX(38px) scaleY(.7);opacity:.2}45%{opacity:.95}100%{transform:translateX(-38px) scaleY(1.05);opacity:.25}}
.praxisCoachPage .rdInlineVoiceStop{order:1!important;width:42px!important;height:42px!important;min-width:42px!important;border-radius:15px!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.10)!important;color:transparent!important;font-size:0!important;}
.praxisCoachPage .rdInlineVoiceSend{order:3!important;width:46px!important;height:46px!important;min-width:46px!important;border-radius:16px!important;background:rgba(245,245,245,.94)!important;border:1px solid rgba(255,255,255,.72)!important;color:transparent!important;font-size:0!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.coachFeedbackDialog{max-width:390px!important;width:calc(100vw - 34px)!important;align-self:center!important;margin:auto!important;}
.coachFeedbackDialog pre{white-space:pre-wrap;font-family:var(--font-body);font-size:14px;line-height:1.48;color:rgba(244,241,232,.88);margin:18px 0 20px;}

/* =========================================================
   v7 Praxis Dashboard Premium Mockup Implementation
   - replaces broken text-list status with animated premium card
   - dashboard stays one-screen, no bottom nav
   - coach feedback image becomes small mood accent
   ========================================================= */
.aiPraxisScreen.praxisOnePage{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 48px) 16px max(calc(var(--sab) + 9px),9px)!important;
  background:#030303!important;
}
.aiPraxisScreen.praxisOnePage .topbar.rdGlobalTopbar{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  z-index:30!important;
}
.praxisCoachDashboardV2{
  width:100%!important;
  max-width:430px!important;
  height:100%!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  position:relative!important;
  z-index:1!important;
}
.praxisCoachDashboardV2 .praxisOneHero{
  position:absolute!important;
  z-index:-1!important;
  left:-16px!important;
  right:-16px!important;
  top:calc(-1 * (var(--sab) + 48px))!important;
  height:32svh!important;
  min-height:218px!important;
  max-height:282px!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.16) 0%,rgba(0,0,0,.28) 38%,rgba(0,0,0,.74) 76%,#030303 100%),
    linear-gradient(90deg,rgba(0,0,0,.90) 0%,rgba(0,0,0,.48) 33%,rgba(0,0,0,.10) 62%,rgba(0,0,0,.62) 100%),
    url('assets/img/praxis-mockup-hero.jpeg')!important;
  background-size:112% auto!important;
  background-position:68% 0%!important;
  background-repeat:no-repeat!important;
  opacity:.96!important;
  pointer-events:none!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting{
  flex:0 0 132px!important;
  min-height:132px!important;
  padding:38px 0 0 2px!important;
  color:#f6f2e9!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting:before{display:none!important;}
.praxisCoachDashboardV2 .praxisOneGreeting h1{
  margin:0!important;
  max-width:250px!important;
  font-family:var(--font-c)!important;
  font-size:clamp(30px,4.95svh,42px)!important;
  line-height:.95!important;
  letter-spacing:.052em!important;
  color:#f7f3ea!important;
  text-shadow:0 4px 22px rgba(0,0,0,.72)!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting h1::first-line{color:#f7f3ea!important;}
.praxisCoachDashboardV2 .praxisOneGreeting p{
  margin:8px 0 0!important;
  max-width:310px!important;
  font-size:12.5px!important;
  line-height:1.35!important;
  color:rgba(238,235,228,.70)!important;
}
.praxisCoachDashboardV2 .praxisOneLevelCard,
.praxisCoachDashboardV2 .praxisOverviewCard,
.praxisCoachDashboardV2 .praxisCoachControlCard,
.praxisCoachDashboardV2 .praxisOneProgress{
  width:100%!important;
  border:1px solid rgba(196,154,89,.48)!important;
  background:linear-gradient(180deg,rgba(16,16,14,.84),rgba(4,4,4,.78))!important;
  box-shadow:0 18px 42px rgba(0,0,0,.45), inset 0 0 0 1px rgba(255,255,255,.025)!important;
  backdrop-filter:blur(10px)!important;
}
.praxisCoachDashboardV2 .praxisOneLevelCard{
  flex:0 0 103px!important;
  min-height:103px!important;
  border-radius:21px!important;
  padding:12px 17px 10px!important;
}
.praxisCoachDashboardV2 .praxisOneLevelMain{
  display:grid!important;
  grid-template-columns:78px 1fr!important;
  gap:12px!important;
  align-items:center!important;
}
.praxisCoachDashboardV2 .praxisOneLevelMain small,
.praxisCoachDashboardV2 .praxisOneLevelMeta span,
.praxisCoachDashboardV2 .praxisOverviewCard h3,
.praxisCoachDashboardV2 .praxisCoachCardHead span,
.praxisCoachDashboardV2 .praxisOneProgress>h3{
  font-family:var(--font-c)!important;
  letter-spacing:.22em!important;
  color:#d0a65b!important;
}
.praxisCoachDashboardV2 .praxisOneLevelMain small{display:block!important;font-size:8px!important;margin-bottom:2px!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain strong{display:block!important;font-family:var(--font-c)!important;font-size:49px!important;line-height:.78!important;color:#f4f1ea!important;text-shadow:none!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain h2{margin:12px 0 0!important;font-family:var(--font-c)!important;font-size:18px!important;letter-spacing:.26em!important;color:#f7f3ec!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.praxisCoachDashboardV2 .praxisOneLevelBar{height:5px!important;border-radius:20px!important;background:rgba(255,255,255,.105)!important;overflow:hidden!important;margin:8px 0 7px!important;}
.praxisCoachDashboardV2 .praxisOneLevelBar i{display:block!important;height:100%!important;border-radius:20px!important;background:linear-gradient(90deg,#b88b45,#dec472)!important;}
.praxisCoachDashboardV2 .praxisOneLevelMeta{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;}
.praxisCoachDashboardV2 .praxisOneLevelMeta span{font-size:8px!important;color:#c49a59!important;}.praxisCoachDashboardV2 .praxisOneLevelMeta b{font-size:12px!important;color:#f1d37e!important;}

.praxisCoachDashboardV2 .praxisOverviewCard{
  flex:0 0 104px!important;
  min-height:104px!important;
  border-radius:21px!important;
  padding:12px 15px 10px!important;
  position:relative!important;
  overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisOverviewCard h3{margin:0 0 9px!important;font-size:9px!important;}
.praxisCoachDashboardV2 .rdOverviewSlides{position:relative!important;height:62px!important;}
.praxisCoachDashboardV2 .rdOverviewSlide{
  position:absolute!important;inset:0!important;
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;
  opacity:0!important;animation:rdOverviewFade 12s infinite ease-in-out!important;
}
.praxisCoachDashboardV2 .rdOverviewSlide.s2{animation-delay:6s!important;}
@keyframes rdOverviewFade{0%,41%{opacity:1;transform:translateY(0)}48%,93%{opacity:0;transform:translateY(5px)}100%{opacity:1;transform:translateY(0)}}
.praxisCoachDashboardV2 .rdOverviewMetric{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:0!important;}
.praxisCoachDashboardV2 .rdOverviewMetric>span{width:31px!important;height:31px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1px solid rgba(196,154,89,.27)!important;background:rgba(255,255,255,.035)!important;color:#d7b569!important;font-size:17px!important;}
.praxisCoachDashboardV2 .rdOverviewMetric small{display:block!important;font-family:var(--font-c)!important;letter-spacing:.16em!important;font-size:7.5px!important;color:rgba(246,241,232,.76)!important;white-space:nowrap!important;}
.praxisCoachDashboardV2 .rdOverviewMetric strong{display:block!important;font-family:var(--font-c)!important;font-size:22px!important;line-height:.92!important;color:#f6f2ea!important;white-space:nowrap!important;}
.praxisCoachDashboardV2 .rdOverviewMetric b{display:block!important;font-size:9px!important;line-height:1!important;color:#d3aa62!important;font-weight:500!important;margin-top:3px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:78px!important;}
.praxisCoachDashboardV2 .rdOverviewDots{position:absolute!important;left:0;right:0;bottom:8px!important;text-align:center!important;display:flex!important;gap:5px!important;justify-content:center!important;}
.praxisCoachDashboardV2 .rdOverviewDots i{display:block;width:5px!important;height:5px!important;border-radius:50%!important;background:rgba(255,255,255,.26)!important;animation:rdDotFade 12s infinite!important;}.praxisCoachDashboardV2 .rdOverviewDots i:nth-child(2){animation-delay:6s!important;}@keyframes rdDotFade{0%,45%{background:#d8b35f}50%,100%{background:rgba(255,255,255,.26)}}

.praxisCoachDashboardV2 .praxisCoachControlCard{
  flex:0 0 130px!important;
  min-height:130px!important;
  border-radius:21px!important;
  padding:12px 12px 10px!important;
  overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisCoachCardHead{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:8px!important;}.praxisCoachDashboardV2 .praxisCoachCardHead span{font-size:9px!important;}.praxisCoachDashboardV2 .praxisCoachCardHead b{font-family:var(--font-c)!important;font-size:9px!important;letter-spacing:.18em!important;color:rgba(240,237,230,.58)!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid{display:grid!important;grid-template-columns:1.48fr .88fr .88fr!important;gap:8px!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button{height:62px!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.10)!important;background:linear-gradient(180deg,rgba(36,36,35,.80),rgba(7,7,7,.76))!important;color:#f6f2e9!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)!important;text-align:left!important;padding:9px 10px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:2px!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button.coachStartBtn{background:linear-gradient(135deg,#e2bd67,#a97934)!important;color:#15120c!important;border-color:rgba(255,226,145,.70)!important;box-shadow:0 14px 28px rgba(186,133,44,.20)!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button i{font-style:normal!important;font-size:13px!important;line-height:1!important;opacity:.9!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button span{font-family:var(--font-c)!important;font-size:11px!important;letter-spacing:.17em!important;line-height:1.05!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button em{font-style:normal!important;font-size:9px!important;line-height:1.1!important;color:rgba(246,241,232,.46)!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button.coachStartBtn em{color:rgba(20,16,8,.55)!important;}.praxisCoachDashboardV2 .coachEliteBtn.active{border-color:rgba(226,189,103,.72)!important;background:rgba(210,164,75,.22)!important;}
.praxisCoachDashboardV2 #rdCoachModeHint{margin:8px 2px 0!important;font-size:10.5px!important;line-height:1.32!important;color:rgba(238,235,228,.68)!important;white-space:normal!important;}

.praxisCoachDashboardV2 .praxisOneProgress{
  flex:1 1 auto!important;
  min-height:0!important;
  border-radius:21px!important;
  padding:10px 11px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}
.praxisCoachDashboardV2 .praxisOneProgress>h3{margin:0 0 4px!important;font-size:9px!important;flex:0 0 auto!important;}
.praxisCoachDashboardV2 .praxisProgressRow{height:auto!important;flex:1 1 0!important;min-height:0!important;border-radius:0!important;padding:4px 2px!important;background:transparent!important;border:0!important;box-shadow:none!important;display:grid!important;grid-template-columns:34px 1fr 34px!important;gap:8px!important;align-items:center!important;}
.praxisCoachDashboardV2 .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.07)!important;}.praxisCoachDashboardV2 .praxisRowIcon{width:29px!important;height:29px!important;border-radius:9px!important;border:1px solid rgba(196,154,89,.34)!important;background:rgba(255,255,255,.025)!important;box-shadow:none!important;}.praxisCoachDashboardV2 .praxisRowIcon svg{width:16px!important;height:16px!important;stroke:#c49a59!important;}.praxisCoachDashboardV2 .praxisRowText strong{font-size:12.5px!important;letter-spacing:.095em!important;line-height:1!important;color:#f7f2e9!important;}.praxisCoachDashboardV2 .praxisRowBar{height:3px!important;margin-top:5px!important;background:rgba(255,255,255,.11)!important;}.praxisCoachDashboardV2 .praxisRowBar i{background:linear-gradient(90deg,#b88b45,#dfc172)!important;box-shadow:none!important;}.praxisCoachDashboardV2 .praxisRowCount b{font-size:12.5px!important;color:#d8bd72!important;}
.praxisCoachDashboardV2 .praxisOneStats,.praxisCoachDashboardV2 .praxisRotatingStatus{display:none!important;}

@media(max-height:780px){
  .aiPraxisScreen.praxisOnePage{padding-top:calc(var(--sab) + 46px)!important;padding-left:14px!important;padding-right:14px!important;}
  .praxisCoachDashboardV2{gap:6px!important;}
  .praxisCoachDashboardV2 .praxisOneHero{height:30svh!important;min-height:202px!important;background-size:116% auto!important;background-position:70% 0%!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting{flex-basis:116px!important;min-height:116px!important;padding-top:28px!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting h1{font-size:clamp(25px,4.35svh,34px)!important;max-width:220px!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting p{font-size:11.3px!important;margin-top:6px!important;}
  .praxisCoachDashboardV2 .praxisOneLevelCard{flex-basis:94px!important;min-height:94px!important;padding:10px 15px 8px!important;}
  .praxisCoachDashboardV2 .praxisOneLevelMain strong{font-size:42px!important;}.praxisCoachDashboardV2 .praxisOneLevelMain h2{font-size:15px!important;margin-top:10px!important;}
  .praxisCoachDashboardV2 .praxisOverviewCard{flex-basis:92px!important;min-height:92px!important;padding:10px 13px 8px!important;}.praxisCoachDashboardV2 .rdOverviewSlides{height:52px!important;}.praxisCoachDashboardV2 .rdOverviewMetric>span{width:26px!important;height:26px!important;font-size:14px!important;}.praxisCoachDashboardV2 .rdOverviewMetric strong{font-size:18px!important;}.praxisCoachDashboardV2 .rdOverviewMetric small{font-size:6.8px!important;}.praxisCoachDashboardV2 .rdOverviewMetric b{font-size:8px!important;}
  .praxisCoachDashboardV2 .praxisCoachControlCard{flex-basis:118px!important;min-height:118px!important;padding:10px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button{height:56px!important;border-radius:14px!important;padding:7px 8px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button span{font-size:9.5px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button em{font-size:8px!important;}.praxisCoachDashboardV2 #rdCoachModeHint{font-size:9.4px!important;margin-top:6px!important;}
  .praxisCoachDashboardV2 .praxisOneProgress{padding:8px 10px!important;}.praxisCoachDashboardV2 .praxisRowIcon{width:26px!important;height:26px!important;}.praxisCoachDashboardV2 .praxisRowText strong{font-size:11px!important;}.praxisCoachDashboardV2 .praxisRowCount b{font-size:11px!important;}
}

/* feedback modal: small premium coach mood image, not huge photo */
.coachFeedbackOverlay{align-items:center!important;justify-content:center!important;padding:18px!important;}
.premiumFeedbackDialog,.coachFeedbackDialog{max-width:390px!important;width:calc(100vw - 34px)!important;max-height:78svh!important;overflow:auto!important;border-radius:26px!important;background:linear-gradient(180deg,rgba(22,22,22,.96),rgba(6,6,6,.96))!important;border:1px solid rgba(196,154,89,.34)!important;box-shadow:0 24px 70px rgba(0,0,0,.72)!important;padding:18px 18px 16px!important;}
.feedbackCoachHead{display:grid!important;grid-template-columns:54px 1fr!important;gap:12px!important;align-items:center!important;margin:0 0 12px!important;}
.feedbackCoachHead img{width:54px!important;height:54px!important;min-width:54px!important;border-radius:18px!important;object-fit:cover!important;object-position:center top!important;border:1px solid rgba(196,154,89,.38)!important;box-shadow:0 12px 28px rgba(0,0,0,.42)!important;}
.feedbackCoachHead span{font-family:var(--font-c)!important;font-size:11px!important;letter-spacing:.20em!important;color:#d8b45f!important;display:block!important;}.feedbackCoachHead b{font-family:var(--font-c)!important;font-size:19px!important;letter-spacing:.08em!important;color:#f6f2ea!important;display:block!important;margin-top:3px!important;}
.coachFeedbackBody{font-size:14.5px!important;line-height:1.55!important;color:rgba(242,239,232,.82)!important;}.coachFeedbackBody p{margin:0 0 11px!important;}.premiumFeedbackDialog .btn{height:48px!important;margin-top:10px!important;border-radius:16px!important;}

/* =========================================================
   v8 FINAL PREMIUM DASHBOARD + COACH POLISH OVERRIDES
   Purpose: fix v7 spacing, empty overview, control-card clipping,
   feedback hierarchy and chat input proportions without touching payment/app flows.
   ========================================================= */
.aiPraxisScreen.praxisOnePage{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 42px) 15px max(calc(var(--sab) + 6px),6px)!important;
  background:#030303!important;
}
.praxisCoachDashboardV2{
  max-width:430px!important;
  height:100%!important;
  gap:6px!important;
  overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisOneHero{
  top:calc(-1 * (var(--sab) + 42px))!important;
  left:-15px!important;right:-15px!important;
  height:31svh!important;min-height:210px!important;max-height:268px!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.28) 39%,rgba(0,0,0,.78) 78%,#030303 100%),
    linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.58) 34%,rgba(0,0,0,.10) 65%,rgba(0,0,0,.62) 100%),
    url('assets/img/praxis-mockup-hero.jpeg')!important;
  background-size:108% auto!important;
  background-position:72% 0!important;
  opacity:.94!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting{
  flex:0 0 126px!important;min-height:126px!important;
  padding:35px 0 0 1px!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting h1{
  max-width:270px!important;
  font-size:clamp(30px,4.8svh,40px)!important;
  line-height:.92!important;
  letter-spacing:.048em!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting h1::first-line{color:#f7f3ea!important;}
.praxisCoachDashboardV2 .praxisOneGreeting p{font-size:12px!important;margin-top:7px!important;}
.praxisCoachDashboardV2 .praxisOneLevelCard{
  flex:0 0 98px!important;min-height:98px!important;
  border-radius:21px!important;padding:11px 16px 9px!important;
}
.praxisCoachDashboardV2 .praxisOneLevelMain{grid-template-columns:70px 1fr!important;gap:10px!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain strong{font-size:43px!important;line-height:.85!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain h2{font-size:17px!important;letter-spacing:.22em!important;margin:10px 0 0!important;white-space:nowrap!important;}
.praxisCoachDashboardV2 .praxisOneLevelBar{height:5px!important;margin:7px 0 7px!important;}
.praxisCoachDashboardV2 .praxisOneLevelMeta span{font-size:8px!important;letter-spacing:.14em!important;}

/* Overview: force real visible premium rotating content, no empty panel */
.praxisCoachDashboardV2 .praxisOverviewCard{
  flex:0 0 98px!important;min-height:98px!important;
  border-radius:21px!important;padding:11px 14px 9px!important;
  position:relative!important;overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisOverviewCard h3{
  margin:0!important;height:13px!important;
  font-family:var(--font-c)!important;font-size:9px!important;letter-spacing:.17em!important;
  color:#d8b45f!important;line-height:1!important;
}
.praxisCoachDashboardV2 .rdOverviewSlides{
  position:relative!important;display:block!important;height:58px!important;margin-top:9px!important;
}
.praxisCoachDashboardV2 .rdOverviewSlide{
  position:absolute!important;inset:0!important;
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;
  align-items:center!important;opacity:0!important;visibility:visible!important;
  transform:translateY(4px)!important;
  animation:rdPremiumOverviewCycle 10s infinite ease-in-out!important;
}
.praxisCoachDashboardV2 .rdOverviewSlide.s2{animation-delay:5s!important;}
@keyframes rdPremiumOverviewCycle{
  0%{opacity:0;transform:translateY(4px)}
  8%,44%{opacity:1;transform:translateY(0)}
  52%,100%{opacity:0;transform:translateY(-4px)}
}
.praxisCoachDashboardV2 .rdOverviewMetric{
  display:grid!important;grid-template-columns:28px 1fr!important;gap:8px!important;align-items:center!important;min-width:0!important;
}
.praxisCoachDashboardV2 .rdOverviewMetric>span{
  width:28px!important;height:28px!important;border-radius:50%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid rgba(216,180,95,.26)!important;background:rgba(255,255,255,.035)!important;
  color:#d8b45f!important;font-size:15px!important;
}
.praxisCoachDashboardV2 .rdOverviewMetric small{
  display:block!important;font-family:var(--font-c)!important;letter-spacing:.15em!important;
  font-size:6.7px!important;color:rgba(246,241,232,.72)!important;white-space:nowrap!important;
}
.praxisCoachDashboardV2 .rdOverviewMetric strong{
  display:block!important;font-family:var(--font-c)!important;font-size:18px!important;line-height:.96!important;
  color:#f6f2ea!important;white-space:nowrap!important;
}
.praxisCoachDashboardV2 .rdOverviewMetric b{
  display:block!important;font-size:8px!important;line-height:1.05!important;color:#d3aa62!important;font-weight:500!important;
  margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:68px!important;
}
.praxisCoachDashboardV2 .rdOverviewDots{bottom:7px!important;}

/* Coach control: keep every text visible and premium */
.praxisCoachDashboardV2 .praxisCoachControlCard{
  flex:0 0 118px!important;min-height:118px!important;border-radius:21px!important;
  padding:10px 11px 8px!important;overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisCoachCardHead{margin-bottom:7px!important;}
.praxisCoachDashboardV2 .praxisCoachCardHead span,
.praxisCoachDashboardV2 .praxisOneProgress>h3{font-family:var(--font-c)!important;font-size:8.5px!important;letter-spacing:.17em!important;color:#d8b45f!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid{grid-template-columns:1.46fr .92fr .92fr!important;gap:7px!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button{
  height:55px!important;border-radius:15px!important;padding:7px 9px!important;gap:1px!important;overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisCoachActionGrid button i{font-size:11px!important;height:11px!important;line-height:1!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button span{font-size:9.2px!important;letter-spacing:.16em!important;line-height:1.08!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button em{font-size:7.6px!important;line-height:1.12!important;max-height:18px!important;overflow:hidden!important;}
.praxisCoachDashboardV2 #rdCoachModeHint{
  margin:6px 2px 0!important;font-size:9.2px!important;line-height:1.25!important;color:rgba(238,235,228,.68)!important;
  display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
}

/* Progress: show all rows within full screen */
.praxisCoachDashboardV2 .praxisOneProgress{
  flex:1 1 auto!important;min-height:0!important;border-radius:21px!important;
  padding:9px 10px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisOneProgress>h3{margin:0 0 3px!important;flex:0 0 auto!important;}
.praxisCoachDashboardV2 .praxisProgressRow{
  flex:1 1 0!important;min-height:30px!important;height:auto!important;
  grid-template-columns:32px 1fr 34px!important;gap:8px!important;padding:3px 0!important;
}
.praxisCoachDashboardV2 .praxisRowIcon{width:27px!important;height:27px!important;border-radius:9px!important;}
.praxisCoachDashboardV2 .praxisRowIcon svg{width:15px!important;height:15px!important;}
.praxisCoachDashboardV2 .praxisRowText strong{font-size:10.8px!important;letter-spacing:.10em!important;line-height:1!important;}
.praxisCoachDashboardV2 .praxisRowBar{height:3px!important;margin-top:4px!important;}
.praxisCoachDashboardV2 .praxisRowCount b{font-size:10.8px!important;}

@media(max-height:790px){
  .aiPraxisScreen.praxisOnePage{padding-top:calc(var(--sab) + 40px)!important;padding-left:14px!important;padding-right:14px!important;}
  .praxisCoachDashboardV2{gap:5px!important;}
  .praxisCoachDashboardV2 .praxisOneHero{height:29svh!important;min-height:198px!important;background-size:112% auto!important;background-position:73% 0!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting{flex-basis:108px!important;min-height:108px!important;padding-top:25px!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting h1{font-size:clamp(26px,4.15svh,34px)!important;max-width:230px!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting p{font-size:10.8px!important;margin-top:5px!important;}
  .praxisCoachDashboardV2 .praxisOneLevelCard{flex-basis:88px!important;min-height:88px!important;padding:9px 14px 7px!important;}
  .praxisCoachDashboardV2 .praxisOneLevelMain strong{font-size:38px!important;}.praxisCoachDashboardV2 .praxisOneLevelMain h2{font-size:14px!important;letter-spacing:.2em!important;}
  .praxisCoachDashboardV2 .praxisOneLevelBar{margin:6px 0!important;}
  .praxisCoachDashboardV2 .praxisOverviewCard{flex-basis:84px!important;min-height:84px!important;padding:9px 12px 7px!important;}.praxisCoachDashboardV2 .rdOverviewSlides{height:46px!important;margin-top:6px!important;}.praxisCoachDashboardV2 .rdOverviewMetric{grid-template-columns:23px 1fr!important;gap:6px!important;}.praxisCoachDashboardV2 .rdOverviewMetric>span{width:23px!important;height:23px!important;font-size:12px!important;}.praxisCoachDashboardV2 .rdOverviewMetric strong{font-size:15.5px!important;}.praxisCoachDashboardV2 .rdOverviewMetric small{font-size:5.8px!important;}.praxisCoachDashboardV2 .rdOverviewMetric b{font-size:7px!important;max-width:58px!important;}
  .praxisCoachDashboardV2 .praxisCoachControlCard{flex-basis:108px!important;min-height:108px!important;padding:8px 9px 7px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button{height:50px!important;border-radius:14px!important;padding:6px 7px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button span{font-size:8px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button em{font-size:6.8px!important;}.praxisCoachDashboardV2 #rdCoachModeHint{font-size:8.4px!important;margin-top:5px!important;}
  .praxisCoachDashboardV2 .praxisOneProgress{padding:7px 9px!important;}.praxisCoachDashboardV2 .praxisProgressRow{min-height:26px!important;grid-template-columns:28px 1fr 30px!important;gap:7px!important;}.praxisCoachDashboardV2 .praxisRowIcon{width:24px!important;height:24px!important;}.praxisCoachDashboardV2 .praxisRowText strong{font-size:9.5px!important;}.praxisCoachDashboardV2 .praxisRowCount b{font-size:9.5px!important;}
}

/* feedback modal: less text-wall, stronger hierarchy */
.premiumFeedbackDialog,.coachFeedbackDialog{
  width:calc(100vw - 36px)!important;max-width:388px!important;max-height:76svh!important;
  padding:17px 17px 15px!important;border-radius:25px!important;
}
.feedbackCoachHead{grid-template-columns:52px 1fr!important;gap:12px!important;margin-bottom:12px!important;}
.feedbackCoachHead img{width:52px!important;height:52px!important;border-radius:17px!important;}
.feedbackCoachHead b{font-size:18px!important;line-height:1.05!important;}
.coachFeedbackBody{font-size:13.6px!important;line-height:1.46!important;color:rgba(242,239,232,.80)!important;}
.coachFeedbackBody p{margin:0 0 9px!important;}
.premiumFeedbackDialog .btn{height:47px!important;margin-top:8px!important;}

/* Coach chat: input proportions and premium alignment */
.praxisCoachPage .rdComposerWrap{padding:10px 14px calc(var(--sab) + 10px)!important;}
.praxisCoachPage .rdVoiceInputRow{display:grid!important;grid-template-columns:1fr 54px!important;gap:10px!important;align-items:center!important;}
.praxisCoachPage .rdComposerInputBox{height:52px!important;border-radius:18px!important;display:flex!important;align-items:center!important;padding:0 13px 0 18px!important;}
.praxisCoachPage #praxisInput{height:50px!important;font-size:15px!important;line-height:50px!important;}
.praxisCoachPage .rdMicBtn{width:34px!important;height:34px!important;min-width:34px!important;color:rgba(235,235,235,.72)!important;background:transparent!important;border:0!important;}
.praxisCoachPage .rdSendBtn{width:54px!important;height:52px!important;min-width:54px!important;border-radius:18px!important;align-self:center!important;}
.praxisCoachPage .chatMessages{padding-bottom:96px!important;}

/* =========================================================
   v9 FINAL targeted fixes — Praxis Dashboard + Coach Archive
   Scope: dashboard visual hierarchy, overview visibility, coach controls, progress rows.
   ========================================================= */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{
  overflow:hidden!important;
  padding-top:calc(var(--sab) + 54px)!important;
  padding-left:15px!important;
  padding-right:15px!important;
  padding-bottom:max(calc(var(--sab) + 8px),8px)!important;
  background:#030303!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{
  height:calc(100svh - var(--sab) - var(--sat) - 64px)!important;
  max-width:430px!important;
  gap:8px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneHero{
  left:-15px!important;right:-15px!important;
  top:calc(-1 * (var(--sab) + 54px))!important;
  height:34svh!important;
  min-height:238px!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.22) 34%,rgba(0,0,0,.70) 73%,#030303 100%),
    linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.33) 46%,rgba(0,0,0,.70) 100%),
    url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center 13%!important;
  opacity:.96!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{
  min-height:94px!important;
  padding:12px 4px 0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting:before{display:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{
  max-width:245px!important;
  font-size:clamp(25px,4.2svh,34px)!important;
  line-height:.95!important;
  letter-spacing:.052em!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1 span{
  color:#d8b65d!important;
  text-shadow:0 4px 18px rgba(0,0,0,.72),0 0 18px rgba(196,154,89,.14)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{
  margin-top:7px!important;
  max-width:315px!important;
  font-size:12.2px!important;
  line-height:1.28!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{
  flex:0 0 98px!important;
  min-height:98px!important;
  border-radius:18px!important;
  padding:10px 17px 9px!important;
  border:1px solid rgba(196,154,89,.55)!important;
  background:linear-gradient(180deg,rgba(4,4,4,.82),rgba(2,2,2,.75))!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain{grid-template-columns:78px 1fr!important;gap:10px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain small{font-size:8.5px!important;letter-spacing:.17em!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain strong{font-size:44px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain h2{font-size:17px!important;letter-spacing:.25em!important;margin-top:14px!important;text-align:center!important;white-space:nowrap!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelBar{height:5px!important;margin:6px 0 6px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMeta span{font-size:8px!important;}

.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{
  flex:0 0 100px!important;
  min-height:100px!important;
  height:100px!important;
  padding:10px 14px 11px!important;
  border-radius:18px!important;
  border:1px solid rgba(196,154,89,.48)!important;
  background:linear-gradient(180deg,rgba(4,4,4,.82),rgba(0,0,0,.72))!important;
  box-shadow:0 12px 28px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,226,140,.035)!important;
  overflow:hidden!important;
  display:block!important;
  position:relative!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard h3{
  display:block!important;
  margin:0 0 8px!important;
  font-family:var(--font-c)!important;
  font-size:10px!important;
  letter-spacing:.23em!important;
  color:#d2ad5e!important;
  line-height:1!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlides{
  position:relative!important;
  height:58px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  align-items:center!important;
  gap:7px!important;
  opacity:0!important;
  transform:translateY(3px)!important;
  animation:rdOverviewFade 8s infinite ease-in-out!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide.s2{animation-delay:4s!important;}
@keyframes rdOverviewFade{0%,43%{opacity:1;transform:translateY(0)}50%,100%{opacity:0;transform:translateY(3px)}}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric{
  display:grid!important;
  grid-template-columns:22px 1fr!important;
  gap:6px!important;
  align-items:center!important;
  min-width:0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric>span{
  width:22px!important;height:22px!important;border-radius:999px!important;
  display:grid!important;place-items:center!important;
  color:#d7b45d!important;
  border:1px solid rgba(196,154,89,.28)!important;
  background:rgba(196,154,89,.055)!important;
  font-size:14px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric small{display:block!important;font-family:var(--font-c)!important;font-size:7.6px!important;letter-spacing:.18em!important;color:rgba(245,240,230,.72)!important;line-height:1!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric strong{display:block!important;font-family:var(--font-c)!important;font-size:17px!important;letter-spacing:.05em!important;color:#f2eee5!important;line-height:1.05!important;margin-top:4px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric b{display:block!important;font-size:9px!important;font-weight:500!important;color:rgba(245,240,230,.58)!important;line-height:1.05!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots{position:absolute!important;left:0;right:0;bottom:7px!important;display:flex!important;justify-content:center!important;gap:7px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots i{width:6px!important;height:6px!important;border-radius:999px!important;background:rgba(255,255,255,.26)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots i:first-child{animation:rdDotFade 8s infinite ease-in-out!important;background:#d2ad5e!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots i:last-child{animation:rdDotFade 8s infinite ease-in-out reverse!important;background:#d2ad5e!important;}
@keyframes rdDotFade{0%,43%{opacity:1}50%,100%{opacity:.25}}

.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{
  flex:0 0 112px!important;
  min-height:112px!important;
  border-radius:18px!important;
  padding:10px 13px 12px!important;
  border:1px solid rgba(196,154,89,.50)!important;
  background:linear-gradient(180deg,rgba(5,5,5,.84),rgba(1,1,1,.72))!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:9px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead span,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead b{font-family:var(--font-c)!important;font-size:9px!important;letter-spacing:.22em!important;color:#d2ad5e!important;font-weight:700!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid{display:grid!important;grid-template-columns:1.42fr 1fr 1fr!important;gap:8px!important;align-items:stretch!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button{height:66px!important;border-radius:15px!important;padding:8px 8px!important;display:grid!important;grid-template-columns:30px 1fr!important;align-items:center!important;gap:7px!important;text-align:left!important;border:1px solid rgba(255,255,255,.12)!important;background:linear-gradient(180deg,rgba(40,40,40,.78),rgba(8,8,8,.86))!important;color:#f4efe5!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button i{width:28px!important;height:28px!important;border-radius:9px!important;display:grid!important;place-items:center!important;font-style:normal!important;font-size:16px!important;color:#d4b05d!important;border:1px solid rgba(196,154,89,.24)!important;background:rgba(196,154,89,.07)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button span{font-family:var(--font-c)!important;font-size:11px!important;line-height:1.05!important;letter-spacing:.18em!important;white-space:normal!important;color:#f4efe5!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button em{display:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn{background:linear-gradient(135deg,#e0bd71,#b8893f)!important;color:#090909!important;border-color:rgba(255,235,170,.55)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn span,.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn i{color:#090909!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn i{border-color:rgba(0,0,0,.20)!important;background:rgba(0,0,0,.08)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteBtn.active{background:linear-gradient(135deg,rgba(196,154,89,.62),rgba(70,52,25,.95))!important;border-color:rgba(240,205,112,.72)!important;box-shadow:0 0 24px rgba(196,154,89,.18), inset 0 0 0 1px rgba(255,235,170,.10)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly #rdCoachModeHint,.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard>p{display:none!important;}

.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{
  flex:1 1 auto!important;
  min-height:0!important;
  border-radius:18px!important;
  padding:10px 12px!important;
  border:1px solid rgba(196,154,89,.50)!important;
  background:linear-gradient(180deg,rgba(4,4,4,.82),rgba(0,0,0,.70))!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress h3{font-family:var(--font-c)!important;font-size:10px!important;letter-spacing:.23em!important;color:#d2ad5e!important;margin:0 0 7px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow{height:calc((100% - 25px)/4)!important;min-height:39px!important;grid-template-columns:38px minmax(0,1fr) 40px!important;gap:10px!important;padding:5px 2px!important;border-radius:0!important;background:transparent!important;border:0!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.075)!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon{width:32px!important;height:32px!important;border-radius:10px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon svg{width:17px!important;height:17px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowText strong{font-size:12.4px!important;letter-spacing:.11em!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowBar{height:4px!important;margin-top:6px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowCount b{font-size:13px!important;}
.databaseDayButton{width:100%;text-align:left;color:inherit;border:0;background:transparent;display:block;cursor:pointer;}
@media(max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{gap:6px!important;height:calc(100svh - var(--sab) - var(--sat) - 60px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{min-height:78px!important;padding-top:7px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{font-size:clamp(22px,3.85svh,29px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{font-size:11px!important;margin-top:5px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{flex-basis:86px!important;min-height:86px!important;padding:8px 14px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain{grid-template-columns:66px 1fr!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain strong{font-size:36px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain h2{font-size:14px!important;margin-top:11px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMeta span{font-size:7.2px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{height:86px!important;min-height:86px!important;flex-basis:86px!important;padding:8px 12px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlides{height:48px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric strong{font-size:14px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric b{font-size:8px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{height:96px!important;min-height:96px!important;flex-basis:96px!important;padding:8px 11px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead{margin-bottom:7px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button{height:54px!important;border-radius:13px!important;grid-template-columns:24px 1fr!important;gap:5px!important;padding:6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button i{width:22px!important;height:22px!important;font-size:13px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button span{font-size:9.2px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{padding:8px 10px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow{min-height:34px!important;grid-template-columns:32px 1fr 34px!important;gap:8px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon{width:28px!important;height:28px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowText strong{font-size:10.8px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowCount b{font-size:11.2px!important;}
}

/* =========================================================
   v10 FINAL PATCH — Premium Praxis Dashboard exact fixes
   Fixes: hero full-background, overview visible, coach controls,
   progress clipping, button hierarchy, dashboard spacing.
   ========================================================= */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{
  overflow:hidden!important;
  padding-top:calc(var(--sab) + 48px)!important;
  padding-left:15px!important;
  padding-right:15px!important;
  padding-bottom:max(calc(var(--sab) + 8px),8px)!important;
  background:#030303!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{
  position:relative!important;
  height:calc(100svh - var(--sab) - var(--sat) - 56px)!important;
  max-width:430px!important;
  gap:7px!important;
  overflow:hidden!important;
  z-index:1!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneHero{
  position:absolute!important;
  left:-15px!important;right:-15px!important;
  top:calc(-1 * (var(--sab) + 48px))!important;
  height:42svh!important;
  min-height:292px!important;
  pointer-events:none!important;
  z-index:-1!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.16) 35%,rgba(0,0,0,.64) 76%,#030303 100%),
    linear-gradient(90deg,rgba(0,0,0,.60) 0%,rgba(0,0,0,.24) 48%,rgba(0,0,0,.74) 100%),
    url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  opacity:.96!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{
  flex:0 0 130px!important;
  min-height:130px!important;
  padding:56px 4px 0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{
  max-width:265px!important;
  font-size:clamp(25px,4svh,32px)!important;
  line-height:.94!important;
  letter-spacing:.048em!important;
  margin:0!important;
  text-shadow:0 6px 18px rgba(0,0,0,.72)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1 span{color:#d8b65d!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{
  margin-top:6px!important;
  font-size:11.6px!important;
  line-height:1.25!important;
  color:rgba(243,239,231,.72)!important;
  max-width:330px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{
  flex:0 0 88px!important;
  min-height:88px!important;
  padding:9px 17px 8px!important;
  border-radius:18px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain{grid-template-columns:74px 1fr!important;align-items:center!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain strong{font-size:40px!important;line-height:.82!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain h2{font-size:15px!important;letter-spacing:.28em!important;margin:7px 0 0!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelBar{height:5px!important;margin:5px 0 5px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMeta span{font-size:7.6px!important;}

/* overview: never empty; first slide visible immediately, second gently fades in */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{
  flex:0 0 89px!important;
  height:89px!important;
  min-height:89px!important;
  padding:9px 13px 8px!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard h3{
  margin:0 0 7px!important;
  font-size:9.2px!important;
  letter-spacing:.23em!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlides{
  position:relative!important;
  height:48px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  align-items:center!important;
  opacity:1!important;
  transform:none!important;
  animation:none!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide.s1{opacity:1!important;animation:rdV10SlideOne 10s infinite ease-in-out!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide.s2{opacity:0!important;animation:rdV10SlideTwo 10s infinite ease-in-out!important;}
@keyframes rdV10SlideOne{0%,46%{opacity:1;transform:translateY(0)}52%,96%{opacity:0;transform:translateY(2px)}100%{opacity:1;transform:translateY(0)}}
@keyframes rdV10SlideTwo{0%,46%{opacity:0;transform:translateY(2px)}52%,96%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(2px)}}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr)!important;
  gap:6px!important;
  align-items:center!important;
  min-width:0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric>span{
  width:24px!important;height:24px!important;font-size:13px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric small{font-size:6.7px!important;letter-spacing:.16em!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric strong{font-size:15px!important;line-height:1!important;margin-top:3px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric b{font-size:7.3px!important;max-width:66px!important;margin-top:2px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots{bottom:6px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots i{width:5px!important;height:5px!important;}

/* coach area: elite switch above, two clean buttons across full width */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{
  flex:0 0 124px!important;
  min-height:124px!important;
  padding:9px 14px 12px!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead{margin-bottom:6px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead span,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead b{font-size:8.4px!important;letter-spacing:.23em!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisEliteSwitchRow{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  height:28px!important;
  margin-bottom:8px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisEliteSwitchRow>span{
  font-family:var(--font-c)!important;
  color:rgba(245,239,226,.74)!important;
  font-size:9px!important;
  letter-spacing:.22em!important;
  font-weight:700!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch{
  height:28px!important;
  min-width:82px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg,rgba(44,44,44,.82),rgba(10,10,10,.88))!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:3px 4px 3px 12px!important;
  color:rgba(246,241,232,.74)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch b{
  font-family:var(--font-c)!important;font-size:8.5px!important;letter-spacing:.22em!important;font-weight:700!important;line-height:1!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch i{
  width:20px!important;height:20px!important;border-radius:999px!important;background:rgba(245,240,230,.62)!important;display:block!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch.active{
  background:linear-gradient(135deg,#d7b35f,#8b6630)!important;
  border-color:rgba(255,231,155,.75)!important;
  color:#0a0907!important;
  box-shadow:0 0 22px rgba(196,154,89,.24), inset 0 0 0 1px rgba(255,248,190,.12)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch.active i{background:#0d0b08!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid{
  display:grid!important;
  grid-template-columns:1.6fr 1fr!important;
  gap:10px!important;
  align-items:stretch!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button{
  height:58px!important;
  border-radius:16px!important;
  padding:8px 11px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  align-items:center!important;
  gap:9px!important;
  text-align:left!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button i{
  width:33px!important;height:33px!important;border-radius:11px!important;font-size:18px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button span{
  font-size:12px!important;
  letter-spacing:.18em!important;
  line-height:1.02!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn{
  background:linear-gradient(135deg,#e5c071,#c49a59,#8f692f)!important;
  color:#080706!important;
  border-color:rgba(255,238,178,.66)!important;
  box-shadow:0 10px 24px rgba(196,154,89,.17), inset 0 0 0 1px rgba(255,245,205,.10)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn span,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn i{color:#070605!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachFeedbackBtn span{font-size:11.2px!important;}

/* progress: larger card, four rows fully visible, database cannot clip */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{
  flex:1 1 214px!important;
  min-height:214px!important;
  padding:10px 13px 12px!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress h3{font-size:9.6px!important;margin:0 0 7px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow{
  height:calc((100% - 24px)/4)!important;
  min-height:40px!important;
  grid-template-columns:36px minmax(0,1fr) 38px!important;
  gap:10px!important;
  padding:4px 1px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon{width:31px!important;height:31px!important;border-radius:10px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon svg{width:16px!important;height:16px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowText strong{font-size:11.4px!important;letter-spacing:.12em!important;line-height:1!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowBar{height:4px!important;margin-top:6px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowCount b{font-size:12.3px!important;}

@media(max-height:780px){
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{padding-top:calc(var(--sab) + 42px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{height:calc(100svh - var(--sab) - var(--sat) - 50px)!important;gap:5px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneHero{top:calc(-1 * (var(--sab) + 42px))!important;height:41svh!important;min-height:252px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{flex-basis:108px!important;min-height:108px!important;padding-top:46px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{font-size:clamp(22px,3.65svh,28px)!important;max-width:235px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{font-size:10.2px!important;margin-top:5px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{flex-basis:78px!important;min-height:78px!important;padding:7px 14px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain{grid-template-columns:58px 1fr!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain strong{font-size:32px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain h2{font-size:12.8px!important;margin-top:6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{height:75px!important;min-height:75px!important;flex-basis:75px!important;padding:7px 11px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard h3{font-size:8px!important;margin-bottom:4px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlides{height:41px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric{grid-template-columns:19px 1fr!important;gap:5px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric>span{width:19px!important;height:19px!important;font-size:11px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric strong{font-size:12.6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric small{font-size:5.7px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric b{font-size:6.5px!important;max-width:54px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{flex-basis:105px!important;min-height:105px!important;padding:7px 11px 9px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisEliteSwitchRow{height:24px!important;margin-bottom:6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch{height:24px!important;min-width:74px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch i{width:17px!important;height:17px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button{height:48px!important;border-radius:13px!important;grid-template-columns:26px 1fr!important;gap:7px!important;padding:6px 8px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button i{width:25px!important;height:25px!important;font-size:14px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button span{font-size:9.7px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{min-height:190px!important;flex-basis:190px!important;padding:8px 11px 9px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow{min-height:34px!important;grid-template-columns:31px 1fr 34px!important;gap:8px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon{width:27px!important;height:27px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowText strong{font-size:10.1px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowCount b{font-size:10.8px!important;}
}

/* =========================================================
   v11 FINAL PATCH — Praxis Dashboard aligned to approved 30-Day Master Layout
   Goals: hero to top, only original hero asset, stable average overview,
   cleaner coach block, visible 4-row progress, no debug/empty states.
   ========================================================= */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{
  position:relative!important;
  min-height:100svh!important;
  height:100svh!important;
  overflow:hidden!important;
  padding:0 15px max(8px,var(--sab))!important;
  background:#020202!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly:before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.08) 21%,rgba(0,0,0,.54) 50%,#020202 76%,#020202 100%),
    linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.20) 45%,rgba(0,0,0,.72) 100%),
    url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center 0%!important;
  background-repeat:no-repeat!important;
  opacity:.96!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .topbar.rdGlobalTopbar{
  z-index:50!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:430px!important;
  height:calc(100svh - max(8px,var(--sab)))!important;
  margin:0 auto!important;
  padding:0!important;
  gap:8px!important;
  overflow:hidden!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneHero{
  display:none!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{
  flex:0 0 238px!important;
  min-height:238px!important;
  padding:calc(var(--sat) + 124px) 5px 0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{
  font-size:clamp(27px,7.1vw,35px)!important;
  line-height:.92!important;
  letter-spacing:.035em!important;
  max-width:318px!important;
  margin:0!important;
  color:rgba(249,246,239,.98)!important;
  text-shadow:0 4px 20px rgba(0,0,0,.86)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1 span{
  color:#d8b65d!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{
  margin:7px 0 0!important;
  font-size:13.2px!important;
  line-height:1.25!important;
  color:rgba(244,240,232,.76)!important;
  max-width:365px!important;
  text-shadow:0 2px 12px rgba(0,0,0,.8)!important;
}

/* Level card — same calmer proportions as master dashboard */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{
  flex:0 0 92px!important;
  min-height:92px!important;
  padding:10px 17px 9px!important;
  border-radius:19px!important;
  border:1.1px solid rgba(216,182,93,.64)!important;
  background:linear-gradient(180deg,rgba(10,10,10,.80),rgba(2,2,2,.88))!important;
  box-shadow:0 0 0 1px rgba(255,230,150,.07) inset,0 12px 30px rgba(0,0,0,.44)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain{
  grid-template-columns:76px minmax(0,1fr)!important;
  align-items:center!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain small,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMeta span{
  font-size:8.6px!important;
  letter-spacing:.18em!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain strong{
  font-size:45px!important;
  line-height:.82!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain h2{
  font-size:16px!important;
  letter-spacing:.29em!important;
  margin:5px 0 0!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelBar{
  height:5px!important;
  margin:5px 0 6px!important;
}

/* Heute im Überblick — static average panel, always visible */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{
  flex:0 0 92px!important;
  min-height:92px!important;
  height:92px!important;
  padding:10px 16px 11px!important;
  border-radius:19px!important;
  overflow:hidden!important;
  border:1.1px solid rgba(216,182,93,.62)!important;
  background:linear-gradient(180deg,rgba(7,7,7,.82),rgba(1,1,1,.90))!important;
  box-shadow:0 0 0 1px rgba(255,230,150,.06) inset,0 12px 30px rgba(0,0,0,.40)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard h3{
  margin:0 0 9px!important;
  font-size:10px!important;
  letter-spacing:.25em!important;
  color:#d8b65d!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlides{
  height:50px!important;
  position:relative!important;
  overflow:visible!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide.s1{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  opacity:1!important;
  transform:none!important;
  animation:none!important;
  align-items:center!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewSlide.s2,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewDots{display:none!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric{
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:8px!important;
  min-width:0!important;
  align-items:center!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric>span{
  width:30px!important;height:30px!important;border-radius:999px!important;
  display:grid!important;place-items:center!important;
  color:#d8b65d!important;
  border:1px solid rgba(216,182,93,.34)!important;
  background:rgba(216,182,93,.055)!important;
  font-size:15px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric small{
  display:block!important;
  font-size:7.1px!important;
  letter-spacing:.17em!important;
  color:rgba(244,238,224,.62)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric strong{
  display:block!important;
  margin-top:2px!important;
  font-size:18px!important;
  line-height:.94!important;
  color:#f5f0e8!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric b{
  display:block!important;
  margin-top:2px!important;
  max-width:80px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:8.2px!important;
  line-height:1.05!important;
  color:rgba(216,182,93,.88)!important;
}

/* Coach area — bigger, cleaner, crown-mode feeling */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{
  flex:0 0 132px!important;
  min-height:132px!important;
  padding:12px 16px 14px!important;
  border-radius:19px!important;
  overflow:hidden!important;
  border:1.1px solid rgba(216,182,93,.64)!important;
  background:linear-gradient(180deg,rgba(7,7,7,.84),rgba(2,2,2,.92))!important;
  box-shadow:0 0 0 1px rgba(255,230,150,.06) inset,0 12px 30px rgba(0,0,0,.42)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead{
  margin:0 0 9px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead span,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachCardHead b{
  font-size:10px!important;
  letter-spacing:.24em!important;
  color:#d8b65d!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisEliteSwitchRow{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  height:28px!important;
  margin:0 0 10px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisEliteSwitchRow>span{
  font-family:var(--font-c)!important;
  font-size:10.5px!important;
  letter-spacing:.23em!important;
  color:rgba(245,239,226,.85)!important;
  font-weight:800!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch{
  min-width:96px!important;
  height:31px!important;
  padding:3px 5px 3px 13px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(44,44,44,.84),rgba(11,11,11,.92))!important;
  border:1px solid rgba(255,255,255,.15)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.045),0 8px 18px rgba(0,0,0,.30)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch:before{
  content:"♛"!important;
  font-size:12px!important;
  color:rgba(216,182,93,.75)!important;
  margin-right:4px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch b{
  font-size:9.5px!important;
  letter-spacing:.22em!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch i{
  width:22px!important;height:22px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch.active{
  background:linear-gradient(135deg,#e4bf71,#bd914a,#7e5a28)!important;
  border-color:rgba(255,232,159,.78)!important;
  color:#080704!important;
  box-shadow:0 0 20px rgba(216,182,93,.28),inset 0 0 0 1px rgba(255,245,205,.13)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachEliteSwitch.active:before{color:#080704!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid{
  display:grid!important;
  grid-template-columns:1.56fr 1fr!important;
  gap:12px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button{
  height:60px!important;
  border-radius:17px!important;
  padding:9px 13px!important;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  gap:11px!important;
  align-items:center!important;
  text-align:left!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button i{
  width:36px!important;height:36px!important;
  border-radius:12px!important;
  display:grid!important;place-items:center!important;
  font-size:19px!important;
  border:1px solid rgba(216,182,93,.36)!important;
  background:rgba(216,182,93,.08)!important;
  color:#d8b65d!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button span{
  font-size:12.6px!important;
  line-height:1.08!important;
  letter-spacing:.20em!important;
  white-space:normal!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn{
  background:linear-gradient(135deg,#e6c173,#bd934d,#80602d)!important;
  color:#080704!important;
  border:1px solid rgba(255,236,176,.66)!important;
  box-shadow:0 12px 26px rgba(196,154,89,.20),inset 0 0 0 1px rgba(255,248,210,.13)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn i,
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn span{color:#080704!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .coachStartBtn i{border-color:rgba(0,0,0,.20)!important;background:rgba(0,0,0,.10)!important;}

/* Progress — four rows in one card, no clipping */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{
  flex:1 1 232px!important;
  min-height:232px!important;
  padding:12px 16px 13px!important;
  border-radius:19px!important;
  overflow:hidden!important;
  border:1.1px solid rgba(216,182,93,.64)!important;
  background:linear-gradient(180deg,rgba(6,6,6,.84),rgba(1,1,1,.92))!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress h3{
  font-size:10.5px!important;
  letter-spacing:.24em!important;
  margin:0 0 8px!important;
  color:#d8b65d!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow{
  height:calc((100% - 30px)/4)!important;
  min-height:34px!important;
  grid-template-columns:39px minmax(0,1fr) 42px!important;
  gap:12px!important;
  padding:4px 0!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow:last-child{border-bottom:0!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon{
  width:34px!important;height:34px!important;border-radius:11px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon svg{width:17px!important;height:17px!important;}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowText strong{
  font-size:12.9px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowBar{
  height:4.5px!important;
  margin-top:7px!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowCount b{
  font-size:13.5px!important;
}

@media(max-height:820px){
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{gap:6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{flex-basis:216px!important;min-height:216px!important;padding-top:calc(var(--sat) + 112px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{font-size:clamp(24px,6.3vw,31px)!important;max-width:285px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{font-size:11.6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{flex-basis:84px!important;min-height:84px!important;padding:8px 15px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain strong{font-size:39px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelMain h2{font-size:14px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{flex-basis:82px!important;min-height:82px!important;height:82px!important;padding:8px 13px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric{grid-template-columns:24px minmax(0,1fr)!important;gap:6px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric>span{width:24px!important;height:24px!important;font-size:13px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric strong{font-size:15px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .rdOverviewMetric b{font-size:7px!important;max-width:62px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{flex-basis:118px!important;min-height:118px!important;padding:9px 13px 11px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisEliteSwitchRow{height:25px!important;margin-bottom:7px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button{height:52px!important;grid-template-columns:30px 1fr!important;gap:8px!important;padding:7px 10px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button i{width:29px!important;height:29px!important;font-size:16px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachActionGrid button span{font-size:10.6px!important;letter-spacing:.18em!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{min-height:210px!important;flex-basis:210px!important;padding:9px 13px 10px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisProgressRow{min-height:37px!important;grid-template-columns:34px 1fr 38px!important;gap:9px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowIcon{width:30px!important;height:30px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowText strong{font-size:11.3px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress .praxisRowCount b{font-size:12px!important;}
}

@media(max-height:760px){
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneScreen{gap:5px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting{flex-basis:190px!important;min-height:190px!important;padding-top:calc(var(--sat) + 96px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting h1{font-size:clamp(22px,5.8vw,28px)!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneGreeting p{font-size:10.5px!important;margin-top:5px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneLevelCard{flex-basis:76px!important;min-height:76px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOverviewCard.rdOverviewReady{flex-basis:72px!important;min-height:72px!important;height:72px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisCoachControlCard{flex-basis:108px!important;min-height:108px!important;}
  .aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .praxisOneProgress{min-height:190px!important;flex-basis:190px!important;}
}

/* =========================================================
   v12 FINAL: Praxis Dashboard production layout corrections
   Source of truth: user's working 30-day dashboard visual rhythm.
   Fixes: hero-only original image, swapped average/level, elite toggle state,
   stronger coach buttons, clean progress, responsive mobile/browser parity.
   ========================================================= */
.aiPraxisScreen.praxisOnePage{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  padding:calc(env(safe-area-inset-top,0px) + 58px) 15px max(10px,env(safe-area-inset-bottom,0px))!important;
  background:#030303!important;
}
.aiPraxisScreen.praxisOnePage .topbar.rdGlobalTopbar{
  background:transparent!important;border:0!important;box-shadow:none!important;
  height:58px!important;padding:0 15px!important;z-index:60!important;
}
.praxisCoachDashboardV2{
  max-width:430px!important;width:100%!important;height:100%!important;margin:0 auto!important;
  display:grid!important;
  grid-template-rows:146px 92px 91px 128px minmax(214px,1fr)!important;
  gap:8px!important;
  position:relative!important;
  z-index:1!important;
}
.praxisCoachDashboardV2 .praxisOneHero{
  position:absolute!important;z-index:-2!important;
  inset:calc(-1 * (env(safe-area-inset-top,0px) + 58px)) -15px auto -15px!important;
  height:345px!important;min-height:345px!important;max-height:345px!important;
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,.12) 38%,rgba(0,0,0,.72) 76%,#030303 100%),
    linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.46) 38%,rgba(0,0,0,.13) 66%,rgba(0,0,0,.58) 100%),
    url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:.98!important;pointer-events:none!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting{
  grid-row:1!important;align-self:end!important;
  min-height:auto!important;flex:auto!important;padding:0 0 6px 5px!important;color:#f6f2e9!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting h1{
  margin:0!important;max-width:270px!important;font-family:var(--font-c)!important;
  font-size:clamp(29px,5.05dvh,38px)!important;line-height:.92!important;letter-spacing:.055em!important;
  color:#f7f2e8!important;text-shadow:0 5px 22px rgba(0,0,0,.76)!important;
}
.praxisCoachDashboardV2 .praxisOneGreeting h1 span{color:#d8bd72!important;}
.praxisCoachDashboardV2 .praxisOneGreeting p{
  margin:7px 0 0!important;max-width:365px!important;font-size:13px!important;line-height:1.22!important;color:rgba(238,235,228,.70)!important;
}
/* Average / performance comes first and floats without gold frame */
.praxisCoachDashboardV2 .praxisAveragePanel{
  grid-row:2!important;width:100%!important;height:92px!important;min-height:92px!important;max-height:92px!important;
  border:0!important;background:linear-gradient(180deg,rgba(9,9,9,.54),rgba(2,2,2,.26))!important;
  box-shadow:none!important;backdrop-filter:none!important;border-radius:0!important;
  padding:8px 4px 4px!important;overflow:visible!important;position:relative!important;
}
.praxisCoachDashboardV2 .rdAverageTitle{
  text-align:center!important;margin:0 0 9px!important;font-family:var(--font-c)!important;
  font-size:12px!important;letter-spacing:.23em!important;color:#d8bd72!important;line-height:1!important;
}
.praxisCoachDashboardV2 .rdAverageMetrics{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:center!important;
}
.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric{
  display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;justify-content:start!important;min-width:0!important;
}
.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric>span{
  width:34px!important;height:34px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid rgba(216,189,114,.30)!important;background:rgba(216,189,114,.045)!important;color:#d8bd72!important;font-size:18px!important;
}
.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric small{
  display:block!important;font-family:var(--font-c)!important;letter-spacing:.16em!important;font-size:7.5px!important;color:rgba(246,241,232,.74)!important;white-space:nowrap!important;
}
.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric strong{
  display:block!important;font-family:var(--font-c)!important;font-size:23px!important;line-height:.92!important;color:#f7f2e8!important;white-space:nowrap!important;
}
.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric b{
  display:block!important;font-size:9px!important;line-height:1.05!important;color:#d8bd72!important;font-weight:500!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:72px!important;
}
/* Level card moved under average */
.praxisCoachDashboardV2 .praxisOneLevelCard{
  grid-row:3!important;min-height:91px!important;height:91px!important;max-height:91px!important;flex:auto!important;
  border-radius:21px!important;padding:10px 16px 9px!important;border:1px solid rgba(216,189,114,.46)!important;
  background:linear-gradient(180deg,rgba(14,14,13,.86),rgba(3,3,3,.82))!important;
}
.praxisCoachDashboardV2 .praxisOneLevelMain{grid-template-columns:75px 1fr!important;gap:12px!important;align-items:center!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain small{font-size:8px!important;letter-spacing:.19em!important;color:#d8bd72!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain strong{font-size:46px!important;line-height:.76!important;color:#f5f1e9!important;}
.praxisCoachDashboardV2 .praxisOneLevelMain h2{font-size:17px!important;letter-spacing:.25em!important;margin:10px 0 0!important;color:#f8f4ec!important;}
.praxisCoachDashboardV2 .praxisOneLevelBar{height:5px!important;margin:7px 0 6px!important;background:rgba(255,255,255,.11)!important;}
.praxisCoachDashboardV2 .praxisOneLevelMeta span{font-size:8px!important;letter-spacing:.14em!important;color:#cfae68!important;}
.praxisCoachDashboardV2 .praxisOneLevelMeta b{font-size:12px!important;color:#f1d37e!important;}
/* Coach control: more space, real toggle, stronger buttons */
.praxisCoachDashboardV2 .praxisCoachControlCard{
  grid-row:4!important;min-height:128px!important;height:128px!important;max-height:128px!important;flex:auto!important;
  border-radius:22px!important;padding:12px 15px 13px!important;border:1px solid rgba(216,189,114,.46)!important;
  background:linear-gradient(180deg,rgba(12,12,12,.88),rgba(3,3,3,.84))!important;overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisCoachCardHead{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 9px!important;}
.praxisCoachDashboardV2 .praxisCoachCardHead span,.praxisCoachDashboardV2 .praxisCoachCardHead b{
  font-family:var(--font-c)!important;font-size:10px!important;letter-spacing:.19em!important;color:#d8bd72!important;line-height:1!important;
}
.praxisCoachDashboardV2 .praxisEliteSwitchRow{
  display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 12px!important;min-height:30px!important;
}
.praxisCoachDashboardV2 .praxisEliteSwitchRow>span{font-family:var(--font-c)!important;font-size:13px!important;letter-spacing:.22em!important;color:#f3f0e8!important;}
.praxisCoachDashboardV2 .coachEliteSwitch{
  position:relative!important;width:112px!important;height:38px!important;min-width:112px!important;border-radius:999px!important;
  display:grid!important;grid-template-columns:28px 1fr 34px!important;align-items:center!important;gap:0!important;
  padding:0 6px!important;border:1px solid rgba(255,255,255,.12)!important;background:linear-gradient(180deg,#2d2d2d,#111)!important;
  color:#f3f0e8!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.32)!important;cursor:pointer!important;
}
.praxisCoachDashboardV2 .coachEliteSwitch .eliteCrown{grid-column:1!important;font-size:12px!important;color:#d8bd72!important;text-align:center!important;opacity:.9!important;transition:transform .22s ease!important;}
.praxisCoachDashboardV2 .coachEliteSwitch b{grid-column:2!important;text-align:center!important;font-family:var(--font-c)!important;font-size:12px!important;letter-spacing:.18em!important;color:#efece5!important;z-index:2!important;}
.praxisCoachDashboardV2 .coachEliteSwitch i{grid-column:3!important;display:block!important;width:30px!important;height:30px!important;border-radius:50%!important;background:#c7c4bd!important;box-shadow:0 2px 10px rgba(0,0,0,.42)!important;transition:transform .22s ease,background .22s ease!important;}
.praxisCoachDashboardV2 .coachEliteSwitch.active{background:linear-gradient(135deg,#e0c477,#a47a35)!important;border-color:rgba(255,221,143,.76)!important;box-shadow:0 0 22px rgba(216,189,114,.24), inset 0 1px 0 rgba(255,255,255,.28)!important;color:#100d08!important;grid-template-columns:34px 1fr 28px!important;}
.praxisCoachDashboardV2 .coachEliteSwitch.active .eliteCrown{grid-column:3!important;color:#161009!important;transform:translateX(0)!important;}
.praxisCoachDashboardV2 .coachEliteSwitch.active b{grid-column:2!important;color:#130f09!important;}
.praxisCoachDashboardV2 .coachEliteSwitch.active i{grid-column:1!important;background:#0c0b09!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid{display:grid!important;grid-template-columns:1.7fr 1fr!important;gap:12px!important;margin:0!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button{
  height:55px!important;min-height:55px!important;border-radius:18px!important;padding:0 14px!important;
  display:grid!important;grid-template-columns:38px 1fr!important;align-items:center!important;gap:12px!important;overflow:hidden!important;
  border:1px solid rgba(255,255,255,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 12px 26px rgba(0,0,0,.34)!important;
}
.praxisCoachDashboardV2 .praxisCoachActionGrid button i{width:36px!important;height:36px!important;border-radius:12px!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1px solid rgba(216,189,114,.35)!important;color:#d8bd72!important;font-size:22px!important;line-height:1!important;}
.praxisCoachDashboardV2 .praxisCoachActionGrid button span{font-family:var(--font-c)!important;font-size:14px!important;letter-spacing:.18em!important;line-height:1.05!important;color:#f6f2ea!important;text-align:left!important;}
.praxisCoachDashboardV2 .coachStartBtn{background:linear-gradient(135deg,#e0c477,#aa7d38)!important;border-color:rgba(255,220,140,.72)!important;}
.praxisCoachDashboardV2 .coachStartBtn span,.praxisCoachDashboardV2 .coachStartBtn i{color:#11100c!important;border-color:rgba(0,0,0,.18)!important;}
.praxisCoachDashboardV2 .coachStartBtn i{background:rgba(0,0,0,.06)!important;}
.praxisCoachDashboardV2 .coachFeedbackBtn{background:linear-gradient(180deg,#2b2b2b,#111)!important;}
/* Progress: four clean buttons, no clipping */
.praxisCoachDashboardV2 .praxisOneProgress{
  grid-row:5!important;min-height:214px!important;height:auto!important;flex:auto!important;border-radius:22px!important;
  padding:12px 15px 13px!important;border:1px solid rgba(216,189,114,.46)!important;
  background:linear-gradient(180deg,rgba(10,10,10,.90),rgba(2,2,2,.84))!important;overflow:hidden!important;
}
.praxisCoachDashboardV2 .praxisOneProgress>h3{margin:0 0 9px!important;font-family:var(--font-c)!important;font-size:10px!important;letter-spacing:.19em!important;color:#d8bd72!important;}
.praxisCoachDashboardV2 .praxisProgressRow{height:43px!important;min-height:43px!important;grid-template-columns:42px 1fr 48px!important;gap:11px!important;padding:3px 0!important;align-items:center!important;border-radius:12px!important;}
.praxisCoachDashboardV2 .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.07)!important;}
.praxisCoachDashboardV2 .praxisRowIcon{width:34px!important;height:34px!important;border-radius:12px!important;border:1px solid rgba(216,189,114,.33)!important;background:rgba(216,189,114,.035)!important;}
.praxisCoachDashboardV2 .praxisRowIcon svg{width:18px!important;height:18px!important;stroke:#d8bd72!important;}
.praxisCoachDashboardV2 .praxisRowText strong{font-size:14px!important;letter-spacing:.10em!important;line-height:1!important;color:#f7f3ec!important;}
.praxisCoachDashboardV2 .praxisRowBar{height:4px!important;margin-top:7px!important;background:rgba(255,255,255,.12)!important;}
.praxisCoachDashboardV2 .praxisRowBar i{background:linear-gradient(90deg,#c09042,#e0c477)!important;}
.praxisCoachDashboardV2 .praxisRowCount b{font-size:14px!important;color:#d8bd72!important;}
.rdCoachToast{left:50%!important;right:auto!important;bottom:calc(env(safe-area-inset-bottom,0px) + 20px)!important;transform:translateX(-50%) translateY(12px)!important;border-radius:999px!important;padding:10px 14px!important;background:rgba(17,17,17,.88)!important;border:1px solid rgba(216,189,114,.35)!important;color:#f2ead7!important;font-size:12px!important;max-width:calc(100vw - 40px)!important;z-index:9999!important;}
.rdCoachToast.show{transform:translateX(-50%) translateY(0)!important;}
@media(max-height:790px){
  .aiPraxisScreen.praxisOnePage{padding-top:calc(env(safe-area-inset-top,0px) + 50px)!important;padding-left:14px!important;padding-right:14px!important;}
  .praxisCoachDashboardV2{grid-template-rows:128px 80px 80px 118px minmax(198px,1fr)!important;gap:7px!important;}
  .praxisCoachDashboardV2 .praxisOneHero{height:310px!important;min-height:310px!important;max-height:310px!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting h1{font-size:clamp(25px,4.25dvh,33px)!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting p{font-size:11.2px!important;margin-top:5px!important;}
  .praxisCoachDashboardV2 .praxisAveragePanel{height:80px!important;min-height:80px!important;padding-top:5px!important;}.praxisCoachDashboardV2 .rdAverageTitle{font-size:10px!important;margin-bottom:7px!important;}.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric{grid-template-columns:28px 1fr!important;gap:7px!important;}.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric>span{width:28px!important;height:28px!important;font-size:15px!important;}.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric strong{font-size:18px!important;}.praxisCoachDashboardV2 .rdAverageMetrics .rdOverviewMetric b{font-size:7.5px!important;}
  .praxisCoachDashboardV2 .praxisOneLevelCard{height:80px!important;min-height:80px!important;padding:8px 14px 7px!important;}.praxisCoachDashboardV2 .praxisOneLevelMain{grid-template-columns:60px 1fr!important;}.praxisCoachDashboardV2 .praxisOneLevelMain strong{font-size:36px!important;}.praxisCoachDashboardV2 .praxisOneLevelMain h2{font-size:14px!important;margin-top:8px!important;}.praxisCoachDashboardV2 .praxisOneLevelMeta span{font-size:7px!important;}
  .praxisCoachDashboardV2 .praxisCoachControlCard{height:118px!important;min-height:118px!important;padding:10px 12px 11px!important;}.praxisCoachDashboardV2 .praxisEliteSwitchRow{margin-bottom:9px!important;}.praxisCoachDashboardV2 .praxisEliteSwitchRow>span{font-size:11px!important;}.praxisCoachDashboardV2 .coachEliteSwitch{width:101px!important;height:34px!important;min-width:101px!important;}.praxisCoachDashboardV2 .coachEliteSwitch i{width:26px!important;height:26px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button{height:50px!important;min-height:50px!important;border-radius:16px!important;grid-template-columns:32px 1fr!important;gap:9px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button i{width:30px!important;height:30px!important;font-size:18px!important;}.praxisCoachDashboardV2 .praxisCoachActionGrid button span{font-size:11.5px!important;}
  .praxisCoachDashboardV2 .praxisOneProgress{min-height:198px!important;padding:10px 12px!important;}.praxisCoachDashboardV2 .praxisProgressRow{height:38px!important;min-height:38px!important;grid-template-columns:36px 1fr 43px!important;gap:9px!important;}.praxisCoachDashboardV2 .praxisRowIcon{width:30px!important;height:30px!important;}.praxisCoachDashboardV2 .praxisRowText strong{font-size:12px!important;}.praxisCoachDashboardV2 .praxisRowCount b{font-size:12px!important;}
}
@media(min-height:860px){
  .aiPraxisScreen.praxisOnePage{padding-top:calc(env(safe-area-inset-top,0px) + 66px)!important;}
  .praxisCoachDashboardV2{grid-template-rows:168px 102px 101px 138px minmax(232px,1fr)!important;gap:9px!important;}
  .praxisCoachDashboardV2 .praxisOneHero{height:385px!important;min-height:385px!important;max-height:385px!important;}
  .praxisCoachDashboardV2 .praxisOneGreeting h1{font-size:clamp(34px,4.7dvh,44px)!important;}
}
.rdCoachToast{position:fixed!important;opacity:0!important;transition:opacity .22s ease,transform .22s ease!important;pointer-events:none!important;}
.rdCoachToast.show{opacity:1!important;}

/* === RD V13 CLEAN PRACTICE DASHBOARD — isolated rebuild, no legacy dashboard mixing === */
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly{
  --rd-gold:#d8b35f;
  --rd-gold2:#f0d281;
  --rd-line:rgba(216,179,95,.58);
  --rd-card:rgba(4,4,5,.78);
  --rd-card2:rgba(13,13,14,.88);
  min-height:100svh!important;
  height:100svh!important;
  overflow:hidden!important;
  background:#020202!important;
  padding:0!important;
  position:relative!important;
  display:block!important;
}
.aiPraxisScreen.rdPraxisDashboard.praxisDashboardOnly .topNav{
  position:absolute!important; z-index:20!important; top:calc(env(safe-area-inset-top) + 18px)!important; left:0!important; right:0!important;
}
.praxisOneScreen.praxisCoachDashboardV2{
  min-height:100svh!important;
  height:100svh!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding:calc(env(safe-area-inset-top) + 74px) 16px calc(env(safe-area-inset-bottom) + 14px)!important;
  position:relative!important;
  display:grid!important;
  grid-template-rows: 30.2vh 78px 91px 150px minmax(235px,1fr)!important;
  gap:10px!important;
  max-width:430px!important;
  margin:0 auto!important;
}
.praxisOneScreen.praxisCoachDashboardV2::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.18) 28%, rgba(0,0,0,.82) 55%, #000 100%),
    url('assets/img/home-ai.png') center top/cover no-repeat;
  filter:saturate(.92) contrast(1.08) brightness(.78);
}
.praxisOneScreen.praxisCoachDashboardV2::after{
  content:""; position:absolute; left:0; right:0; top:27vh; height:30vh; z-index:0;
  background:linear-gradient(180deg, rgba(0,0,0,0), #000 78%);
  pointer-events:none;
}
.praxisOneScreen.praxisCoachDashboardV2 > *{position:relative!important;z-index:1!important;}
.praxisOneHero{display:none!important;}
.praxisOneGreeting{align-self:end!important; padding:0 6px 2px!important; margin:0!important; text-align:left!important;}
.praxisOneGreeting h1{font-family:var(--font-display,Impact,sans-serif)!important; font-size:clamp(31px,8.2vw,40px)!important; line-height:.91!important; letter-spacing:.035em!important; margin:0 0 6px!important; color:#f5f2eb!important; text-shadow:0 4px 18px #000!important;}
.praxisOneGreeting h1 span{color:var(--rd-gold2)!important;}
.praxisOneGreeting p{font-size:clamp(13px,3.25vw,15px)!important; line-height:1.2!important; margin:0!important; color:rgba(245,242,235,.67)!important; white-space:nowrap!important;}

/* free-floating average metrics */
.praxisAveragePanel.rdOverviewStatic{
  grid-row:2!important; border:0!important; background:transparent!important; box-shadow:none!important;
  margin:0!important; padding:0 2px!important; height:78px!important; min-height:78px!important; max-height:78px!important;
  display:grid!important; grid-template-rows:18px 1fr!important; align-items:center!important;
}
.rdAverageTitle{font-family:var(--font-display,Impact,sans-serif)!important; text-align:center!important; letter-spacing:.42em!important; font-size:12px!important; line-height:1!important; color:rgba(216,179,95,.94)!important; text-shadow:0 2px 12px #000!important; margin:0!important;}
.rdAverageMetrics{display:grid!important; grid-template-columns:repeat(3,1fr)!important; gap:4px!important; align-items:center!important; height:60px!important;}
.rdOverviewMetric{display:grid!important; grid-template-columns:34px 1fr!important; gap:8px!important; align-items:center!important; min-width:0!important; justify-content:center!important;}
.rdOverviewMetric>span{width:31px!important;height:31px!important;border:1.2px solid rgba(216,179,95,.55)!important;border-radius:50%!important;display:grid!important;place-items:center!important;color:var(--rd-gold2)!important;font-size:18px!important;background:rgba(8,8,8,.34)!important;box-shadow:inset 0 0 0 1px rgba(255,230,160,.04)!important;}
.rdOverviewMetric div{min-width:0!important;text-align:left!important;}
.rdOverviewMetric small{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:8.2px!important;line-height:1!important;letter-spacing:.22em!important;color:rgba(245,242,235,.63)!important;white-space:nowrap!important;}
.rdOverviewMetric strong{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:25px!important;line-height:.98!important;color:#fff!important;letter-spacing:.02em!important;margin-top:2px!important;}
.rdOverviewMetric b{display:block!important;font-size:10px!important;line-height:1!important;color:rgba(216,179,95,.92)!important;font-weight:600!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:72px!important;}

/* level */
.praxisOneLevelCard{grid-row:3!important; margin:0!important; height:91px!important; min-height:91px!important; padding:10px 18px 9px!important; border:1.35px solid var(--rd-line)!important; border-radius:24px!important; background:linear-gradient(180deg, rgba(8,8,9,.89), rgba(1,1,2,.86))!important; box-shadow:inset 0 0 0 1px rgba(255,226,160,.06), 0 8px 24px rgba(0,0,0,.4)!important;}
.praxisOneLevelMain{display:grid!important; grid-template-columns:70px 1fr!important; align-items:center!important; height:48px!important;}
.praxisOneLevelMain small{display:block!important; font-family:var(--font-display,Impact,sans-serif)!important; font-size:11px!important; letter-spacing:.22em!important; color:rgba(216,179,95,.9)!important; line-height:1!important;}
.praxisOneLevelMain strong{display:block!important; font-family:var(--font-display,Impact,sans-serif)!important; font-size:52px!important; line-height:.82!important; color:#fff!important;}
.praxisOneLevelMain h2{font-family:var(--font-display,Impact,sans-serif)!important; font-size:25px!important; letter-spacing:.34em!important; text-align:center!important; color:#fff!important; margin:0!important; white-space:nowrap!important;}
.praxisOneLevelBar{height:7px!important; border-radius:999px!important; background:rgba(255,255,255,.12)!important; overflow:hidden!important; margin:4px 0 8px!important;}
.praxisOneLevelBar i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#bd8f43,#f1d67b)!important;}
.praxisOneLevelMeta{display:flex!important;justify-content:space-between!important;align-items:center!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:10px!important;letter-spacing:.18em!important;color:rgba(216,179,95,.83)!important;line-height:1!important;}
.praxisOneLevelMeta b{font-size:16px!important;color:var(--rd-gold2)!important;}

/* coach control */
.praxisCoachControlCard{grid-row:4!important; height:150px!important; min-height:150px!important; margin:0!important; padding:13px 14px 14px!important; border:1.35px solid var(--rd-line)!important; border-radius:24px!important; background:linear-gradient(180deg, rgba(9,9,10,.91), rgba(1,1,2,.88))!important; box-shadow:inset 0 0 0 1px rgba(255,226,160,.06), 0 8px 24px rgba(0,0,0,.43)!important; overflow:hidden!important;}
.praxisCoachCardHead{display:flex!important;justify-content:space-between!important;align-items:center!important;margin:0 0 10px!important;}
.praxisCoachCardHead span,.praxisCoachCardHead b{font-family:var(--font-display,Impact,sans-serif)!important;font-size:12px!important;letter-spacing:.26em!important;color:rgba(216,179,95,.94)!important;line-height:1!important;}
.praxisEliteSwitchRow{display:grid!important;grid-template-columns:1fr 128px!important;align-items:center!important;margin:0 0 12px!important;}
.praxisEliteSwitchRow>span{font-family:var(--font-display,Impact,sans-serif)!important;font-size:15px!important;letter-spacing:.32em!important;color:#fff!important;line-height:1!important;}
.coachEliteSwitch{position:relative!important;width:128px!important;height:42px!important;padding:0!important;border:1.2px solid rgba(255,255,255,.18)!important;border-radius:999px!important;background:linear-gradient(180deg,#2a2a2b,#111)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 6px 17px rgba(0,0,0,.45)!important;overflow:hidden!important;color:#fff!important;}
.coachEliteSwitch .eliteSwitchLabel{position:absolute!important;left:17px!important;top:50%!important;transform:translateY(-50%)!important;display:flex!important;align-items:center!important;gap:10px!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:14px!important;letter-spacing:.20em!important;z-index:2!important;}
.coachEliteSwitch .eliteSwitchLabel em{font-style:normal!important;color:rgba(216,179,95,.9)!important;font-size:14px!important;}
.coachEliteSwitch .eliteSwitchKnob{position:absolute!important;top:4px!important;right:4px!important;width:34px!important;height:34px!important;border-radius:50%!important;background:#d4d4d4!important;color:#090909!important;display:grid!important;place-items:center!important;font-style:normal!important;font-size:14px!important;transition:transform .24s ease, background .24s ease, color .24s ease!important;z-index:3!important;}
.coachEliteSwitch.active{border-color:rgba(255,222,143,.8)!important;background:linear-gradient(180deg,#f1d37a,#a77833)!important;color:#111!important;box-shadow:0 0 22px rgba(216,179,95,.28), inset 0 0 0 1px rgba(255,246,190,.35)!important;}
.coachEliteSwitch.active .eliteSwitchLabel{color:#111!important;}
.coachEliteSwitch.active .eliteSwitchLabel em{color:#111!important;}
.coachEliteSwitch.active .eliteSwitchKnob{transform:translateX(-86px)!important;background:#090909!important;color:var(--rd-gold2)!important;}
.praxisCoachActionGrid{display:grid!important;grid-template-columns:1.42fr .92fr!important;gap:12px!important;height:56px!important;}
.coachStartBtn,.coachFeedbackBtn{height:56px!important;min-height:56px!important;border-radius:19px!important;display:grid!important;grid-template-columns:45px 1fr!important;align-items:center!important;gap:10px!important;text-align:left!important;padding:0 14px!important;font-family:var(--font-display,Impact,sans-serif)!important;letter-spacing:.23em!important;line-height:1.05!important;overflow:hidden!important;}
.coachStartBtn{border:1.35px solid rgba(255,225,144,.78)!important;background:linear-gradient(135deg,#f2d77f 0%,#b8893e 100%)!important;color:#111!important;box-shadow:0 0 24px rgba(216,179,95,.23), inset 0 0 0 1px rgba(255,255,255,.24)!important;}
.coachFeedbackBtn{border:1.1px solid rgba(255,255,255,.16)!important;background:linear-gradient(180deg,#29292a,#0c0c0d)!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 10px 24px rgba(0,0,0,.35)!important;}
.coachStartBtn i,.coachFeedbackBtn i{width:36px!important;height:36px!important;border-radius:12px!important;border:1.1px solid rgba(70,45,10,.42)!important;display:grid!important;place-items:center!important;font-style:normal!important;font-size:23px!important;color:currentColor!important;background:rgba(0,0,0,.08)!important;}
.coachFeedbackBtn i{border-color:rgba(216,179,95,.38)!important;color:var(--rd-gold2)!important;background:rgba(216,179,95,.07)!important;font-size:18px!important;}
.coachStartBtn span{font-size:16px!important;white-space:nowrap!important;}
.coachFeedbackBtn span{font-size:14px!important;white-space:normal!important;}

/* progress */
.praxisOneProgress{grid-row:5!important;margin:0!important;min-height:0!important;height:100%!important;padding:14px 14px 13px!important;border:1.35px solid var(--rd-line)!important;border-radius:24px!important;background:linear-gradient(180deg,rgba(8,8,9,.91),rgba(1,1,2,.88))!important;box-shadow:inset 0 0 0 1px rgba(255,226,160,.06),0 10px 26px rgba(0,0,0,.42)!important;overflow:hidden!important;display:grid!important;grid-template-rows:18px repeat(4,1fr)!important;gap:0!important;}
.praxisOneProgress h3{margin:0 0 1px!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:14px!important;letter-spacing:.27em!important;color:rgba(216,179,95,.94)!important;line-height:1!important;}
.praxisProgressRow{height:auto!important;min-height:0!important;width:100%!important;margin:0!important;padding:5px 0!important;border:0!important;border-radius:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;background:transparent!important;display:grid!important;grid-template-columns:48px 1fr 54px!important;gap:12px!important;align-items:center!important;text-align:left!important;}
.praxisProgressRow:last-child{border-bottom:0!important;}
.praxisRowIcon{width:42px!important;height:42px!important;border:1.1px solid rgba(216,179,95,.48)!important;border-radius:14px!important;display:grid!important;place-items:center!important;background:rgba(216,179,95,.05)!important;color:var(--rd-gold2)!important;}
.praxisRowIcon svg{width:24px!important;height:24px!important;stroke:currentColor!important;stroke-width:1.7!important;fill:none!important;}
.praxisRowText{display:block!important;min-width:0!important;}
.praxisRowText strong{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:18px!important;line-height:1!important;letter-spacing:.12em!important;color:#fff!important;margin-bottom:9px!important;white-space:nowrap!important;}
.praxisRowBar{display:block!important;height:6px!important;background:rgba(255,255,255,.13)!important;border-radius:999px!important;overflow:hidden!important;}
.praxisRowBar i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#bd8f43,#f1d67b)!important;}
.praxisRowCount{font-family:var(--font-display,Impact,sans-serif)!important;font-size:18px!important;line-height:1!important;letter-spacing:.05em!important;color:var(--rd-gold2)!important;text-align:right!important;}
.praxisRowCount b{font-size:18px!important;}
.rdCoachToast{position:fixed!important;left:50%!important;bottom:calc(env(safe-area-inset-bottom) + 32px)!important;transform:translate(-50%,18px)!important;opacity:0!important;z-index:9999!important;background:rgba(12,12,13,.88)!important;color:#fff!important;border:1px solid rgba(216,179,95,.42)!important;border-radius:999px!important;padding:10px 18px!important;font-size:14px!important;box-shadow:0 10px 28px rgba(0,0,0,.5)!important;transition:opacity .22s ease, transform .22s ease!important;}
.rdCoachToast.show{opacity:1!important;transform:translate(-50%,0)!important;}

@media (max-height:760px){
  .praxisOneScreen.praxisCoachDashboardV2{grid-template-rows:28.5vh 72px 84px 142px minmax(220px,1fr)!important;gap:8px!important;padding-left:15px!important;padding-right:15px!important;}
  .praxisOneGreeting h1{font-size:clamp(27px,7.4vw,34px)!important;}
  .praxisOneGreeting p{font-size:12px!important;}
  .praxisAveragePanel.rdOverviewStatic{height:72px!important;min-height:72px!important;max-height:72px!important;}
  .rdOverviewMetric{grid-template-columns:30px 1fr!important;gap:6px!important;}
  .rdOverviewMetric>span{width:28px!important;height:28px!important;font-size:16px!important;}
  .rdOverviewMetric strong{font-size:22px!important;}
  .praxisOneLevelCard{height:84px!important;min-height:84px!important;padding:9px 16px 8px!important;}
  .praxisOneLevelMain{height:43px!important;}
  .praxisOneLevelMain strong{font-size:47px!important;}
  .praxisOneLevelMain h2{font-size:22px!important;}
  .praxisCoachControlCard{height:142px!important;min-height:142px!important;padding:12px 13px!important;}
  .praxisCoachActionGrid{height:52px!important;}
  .coachStartBtn,.coachFeedbackBtn{height:52px!important;min-height:52px!important;}
  .coachStartBtn span{font-size:14px!important;}
  .coachFeedbackBtn span{font-size:12.5px!important;}
  .praxisOneProgress{padding:12px 13px!important;}
  .praxisRowText strong{font-size:16px!important;margin-bottom:7px!important;}
  .praxisProgressRow{grid-template-columns:45px 1fr 50px!important;padding:4px 0!important;}
}
@media (min-width:520px){
  .praxisOneScreen.praxisCoachDashboardV2{max-width:420px!important;}
}

/* =========================================================
   v14 FINAL CLEAN PRAXIS DASHBOARD REBUILD
   Purpose: isolate Praxis dashboard from older override layers.
   Uses the approved 30-Day dashboard spacing/radius language.
   ========================================================= */
.aiPraxisScreen.praxisDashboardOnly.praxisOnePage,
.aiPraxisScreen.rdPraxisDashboard.praxisOnePage{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  padding:calc(var(--sab) + 48px) 16px max(calc(var(--sab) + 10px),10px)!important;
  background:#030303!important;
}
.rdPraxisDashboard .topbar.rdGlobalTopbar,
.praxisDashboardOnly .topbar.rdGlobalTopbar{
  z-index:50!important;
}
.praxisOneScreen{
  max-width:430px!important;
  height:100%!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-rows: 31.5svh 70px 102px 132px minmax(230px, 1fr)!important;
  gap:8px!important;
  position:relative!important;
  z-index:1!important;
}
.praxisOneHero{
  position:absolute!important;
  z-index:-1!important;
  left:-16px!important;
  right:-16px!important;
  top:calc(-1 * (var(--sab) + 48px))!important;
  height:42svh!important;
  min-height:300px!important;
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.12) 38%, rgba(0,0,0,.72) 77%, #030303 100%),
    linear-gradient(90deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.06) 50%, rgba(0,0,0,.45) 100%),
    url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:1!important;
  pointer-events:none!important;
}
.praxisOneGreeting{
  grid-row:1!important;
  align-self:end!important;
  min-height:0!important;
  height:auto!important;
  padding:0 6px 8px!important;
  text-align:center!important;
  color:#f6f2e9!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
}
.praxisOneGreeting:before{display:none!important;}
.praxisOneGreeting h1{
  margin:0!important;
  max-width:none!important;
  width:100%!important;
  font-family:var(--font-c)!important;
  font-size:clamp(27px,6.4vw,36px)!important;
  line-height:.92!important;
  letter-spacing:.055em!important;
  white-space:nowrap!important;
  text-align:center!important;
  color:#f6f2e9!important;
  text-shadow:0 4px 20px rgba(0,0,0,.82)!important;
}
.praxisOneGreeting h1 span{
  color:#d7b868!important;
  background:linear-gradient(180deg,#f0d78b,#b88b45)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
.praxisOneGreeting p{
  margin:7px 0 0!important;
  max-width:100%!important;
  font-size:13px!important;
  line-height:1.15!important;
  text-align:center!important;
  color:rgba(240,237,232,.70)!important;
  white-space:nowrap!important;
  text-shadow:0 3px 12px rgba(0,0,0,.88)!important;
}
.praxisAveragePanel.rdOverviewStatic{
  grid-row:2!important;
  align-self:stretch!important;
  height:70px!important;
  min-height:70px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:visible!important;
}
.rdAverageTitle{display:none!important;}
.rdAverageMetrics{
  height:100%!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:0!important;
  align-items:center!important;
  justify-items:center!important;
}
.rdOverviewMetric{
  width:100%!important;
  display:grid!important;
  grid-template-columns:32px auto!important;
  justify-content:center!important;
  align-items:center!important;
  column-gap:8px!important;
  min-width:0!important;
}
.rdOverviewMetric>span{
  width:31px!important;
  height:31px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1.15px solid rgba(212,180,106,.52)!important;
  border-radius:999px!important;
  color:#d4b46a!important;
  font-size:18px!important;
  line-height:1!important;
  background:rgba(7,7,7,.34)!important;
  box-shadow:0 0 15px rgba(201,168,76,.14)!important;
}
.rdOverviewMetric div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;}
.rdOverviewMetric small{
  font-family:var(--font-c)!important;
  font-size:8.5px!important;
  letter-spacing:.16em!important;
  color:rgba(246,242,233,.68)!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rdOverviewMetric strong{
  margin-top:3px!important;
  font-family:var(--font-c)!important;
  font-size:25px!important;
  line-height:.9!important;
  color:#f6f2e9!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
}
.rdOverviewMetric b{
  margin-top:3px!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:500!important;
  color:#d4b46a!important;
  max-width:80px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.praxisOneLevelCard{
  grid-row:3!important;
  height:102px!important;
  min-height:102px!important;
  padding:11px 16px 10px!important;
  border-radius:22px!important;
  border:1.15px solid rgba(212,180,106,.66)!important;
  background:linear-gradient(180deg,rgba(11,11,11,.82),rgba(2,2,2,.88))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.05) inset,0 16px 32px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
.praxisOneLevelMain{
  display:grid!important;
  grid-template-columns:82px 1fr!important;
  gap:10px!important;
  align-items:center!important;
}
.praxisOneLevelMain small,
.praxisOneLevelMeta span{
  font-family:var(--font-c)!important;
  letter-spacing:.17em!important;
  color:#c49a59!important;
}
.praxisOneLevelMain small{font-size:9px!important;display:block!important;margin:0 0 1px!important;}
.praxisOneLevelMain strong{font-family:var(--font-c)!important;font-size:49px!important;line-height:.78!important;color:#f5f2ed!important;}
.praxisOneLevelMain h2{
  margin:10px 0 0!important;
  font-family:var(--font-c)!important;
  font-size:20px!important;
  letter-spacing:.25em!important;
  text-align:center!important;
  color:#f6f2e9!important;
  white-space:nowrap!important;
}
.praxisOneLevelBar{height:5px!important;margin:7px 0 7px!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;overflow:hidden!important;}
.praxisOneLevelBar i{height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#b88b45,#e0c474)!important;display:block!important;}
.praxisOneLevelMeta{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:8px!important;}
.praxisOneLevelMeta span{font-size:8.8px!important;line-height:1!important;white-space:nowrap!important;}
.praxisOneLevelMeta b{font-size:14px!important;color:#f0d27f!important;}
.praxisCoachControlCard{
  grid-row:4!important;
  height:132px!important;
  min-height:132px!important;
  border-radius:22px!important;
  border:1.15px solid rgba(212,180,106,.66)!important;
  background:linear-gradient(180deg,rgba(11,11,11,.82),rgba(2,2,2,.90))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.05) inset,0 16px 32px rgba(0,0,0,.38)!important;
  padding:12px 14px 14px!important;
  display:grid!important;
  grid-template-rows:19px 38px 58px!important;
  gap:5px!important;
  overflow:hidden!important;
}
.praxisCoachCardHead{display:flex!important;justify-content:space-between!important;align-items:center!important;}
.praxisCoachCardHead span,
.praxisCoachCardHead b,
.praxisEliteSwitchRow>span{
  font-family:var(--font-c)!important;
  font-size:11px!important;
  letter-spacing:.20em!important;
  color:#d8bd72!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.praxisEliteSwitchRow{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;}
.coachEliteSwitch{
  position:relative!important;
  width:112px!important;
  height:34px!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:1.15px solid rgba(255,255,255,.15)!important;
  background:linear-gradient(180deg,rgba(38,38,38,.92),rgba(14,14,14,.96))!important;
  box-shadow:0 9px 18px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.05)!important;
  color:#f4efe4!important;
  padding:0!important;
  overflow:hidden!important;
  cursor:pointer!important;
}
.coachEliteSwitch.active{
  border-color:rgba(255,223,143,.78)!important;
  background:linear-gradient(135deg,#f1d17d 0%,#cda357 50%,#8c6632 100%)!important;
  color:#17120a!important;
  box-shadow:0 0 22px rgba(209,169,82,.28), inset 0 0 0 1px rgba(255,246,198,.24)!important;
}
.coachEliteSwitch .eliteSwitchLabel{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:0 17px 0 42px!important;
  pointer-events:none!important;
}
.coachEliteSwitch.active .eliteSwitchLabel{justify-content:flex-start!important;padding:0 42px 0 18px!important;}
.coachEliteSwitch .eliteSwitchLabel b{
  font-family:var(--font-c)!important;
  font-size:13px!important;
  letter-spacing:.16em!important;
  line-height:1!important;
}
.coachEliteSwitch .eliteSwitchKnob{
  position:absolute!important;
  left:5px!important;
  top:4px!important;
  width:26px!important;
  height:26px!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#ddd,#989898)!important;
  color:#141414!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-style:normal!important;
  font-size:12px!important;
  line-height:1!important;
  transition:left .22s ease, background .22s ease, color .22s ease!important;
  box-shadow:0 2px 8px rgba(0,0,0,.35)!important;
}
.coachEliteSwitch.active .eliteSwitchKnob{
  left:80px!important;
  background:#080705!important;
  color:#f1d17d!important;
}
.praxisCoachActionGrid{
  display:grid!important;
  grid-template-columns:1.42fr .95fr!important;
  gap:10px!important;
  height:58px!important;
}
.coachStartBtn,
.coachFeedbackBtn{
  height:58px!important;
  min-height:58px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  padding:0 15px!important;
  overflow:hidden!important;
  text-align:left!important;
  letter-spacing:.14em!important;
  font-family:var(--font-c)!important;
  font-size:14px!important;
  line-height:1.04!important;
  white-space:nowrap!important;
}
.coachStartBtn{
  color:#120f08!important;
  border:1.15px solid rgba(255,230,160,.85)!important;
  background:linear-gradient(135deg,#f0cf78 0%,#c99c50 52%,#8f672e 100%)!important;
  box-shadow:0 0 20px rgba(207,166,80,.23), inset 0 0 0 1px rgba(255,248,205,.25)!important;
}
.coachFeedbackBtn{
  color:#f6f2e9!important;
  border:1.15px solid rgba(255,255,255,.13)!important;
  background:linear-gradient(180deg,rgba(39,39,39,.88),rgba(9,9,9,.95))!important;
  box-shadow:0 12px 26px rgba(0,0,0,.40), inset 0 0 0 1px rgba(255,255,255,.05)!important;
}
.coachStartBtn i,
.coachFeedbackBtn i{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:11px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-style:normal!important;
  font-size:18px!important;
  line-height:1!important;
  border:1px solid rgba(10,8,4,.22)!important;
  background:rgba(255,255,255,.18)!important;
}
.coachFeedbackBtn i{
  color:#d8bd72!important;
  border-color:rgba(212,180,106,.34)!important;
  background:rgba(212,180,106,.07)!important;
}
.praxisOneProgress{
  grid-row:5!important;
  min-height:0!important;
  height:100%!important;
  border-radius:22px!important;
  border:1.15px solid rgba(212,180,106,.66)!important;
  background:linear-gradient(180deg,rgba(11,11,11,.82),rgba(2,2,2,.90))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.05) inset,0 16px 32px rgba(0,0,0,.38)!important;
  padding:13px 15px 15px!important;
  display:grid!important;
  grid-template-rows:18px repeat(4,1fr)!important;
  gap:0!important;
  overflow:hidden!important;
}
.praxisOneProgress h3{
  margin:0!important;
  font-family:var(--font-c)!important;
  font-size:11px!important;
  letter-spacing:.20em!important;
  line-height:1!important;
  color:#d8bd72!important;
}
.praxisOneProgress .praxisProgressRow{
  height:auto!important;
  min-height:0!important;
  padding:6px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:42px 1fr 45px!important;
  gap:12px!important;
  align-items:center!important;
  text-align:left!important;
}
.praxisOneProgress .praxisProgressRow+.praxisProgressRow{border-top:1px solid rgba(255,255,255,.08)!important;}
.praxisOneProgress .praxisRowIcon{
  width:36px!important;
  height:36px!important;
  border-radius:12px!important;
  border:1px solid rgba(212,180,106,.40)!important;
  background:rgba(212,180,106,.045)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.praxisOneProgress .praxisRowIcon svg{width:20px!important;height:20px!important;stroke:#d4b46a!important;stroke-width:1.8!important;}
.praxisOneProgress .praxisRowText strong{font-family:var(--font-c)!important;font-size:15px!important;letter-spacing:.10em!important;line-height:1!important;color:#f6f2e9!important;}
.praxisOneProgress .praxisRowBar{height:5px!important;margin-top:8px!important;background:rgba(255,255,255,.12)!important;border-radius:999px!important;overflow:hidden!important;}
.praxisOneProgress .praxisRowBar i{display:block;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#b88b45,#e0c474)!important;}
.praxisOneProgress .praxisRowCount b{font-family:var(--font-c)!important;font-size:15px!important;color:#d8bd72!important;letter-spacing:.04em!important;}
.rdCoachToast{
  position:fixed!important;
  left:50%!important;
  bottom:max(calc(var(--sab) + 18px),22px)!important;
  transform:translateX(-50%) translateY(12px)!important;
  opacity:0!important;
  z-index:9999!important;
  padding:11px 24px!important;
  border-radius:999px!important;
  border:1px solid rgba(212,180,106,.42)!important;
  background:rgba(12,12,12,.88)!important;
  color:#f6f2e9!important;
  font-size:14px!important;
  box-shadow:0 18px 40px rgba(0,0,0,.48), inset 0 0 0 1px rgba(255,255,255,.04)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  transition:opacity .22s ease, transform .22s ease!important;
}
.rdCoachToast.show{opacity:1!important;transform:translateX(-50%) translateY(0)!important;}
@media(max-height:760px){
  .praxisOneScreen{grid-template-rows:29svh 66px 94px 124px minmax(205px,1fr)!important;gap:7px!important;}
  .praxisOneHero{height:39svh!important;min-height:270px!important;}
  .praxisOneGreeting h1{font-size:clamp(24px,6vw,32px)!important;}
  .praxisOneGreeting p{font-size:12px!important;}
  .praxisAveragePanel.rdOverviewStatic{height:66px!important;min-height:66px!important;}
  .rdOverviewMetric{grid-template-columns:29px auto!important;column-gap:6px!important;}
  .rdOverviewMetric>span{width:28px!important;height:28px!important;font-size:15px!important;}
  .rdOverviewMetric strong{font-size:22px!important;}
  .praxisOneLevelCard{height:94px!important;min-height:94px!important;padding:10px 15px 9px!important;}
  .praxisOneLevelMain strong{font-size:43px!important;}
  .praxisOneLevelMain h2{font-size:17px!important;margin-top:9px!important;}
  .praxisCoachControlCard{height:124px!important;min-height:124px!important;grid-template-rows:17px 34px 54px!important;padding:11px 13px 13px!important;}
  .coachEliteSwitch{height:31px!important;min-height:31px!important;width:104px!important;}
  .coachEliteSwitch .eliteSwitchKnob{width:23px!important;height:23px!important;top:4px!important;left:4px!important;}
  .coachEliteSwitch.active .eliteSwitchKnob{left:77px!important;}
  .praxisCoachActionGrid{height:54px!important;}
  .coachStartBtn,.coachFeedbackBtn{height:54px!important;min-height:54px!important;font-size:12.5px!important;gap:9px!important;}
  .coachStartBtn i,.coachFeedbackBtn i{width:30px!important;height:30px!important;min-width:30px!important;}
  .praxisOneProgress{padding:11px 14px 13px!important;grid-template-rows:17px repeat(4,1fr)!important;}
  .praxisOneProgress .praxisProgressRow{grid-template-columns:38px 1fr 42px!important;gap:10px!important;padding:5px 0!important;}
  .praxisOneProgress .praxisRowIcon{width:32px!important;height:32px!important;}
  .praxisOneProgress .praxisRowText strong{font-size:13px!important;}
  .praxisOneProgress .praxisRowCount b{font-size:13px!important;}
}


/* === RD CLEAN PRAXIS DASHBOARD REBUILD V15 - isolated, no legacy dashboard overrides === */
main.rdCleanPraxisPage{
  --rd-bg:#030303;--rd-card:#070706;--rd-card2:#0d0d0d;--rd-line:rgba(214,174,89,.68);--rd-line2:rgba(214,174,89,.35);--rd-gold:#d7b662;--rd-gold2:#f0d184;--rd-text:#f5f1ea;--rd-muted:rgba(245,241,234,.66);
  min-height:100svh!important;height:auto!important;overflow-y:auto!important;background:#000!important;color:var(--rd-text)!important;padding:0 15px calc(env(safe-area-inset-bottom,0px) + 16px)!important;box-sizing:border-box!important;
}
main.rdCleanPraxisPage *{box-sizing:border-box!important;}
main.rdCleanPraxisPage .topbar.rdGlobalTopbar{position:absolute!important;top:calc(env(safe-area-inset-top,0px) + 18px)!important;left:0!important;right:0!important;z-index:10!important;padding:0 27px!important;height:34px!important;background:transparent!important;border:0!important;}
main.rdCleanPraxisPage .topbar .iconBtn{color:#fff!important;background:transparent!important;border:0!important;box-shadow:none!important;width:38px!important;height:38px!important;}
main.rdCleanPraxisPage .topbar svg{width:24px!important;height:24px!important;}
.rdCleanPraxisDash{width:100%!important;max-width:430px!important;margin:0 auto!important;display:flex!important;flex-direction:column!important;gap:10px!important;min-height:100svh!important;padding-top:0!important;}
.rdCleanHero{position:relative!important;margin-left:-15px!important;margin-right:-15px!important;height:43svh!important;min-height:330px!important;max-height:395px!important;background-image:linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.58) 82%,#000 100%),url('assets/img/dashboard-hood-final.png')!important;background-size:cover!important;background-position:center top!important;background-repeat:no-repeat!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;padding:calc(env(safe-area-inset-top,0px) + 54px) 24px 24px!important;}
.rdCleanGreeting{text-align:center!important;width:100%!important;margin:0 auto!important;text-shadow:0 3px 18px rgba(0,0,0,.68)!important;}
.rdCleanGreeting h1{margin:0!important;font-family:var(--font-display,Impact,'Arial Narrow',sans-serif)!important;font-size:clamp(28px,8.3vw,42px)!important;line-height:.96!important;letter-spacing:.035em!important;color:#fff!important;white-space:nowrap!important;text-transform:uppercase!important;}
.rdCleanGreeting h1 span{color:var(--rd-gold2)!important;}
.rdCleanGreeting p{margin:8px 0 0!important;font-size:clamp(13px,3.4vw,16px)!important;line-height:1.2!important;color:rgba(245,241,234,.78)!important;white-space:nowrap!important;}
.rdCleanMetrics{position:absolute!important;left:18px!important;right:18px!important;bottom:12px!important;display:grid!important;grid-template-columns:1fr 1fr 1fr!important;align-items:center!important;gap:6px!important;transform:translateY(99%)!important;z-index:3!important;padding:0 2px!important;}
.rdCleanMetric{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:8px!important;align-items:center!important;justify-content:center!important;min-width:0!important;}
.rdCleanMetricIcon{width:38px!important;height:38px!important;border-radius:50%!important;display:grid!important;place-items:center!important;border:1.2px solid rgba(214,174,89,.55)!important;color:var(--rd-gold)!important;background:rgba(0,0,0,.32)!important;font-size:20px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)!important;}
.rdCleanMetric small{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:9px!important;line-height:1!important;letter-spacing:.22em!important;color:rgba(245,241,234,.62)!important;text-transform:uppercase!important;white-space:nowrap!important;}
.rdCleanMetric strong{display:block!important;margin-top:3px!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:25px!important;line-height:.9!important;color:#fff!important;letter-spacing:.02em!important;}
.rdCleanMetric b{display:block!important;margin-top:4px!important;font-size:10px!important;line-height:1!important;color:var(--rd-gold2)!important;font-weight:500!important;white-space:nowrap!important;}
.rdCleanLevelCard,.rdCleanCoachCard,.rdCleanProgressCard{position:relative!important;z-index:2!important;width:100%!important;background:linear-gradient(180deg,rgba(13,13,12,.94),rgba(3,3,3,.98))!important;border:1.25px solid var(--rd-line)!important;border-radius:28px!important;box-shadow:0 18px 35px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.025)!important;}
.rdCleanLevelCard{margin-top:38px!important;padding:16px 18px 14px!important;display:grid!important;grid-template-columns:75px 1fr!important;gap:16px!important;min-height:112px!important;}
.rdCleanLevelLeft small{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:11px!important;letter-spacing:.24em!important;color:var(--rd-gold)!important;}
.rdCleanLevelLeft strong{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:60px!important;line-height:.82!important;color:#fff!important;margin-top:4px!important;}
.rdCleanLevelMain{min-width:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
.rdCleanLevelMain h2{font-family:var(--font-display,Impact,sans-serif)!important;font-size:clamp(20px,6.2vw,30px)!important;line-height:1!important;letter-spacing:.28em!important;text-align:center!important;color:#fff!important;margin:0 0 17px!important;white-space:nowrap!important;}
.rdCleanLevelBar{height:8px!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;overflow:hidden!important;}
.rdCleanLevelBar i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#bd8d3d,#f1d37a)!important;}
.rdCleanLevelMeta{margin-top:12px!important;display:flex!important;justify-content:space-between!important;gap:8px!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:10px!important;letter-spacing:.20em!important;color:rgba(240,209,132,.78)!important;white-space:nowrap!important;}
.rdCleanLevelMeta b{font-size:17px!important;color:var(--rd-gold2)!important;letter-spacing:.04em!important;}
.rdCleanCoachCard{padding:18px 15px 16px!important;min-height:178px!important;}
.rdCleanCoachCard header{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:18px!important;}
.rdCleanCoachCard h3{margin:0!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:14px!important;letter-spacing:.23em!important;color:var(--rd-gold)!important;}
.rdCleanCoachCard header b{font-family:var(--font-display,Impact,sans-serif)!important;font-size:14px!important;letter-spacing:.22em!important;color:rgba(240,209,132,.95)!important;}
.rdCleanEliteRow{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:18px!important;}
.rdCleanEliteRow>span{font-family:var(--font-display,Impact,sans-serif)!important;font-size:16px!important;letter-spacing:.25em!important;color:#fff!important;}
.rdCleanEliteSwitch{position:relative!important;width:142px!important;height:44px!important;border-radius:999px!important;padding:0!important;border:1.2px solid rgba(255,255,255,.18)!important;background:linear-gradient(180deg,#2b2c2e,#101011)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 10px 22px rgba(0,0,0,.42)!important;overflow:hidden!important;cursor:pointer!important;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease!important;}
.rdCleanEliteSwitch .rdCleanSwitchText{position:absolute!important;right:19px!important;top:50%!important;transform:translateY(-50%)!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:14px!important;letter-spacing:.22em!important;color:#fff!important;z-index:2!important;}
.rdCleanEliteSwitch .rdCleanSwitchKnob{position:absolute!important;left:5px!important;top:5px!important;width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#cfcfcb!important;color:#19140a!important;font-style:normal!important;font-size:15px!important;box-shadow:0 3px 11px rgba(0,0,0,.45)!important;transition:left .22s ease,background .22s ease,color .22s ease!important;z-index:3!important;}
.rdCleanEliteSwitch.active{background:linear-gradient(135deg,#f3d77e,#ad7a2f)!important;border-color:rgba(255,226,146,.95)!important;box-shadow:0 0 22px rgba(213,174,89,.30),inset 0 1px 0 rgba(255,255,255,.28)!important;}
.rdCleanEliteSwitch.active .rdCleanSwitchText{left:22px!important;right:auto!important;color:#111!important;}
.rdCleanEliteSwitch.active .rdCleanSwitchKnob{left:103px!important;background:#080808!important;color:var(--rd-gold2)!important;}
.rdCleanCoachActions{display:grid!important;grid-template-columns:1.35fr .9fr!important;gap:14px!important;align-items:stretch!important;}
.rdCleanCoachActions button{height:68px!important;border-radius:22px!important;border:1.15px solid rgba(255,255,255,.13)!important;background:linear-gradient(180deg,#2c2d2e,#121212)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 9px 24px rgba(0,0,0,.40)!important;color:#fff!important;display:grid!important;grid-template-columns:44px 1fr!important;align-items:center!important;gap:15px!important;padding:0 17px!important;overflow:hidden!important;}
.rdCleanStartBtn{background:linear-gradient(135deg,#e9ca75,#b08038)!important;border-color:rgba(255,226,145,.85)!important;color:#12100b!important;box-shadow:0 0 26px rgba(216,180,94,.20),inset 0 1px 0 rgba(255,255,255,.25)!important;}
.rdCleanBtnIcon{width:42px!important;height:42px!important;border-radius:15px!important;display:grid!important;place-items:center!important;border:1px solid rgba(214,174,89,.50)!important;color:inherit!important;background:rgba(0,0,0,.12)!important;font-size:24px!important;line-height:1!important;}
.rdCleanCoachActions strong{font-family:var(--font-display,Impact,sans-serif)!important;font-size:clamp(14px,4vw,18px)!important;line-height:1.05!important;letter-spacing:.20em!important;text-align:left!important;color:inherit!important;}
.rdCleanFeedbackBtn strong{font-size:14px!important;letter-spacing:.18em!important;}
.rdCleanProgressCard{padding:18px 16px 17px!important;margin-bottom:10px!important;}
.rdCleanProgressCard h3{margin:0 0 15px!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:14px!important;letter-spacing:.24em!important;color:var(--rd-gold)!important;}
.rdCleanProgressRow{width:100%!important;height:72px!important;border:0!important;background:transparent!important;border-radius:0!important;padding:0 0 0 0!important;margin:0!important;color:#fff!important;display:grid!important;grid-template-columns:56px 1fr 64px!important;gap:14px!important;align-items:center!important;border-bottom:1px solid rgba(255,255,255,.08)!important;text-align:left!important;}
.rdCleanProgressRow:last-child{border-bottom:0!important;}
.rdCleanProgressIcon{width:48px!important;height:48px!important;border-radius:16px!important;display:grid!important;place-items:center!important;border:1px solid rgba(214,174,89,.55)!important;color:var(--rd-gold)!important;background:rgba(0,0,0,.25)!important;}
.rdCleanProgressIcon svg{width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;}
.rdCleanProgressText strong{display:block!important;font-family:var(--font-display,Impact,sans-serif)!important;font-size:clamp(15px,4.6vw,20px)!important;letter-spacing:.13em!important;line-height:1!important;color:#fff!important;margin-bottom:14px!important;}
.rdCleanProgressText i{display:block!important;height:7px!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;overflow:hidden!important;}
.rdCleanProgressText i em{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#c08f3d,#f1d37a)!important;}
.rdCleanProgressRow>b{font-family:var(--font-display,Impact,sans-serif)!important;font-size:clamp(18px,5vw,23px)!important;letter-spacing:.08em!important;color:var(--rd-gold2)!important;text-align:right!important;}
.rdCleanProgressRow.isStatic{cursor:default!important;}
.rdCoachToast{position:fixed!important;left:50%!important;bottom:calc(env(safe-area-inset-bottom,0px) + 28px)!important;transform:translate(-50%,18px)!important;z-index:9999!important;opacity:0!important;transition:.22s ease!important;padding:12px 22px!important;min-width:154px!important;text-align:center!important;border:1px solid rgba(214,174,89,.42)!important;border-radius:999px!important;background:rgba(15,14,13,.86)!important;backdrop-filter:blur(18px)!important;color:#fff!important;font-size:16px!important;box-shadow:0 18px 38px rgba(0,0,0,.48)!important;}
.rdCoachToast.show{opacity:1!important;transform:translate(-50%,0)!important;}
@media (max-height:760px){
  .rdCleanHero{height:39svh!important;min-height:280px!important;max-height:330px!important;padding-bottom:20px!important;}
  .rdCleanMetrics{bottom:8px!important;}
  .rdCleanLevelCard{margin-top:36px!important;min-height:100px!important;padding:13px 16px 12px!important;}
  .rdCleanLevelLeft strong{font-size:52px!important;}.rdCleanLevelMain h2{font-size:23px!important;margin-bottom:13px!important;}
  .rdCleanCoachCard{min-height:160px!important;padding:15px 14px!important;}.rdCleanCoachCard header{margin-bottom:14px!important;}.rdCleanEliteRow{margin-bottom:14px!important;}.rdCleanCoachActions button{height:60px!important;border-radius:20px!important;}
  .rdCleanProgressRow{height:62px!important;}.rdCleanProgressIcon{width:42px!important;height:42px!important;}.rdCleanProgressText strong{margin-bottom:10px!important;}
}
@media (min-width:520px){.rdCleanPraxisDash{max-width:430px!important;}.rdCleanHero{margin-left:0!important;margin-right:0!important;border-radius:0 0 22px 22px!important;}}


/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD CLEAN MASTER v16 ===== */
.rdMasterPraxisPage{
  background:#020202!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:100svh!important;
  height:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdMasterPraxisPage *{box-sizing:border-box!important;}
.rdMasterPraxisDash{
  --mp-gold:#d6b56a;
  --mp-gold2:#f0d27b;
  --mp-line:rgba(214,181,106,.70);
  --mp-card:rgba(5,5,5,.82);
  --mp-soft:rgba(255,255,255,.10);
  width:100%!important;
  max-width:430px!important;
  height:auto!important;
  min-height:100svh!important;
  margin:0 auto!important;
  padding:0 16px max(32px,env(safe-area-inset-bottom,16px))!important;
  display:grid!important;
  grid-template-rows: minmax(284px,36.5svh) minmax(86px,10.5svh) minmax(154px,18svh) 1fr!important;
  gap:10px!important;
  overflow:hidden!important;
  position:relative!important;
  background:#020202!important;
  color:#f7f3eb!important;
}
.rdMasterHero{
  position:relative!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  min-height:0!important;
  background-image:url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  overflow:hidden!important;
  border-radius:0!important;
}
.rdMasterHeroShade{
  position:absolute!important; inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.06) 42%,rgba(0,0,0,.30) 70%,rgba(0,0,0,.84) 100%)!important;
  pointer-events:none!important;
}
.rdMasterGreeting{
  position:absolute!important;
  left:20px!important; right:20px!important; bottom:92px!important;
  text-align:center!important;
  z-index:2!important;
}
.rdMasterGreeting h1{
  margin:0!important;
  font-family:var(--font-d,'Bebas Neue',sans-serif)!important;
  font-size:clamp(26px,7.4vw,34px)!important;
  line-height:.88!important;
  letter-spacing:.035em!important;
  font-weight:400!important;
  color:#fff!important;
  white-space:nowrap!important;
  text-shadow:0 3px 18px rgba(0,0,0,.85)!important;
}
.rdMasterGreeting h1 span{color:var(--mp-gold2)!important;}
.rdMasterGreeting p{
  margin:7px 0 0!important;
  font-size:clamp(13px,3.1vw,15px)!important;
  line-height:1.1!important;
  color:rgba(245,240,230,.76)!important;
  white-space:nowrap!important;
  text-shadow:0 3px 14px rgba(0,0,0,.9)!important;
}
.rdMasterMetrics{
  position:absolute!important;
  left:16px!important; right:16px!important; bottom:18px!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:8px!important;
  align-items:center!important;
}
.rdMasterMetric{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:38px 1fr!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:center!important;
}
.rdMasterMetricIcon{
  width:36px!important; height:36px!important; border-radius:50%!important;
  display:grid!important; place-items:center!important;
  border:1.2px solid rgba(214,181,106,.62)!important;
  color:var(--mp-gold2)!important;
  font-size:19px!important;
  line-height:1!important;
  background:rgba(0,0,0,.30)!important;
  box-shadow:0 0 16px rgba(214,181,106,.10)!important;
}
.rdMasterMetric small{
  display:block!important;
  font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  color:rgba(235,226,207,.60)!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.rdMasterMetric strong{
  display:block!important;
  margin-top:2px!important;
  font-family:var(--font-d,'Bebas Neue',sans-serif)!important;
  font-size:clamp(26px,7vw,34px)!important;
  line-height:.86!important;
  font-weight:400!important;
  color:#fff!important;
  letter-spacing:.02em!important;
}
.rdMasterMetric b{
  display:block!important;
  margin-top:4px!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:500!important;
  color:var(--mp-gold2)!important;
  white-space:nowrap!important;
}
.rdMasterLevelCard,.rdMasterCoachCard,.rdMasterProgressCard{
  position:relative!important;
  width:100%!important;
  z-index:3!important;
  border:1.2px solid var(--mp-line)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(11,11,11,.92),rgba(1,1,1,.96))!important;
  box-shadow:inset 0 0 0 1px rgba(255,226,160,.04),0 13px 28px rgba(0,0,0,.36)!important;
  overflow:hidden!important;
}
.rdMasterLevelCard{
  display:grid!important;
  grid-template-columns:74px 1fr!important;
  gap:14px!important;
  align-items:center!important;
  padding:13px 17px 12px!important;
}
.rdMasterLevelNo small{
  display:block!important;
  font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;
  font-weight:700!important;
  font-size:11px!important;
  letter-spacing:.20em!important;
  color:var(--mp-gold)!important;
  line-height:1!important;
}
.rdMasterLevelNo strong{
  display:block!important;
  margin-top:3px!important;
  font-family:var(--font-d,'Bebas Neue',sans-serif)!important;
  font-size:60px!important;
  font-weight:400!important;
  line-height:.78!important;
  color:#fff!important;
}
.rdMasterLevelBody{min-width:0!important;}
.rdMasterLevelBody h2{
  margin:0 0 12px!important;
  text-align:center!important;
  font-family:var(--font-d,'Bebas Neue',sans-serif)!important;
  font-size:clamp(20px,5.6vw,27px)!important;
  font-weight:400!important;
  line-height:.92!important;
  letter-spacing:.22em!important;
  color:#fff!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
.rdMasterBar{height:8px!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;overflow:hidden!important;}
.rdMasterBar i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#c18f3f,#f1d37b)!important;}
.rdMasterLevelMeta{margin-top:9px!important;display:flex!important;justify-content:space-between!important;gap:10px!important;font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;font-size:10.5px!important;line-height:1!important;letter-spacing:.18em!important;color:rgba(240,210,123,.75)!important;white-space:nowrap!important;}
.rdMasterLevelMeta b{font-family:var(--font-d,'Bebas Neue',sans-serif)!important;font-size:18px!important;color:var(--mp-gold2)!important;letter-spacing:.04em!important;}
.rdMasterCoachCard{
  padding:14px 16px 16px!important;
  display:grid!important;
  grid-template-rows:auto auto 1fr!important;
  row-gap:11px!important;
}
.rdMasterCoachCard header{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:18px!important;}
.rdMasterCoachCard h3,.rdMasterProgressCard h3{
  margin:0!important;
  font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;
  font-weight:700!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.22em!important;
  color:var(--mp-gold)!important;
  text-transform:uppercase!important;
}
.rdMasterCoachCard header b{font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;font-size:13px!important;line-height:1!important;letter-spacing:.20em!important;color:var(--mp-gold2)!important;}
.rdMasterEliteRow{display:grid!important;grid-template-columns:1fr 128px!important;align-items:center!important;gap:12px!important;}
.rdMasterEliteRow>span{font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;font-size:18px!important;letter-spacing:.23em!important;line-height:1!important;color:#fff!important;text-transform:uppercase!important;}
.rdMasterEliteSwitch{position:relative!important;width:128px!important;height:42px!important;border-radius:999px!important;border:1.2px solid rgba(255,255,255,.14)!important;background:linear-gradient(180deg,#2a2b2d,#101011)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 9px 21px rgba(0,0,0,.40)!important;padding:0!important;overflow:hidden!important;cursor:pointer!important;transition:background .22s ease,border-color .22s ease,box-shadow .22s ease!important;}
.rdMasterEliteSwitch .rdMasterSwitchLabel{position:absolute!important;right:20px!important;top:50%!important;transform:translateY(-50%)!important;font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;font-size:15px!important;letter-spacing:.18em!important;color:#fff!important;z-index:2!important;line-height:1!important;}
.rdMasterEliteSwitch .rdMasterSwitchKnob{position:absolute!important;left:5px!important;top:5px!important;width:32px!important;height:32px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#d4d4cf!important;color:#16110a!important;font-size:15px!important;line-height:1!important;box-shadow:0 3px 10px rgba(0,0,0,.42)!important;transition:left .22s ease,background .22s ease,color .22s ease!important;z-index:3!important;}
.rdMasterEliteSwitch.active{border-color:rgba(255,228,153,.90)!important;background:linear-gradient(135deg,#f2d77c,#b88737)!important;box-shadow:0 0 20px rgba(218,180,92,.24),inset 0 1px 0 rgba(255,255,255,.24)!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchLabel{left:21px!important;right:auto!important;color:#101010!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:90px!important;background:#060606!important;color:var(--mp-gold2)!important;}
.rdMasterCoachActions{display:grid!important;grid-template-columns:1.45fr .92fr!important;gap:12px!important;min-height:0!important;align-items:stretch!important;}
.rdMasterCoachActions button{height:58px!important;min-height:58px!important;border-radius:19px!important;border:1.2px solid rgba(255,255,255,.12)!important;background:linear-gradient(180deg,#2a2b2c,#101010)!important;color:#fff!important;display:grid!important;grid-template-columns:42px 1fr!important;align-items:center!important;gap:13px!important;padding:0 15px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 10px 24px rgba(0,0,0,.40)!important;text-align:left!important;}
.rdMasterStartBtn{background:linear-gradient(135deg,#e9cc78,#b07e34)!important;color:#151108!important;border-color:rgba(255,229,150,.88)!important;box-shadow:0 0 24px rgba(216,181,95,.20),inset 0 1px 0 rgba(255,255,255,.25)!important;}
.rdMasterActionIcon{width:38px!important;height:38px!important;border-radius:13px!important;display:grid!important;place-items:center!important;border:1px solid rgba(214,181,106,.48)!important;background:rgba(0,0,0,.12)!important;color:inherit!important;font-size:23px!important;line-height:1!important;}
.rdMasterCoachActions strong{font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;font-size:clamp(14px,4.1vw,17px)!important;letter-spacing:.20em!important;line-height:1.04!important;color:inherit!important;text-transform:uppercase!important;}
.rdMasterFeedbackBtn strong{font-size:14px!important;letter-spacing:.17em!important;}
.rdMasterProgressCard{padding:14px 16px 15px!important;display:grid!important;grid-template-rows:17px repeat(4,1fr)!important;gap:0!important;min-height:0!important;}
.rdMasterProgressCard h3{margin-bottom:8px!important;}
.rdMasterProgressRow{width:100%!important;height:auto!important;min-height:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#fff!important;display:grid!important;grid-template-columns:50px 1fr 58px!important;gap:13px!important;align-items:center!important;padding:0!important;margin:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;text-align:left!important;overflow:hidden!important;}
.rdMasterProgressRow:last-child{border-bottom:0!important;}
.rdMasterProgressIcon{width:42px!important;height:42px!important;border-radius:14px!important;display:grid!important;place-items:center!important;border:1.1px solid rgba(214,181,106,.55)!important;background:rgba(0,0,0,.22)!important;color:var(--mp-gold)!important;}
.rdMasterProgressIcon svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;}
.rdMasterProgressMain{min-width:0!important;}
.rdMasterProgressMain strong{display:block!important;margin:0 0 10px!important;font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;font-size:clamp(15px,4.4vw,19px)!important;letter-spacing:.11em!important;line-height:1!important;color:#fff!important;text-transform:uppercase!important;white-space:nowrap!important;}
.rdMasterProgressMain i{display:block!important;height:7px!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;overflow:hidden!important;}
.rdMasterProgressMain i em{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#c08f3d,#f1d37a)!important;}
.rdMasterProgressCount{font-family:var(--font-d,'Bebas Neue',sans-serif)!important;font-size:clamp(23px,6vw,30px)!important;line-height:1!important;letter-spacing:.03em!important;color:var(--mp-gold2)!important;text-align:right!important;}
.rdMasterProgressRow.isStatic{cursor:default!important;}
.rdCoachToast{position:fixed!important;left:50%!important;bottom:calc(env(safe-area-inset-bottom,0px) + 30px)!important;transform:translate(-50%,18px)!important;z-index:9999!important;opacity:0!important;transition:.22s ease!important;padding:11px 21px!important;min-width:150px!important;text-align:center!important;border:1px solid rgba(214,181,106,.42)!important;border-radius:999px!important;background:rgba(15,14,13,.88)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;color:#fff!important;font-size:16px!important;box-shadow:0 18px 38px rgba(0,0,0,.48)!important;}
.rdCoachToast.show{opacity:1!important;transform:translate(-50%,0)!important;}
@media(max-height:760px){
 .rdMasterPraxisDash{grid-template-rows:minmax(262px,35svh) minmax(78px,10svh) minmax(144px,17.5svh) 1fr!important;gap:8px!important;padding-left:15px!important;padding-right:15px!important;}
 .rdMasterHero{width:calc(100% + 30px)!important;margin-left:-15px!important;margin-right:-15px!important;}
 .rdMasterGreeting{bottom:86px!important}.rdMasterGreeting h1{font-size:28px!important}.rdMasterGreeting p{font-size:13px!important}
 .rdMasterMetric{grid-template-columns:32px 1fr!important;gap:6px!important}.rdMasterMetricIcon{width:31px!important;height:31px!important;font-size:16px!important}.rdMasterMetric strong{font-size:27px!important}.rdMasterMetric small{font-size:8px!important}.rdMasterMetric b{font-size:10px!important}
 .rdMasterLevelCard{padding:10px 15px!important;grid-template-columns:64px 1fr!important}.rdMasterLevelNo strong{font-size:52px!important}.rdMasterLevelBody h2{font-size:21px!important;margin-bottom:9px!important}.rdMasterLevelMeta{font-size:9px!important;margin-top:7px!important}.rdMasterLevelMeta b{font-size:16px!important}
 .rdMasterCoachCard{padding:12px 14px!important;row-gap:9px!important}.rdMasterCoachActions button{height:52px!important;min-height:52px!important}.rdMasterActionIcon{width:34px!important;height:34px!important}.rdMasterCoachActions strong{font-size:14px!important}.rdMasterProgressRow{grid-template-columns:46px 1fr 52px!important;gap:11px!important}.rdMasterProgressIcon{width:38px!important;height:38px!important}.rdMasterProgressMain strong{margin-bottom:7px!important;font-size:15px!important}.rdMasterProgressCount{font-size:23px!important}
}
@media(min-width:520px){.rdMasterPraxisDash{max-width:430px!important;}}

/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD MASTER FINAL v17 =====
   Clean corrective layer: no new image layers, no legacy scaling, fixed proportions. */
.rdMasterPraxisPage{
  background:#020202!important;
  overflow:auto!important;
  min-height:100svh!important;
  height:auto!important;
}
.rdMasterPraxisDash{
  width:100%!important;
  max-width:430px!important;
  min-height:100svh!important;
  height:auto!important;
  margin:0 auto!important;
  padding:0 16px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  overflow:hidden!important;
  background:#020202!important;
}
.rdMasterHero{
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  height:clamp(330px,43svh,390px)!important;
  min-height:330px!important;
  max-height:390px!important;
  background-image:url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
}
.rdMasterHeroShade{background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.10) 44%,rgba(0,0,0,.34) 70%,rgba(0,0,0,.88) 100%)!important;}
.rdMasterGreeting{left:14px!important;right:14px!important;bottom:118px!important;text-align:center!important;}
.rdMasterGreeting h1{font-size:clamp(27px,7vw,32px)!important;letter-spacing:.035em!important;line-height:.9!important;white-space:nowrap!important;}
.rdMasterGreeting p{margin-top:8px!important;font-size:clamp(13px,3.2vw,15px)!important;white-space:nowrap!important;color:rgba(245,240,230,.80)!important;}
.rdMasterMetrics{left:15px!important;right:15px!important;bottom:24px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:center!important;}
.rdMasterMetric{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-width:0!important;}
.rdMasterMetricIcon{width:40px!important;height:40px!important;font-size:19px!important;flex:0 0 40px!important;}
.rdMasterMetric small{font-size:9px!important;letter-spacing:.16em!important;}
.rdMasterMetric strong{font-size:clamp(27px,6.8vw,34px)!important;line-height:.86!important;}
.rdMasterMetric b{font-size:11px!important;margin-top:4px!important;}
.rdMasterLevelCard,.rdMasterCoachCard,.rdMasterProgressCard{border-radius:24px!important;width:100%!important;max-width:100%!important;overflow:hidden!important;}
.rdMasterLevelCard{min-height:92px!important;display:grid!important;grid-template-columns:70px minmax(0,1fr)!important;gap:12px!important;padding:12px 17px 13px!important;align-items:center!important;}
.rdMasterLevelNo strong{font-size:58px!important;line-height:.80!important;}
.rdMasterLevelNo small{font-size:11px!important;letter-spacing:.20em!important;}
.rdMasterLevelBody h2{font-size:clamp(20px,5.05vw,24px)!important;letter-spacing:.17em!important;line-height:.94!important;margin:0 0 12px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.rdMasterBar{height:7px!important;}
.rdMasterLevelMeta{font-size:9.5px!important;letter-spacing:.15em!important;margin-top:8px!important;align-items:center!important;}
.rdMasterLevelMeta b{font-size:16px!important;}
.rdMasterCoachCard{min-height:166px!important;padding:14px 15px 15px!important;display:grid!important;grid-template-rows:auto 44px 62px!important;row-gap:12px!important;}
.rdMasterCoachCard header h3,.rdMasterProgressCard h3{font-size:13px!important;letter-spacing:.20em!important;}
.rdMasterCoachCard header b{font-size:13px!important;letter-spacing:.18em!important;}
.rdMasterEliteRow{grid-template-columns:1fr 120px!important;gap:10px!important;align-items:center!important;}
.rdMasterEliteRow>span{font-size:18px!important;letter-spacing:.20em!important;}
.rdMasterEliteSwitch{width:120px!important;height:40px!important;border-radius:999px!important;}
.rdMasterEliteSwitch .rdMasterSwitchKnob{left:5px!important;top:5px!important;width:30px!important;height:30px!important;font-size:14px!important;}
.rdMasterEliteSwitch .rdMasterSwitchLabel{right:18px!important;font-size:14px!important;letter-spacing:.16em!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchLabel{left:19px!important;right:auto!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:85px!important;}
.rdMasterCoachActions{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;gap:12px!important;align-items:stretch!important;min-height:0!important;}
.rdMasterCoachActions button{height:62px!important;min-height:62px!important;border-radius:22px!important;display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:12px!important;padding:0 14px!important;align-items:center!important;overflow:hidden!important;}
.rdMasterStartBtn{background:linear-gradient(135deg,#efcf76,#b68035)!important;color:#111!important;border-color:rgba(255,229,150,.92)!important;}
.rdMasterFeedbackBtn{background:linear-gradient(180deg,#2b2c2d,#101010)!important;}
.rdMasterActionIcon{width:38px!important;height:38px!important;border-radius:14px!important;font-size:21px!important;}
.rdMasterCoachActions strong{font-size:clamp(15px,4.35vw,18px)!important;letter-spacing:.14em!important;line-height:1.02!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;}
.rdMasterFeedbackBtn strong{font-size:clamp(13px,3.5vw,15px)!important;letter-spacing:.11em!important;line-height:1.03!important;}
.rdMasterProgressCard{padding:14px 16px 16px!important;min-height:330px!important;display:flex!important;flex-direction:column!important;gap:0!important;}
.rdMasterProgressCard h3{height:18px!important;margin:0 0 10px!important;flex:0 0 auto!important;}
.rdMasterProgressRow{height:72px!important;min-height:72px!important;display:grid!important;grid-template-columns:48px minmax(0,1fr) 54px!important;gap:12px!important;align-items:center!important;flex:0 0 72px!important;border-bottom:1px solid rgba(255,255,255,.075)!important;}
.rdMasterProgressIcon{width:40px!important;height:40px!important;border-radius:14px!important;}
.rdMasterProgressIcon svg{width:22px!important;height:22px!important;}
.rdMasterProgressMain strong{font-size:clamp(16px,4.2vw,18px)!important;letter-spacing:.105em!important;margin:0 0 9px!important;}
.rdMasterProgressMain i{height:7px!important;}
.rdMasterProgressCount{font-size:clamp(22px,5.4vw,27px)!important;}
@media(max-width:380px){
 .rdMasterPraxisDash{padding-left:14px!important;padding-right:14px!important;gap:8px!important;}
 .rdMasterHero{width:calc(100% + 28px)!important;margin-left:-14px!important;margin-right:-14px!important;height:326px!important;min-height:326px!important;}
 .rdMasterGreeting h1{font-size:26px!important;}
 .rdMasterGreeting p{font-size:12.5px!important;}
 .rdMasterMetricIcon{width:35px!important;height:35px!important;flex-basis:35px!important;}
 .rdMasterMetric{gap:6px!important;}
 .rdMasterMetric strong{font-size:27px!important;}
 .rdMasterLevelBody h2{font-size:20px!important;letter-spacing:.14em!important;}
 .rdMasterCoachActions strong{font-size:15px!important;letter-spacing:.12em!important;}
 .rdMasterFeedbackBtn strong{font-size:12.5px!important;letter-spacing:.08em!important;}
 .rdMasterCoachActions{gap:9px!important;}
 .rdMasterCoachActions button{padding:0 10px!important;gap:9px!important;}
}

/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD FIT-PASS v18 =====
   Goal: same visual direction, smaller proportions, one-screen fit, no action icons. */
.rdMasterPraxisPage{
  background:#020202!important;
  min-height:100svh!important;
  height:100svh!important;
  overflow:hidden!important;
}
.rdMasterPraxisDash{
  width:100%!important;
  max-width:430px!important;
  height:100svh!important;
  min-height:100svh!important;
  margin:0 auto!important;
  padding:0 16px max(10px,env(safe-area-inset-bottom,0px))!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  overflow:hidden!important;
  background:#020202!important;
  box-sizing:border-box!important;
}
.rdMasterHero{
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  flex:0 0 clamp(292px,38svh,326px)!important;
  height:clamp(292px,38svh,326px)!important;
  min-height:0!important;
  max-height:none!important;
  background-image:url('assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
}
.rdMasterGreeting{left:12px!important;right:12px!important;bottom:104px!important;text-align:center!important;}
.rdMasterGreeting h1{font-size:clamp(28px,7.15vw,33px)!important;letter-spacing:.035em!important;line-height:.88!important;white-space:nowrap!important;}
.rdMasterGreeting p{margin-top:7px!important;font-size:clamp(13px,3.2vw,15px)!important;line-height:1.08!important;white-space:nowrap!important;color:rgba(245,240,230,.82)!important;}
.rdMasterMetrics{left:16px!important;right:16px!important;bottom:18px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:center!important;}
.rdMasterMetric{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:0!important;}
.rdMasterMetricIcon{width:36px!important;height:36px!important;flex:0 0 36px!important;font-size:18px!important;}
.rdMasterMetric small{font-size:8.5px!important;letter-spacing:.16em!important;}
.rdMasterMetric strong{font-size:clamp(27px,6.8vw,32px)!important;line-height:.86!important;}
.rdMasterMetric b{font-size:10.5px!important;margin-top:3px!important;}
.rdMasterLevelCard{
  flex:0 0 80px!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:11px!important;
  padding:10px 15px!important;
  align-items:center!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.rdMasterLevelNo small{font-size:10px!important;letter-spacing:.18em!important;}
.rdMasterLevelNo strong{font-size:48px!important;line-height:.78!important;margin-top:2px!important;}
.rdMasterLevelBody h2{font-size:clamp(18px,4.5vw,21px)!important;letter-spacing:.16em!important;line-height:.94!important;margin:0 0 9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.rdMasterBar{height:6px!important;}
.rdMasterLevelMeta{font-size:8.5px!important;letter-spacing:.14em!important;margin-top:7px!important;}
.rdMasterLevelMeta b{font-size:14px!important;}
.rdMasterCoachCard{
  flex:0 0 128px!important;
  min-height:0!important;
  padding:11px 14px 12px!important;
  display:grid!important;
  grid-template-rows:auto 34px 48px!important;
  row-gap:9px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.rdMasterCoachCard header h3,.rdMasterProgressCard h3{font-size:12px!important;letter-spacing:.19em!important;}
.rdMasterCoachCard header b{font-size:12px!important;letter-spacing:.17em!important;}
.rdMasterEliteRow{display:grid!important;grid-template-columns:1fr 104px!important;gap:10px!important;align-items:center!important;}
.rdMasterEliteRow>span{font-size:15px!important;letter-spacing:.20em!important;line-height:1!important;}
.rdMasterEliteSwitch{width:104px!important;height:34px!important;border-radius:999px!important;}
.rdMasterEliteSwitch .rdMasterSwitchKnob{left:4px!important;top:4px!important;width:26px!important;height:26px!important;font-size:13px!important;}
.rdMasterEliteSwitch .rdMasterSwitchLabel{right:15px!important;font-size:12px!important;letter-spacing:.14em!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchLabel{left:15px!important;right:auto!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:74px!important;background:#060606!important;color:var(--mp-gold2)!important;}
.rdMasterCoachActions{display:grid!important;grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)!important;gap:10px!important;align-items:stretch!important;min-height:0!important;}
.rdMasterCoachActions button{height:48px!important;min-height:48px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0 12px!important;overflow:hidden!important;text-align:center!important;}
.rdMasterActionIcon{display:none!important;}
.rdMasterStartBtn{background:linear-gradient(135deg,#efcf76,#b68035)!important;color:#111!important;border-color:rgba(255,229,150,.92)!important;box-shadow:0 0 18px rgba(216,181,95,.18),inset 0 1px 0 rgba(255,255,255,.22)!important;}
.rdMasterFeedbackBtn{background:linear-gradient(180deg,#28292b,#101010)!important;color:#fff!important;border-color:rgba(255,255,255,.13)!important;}
.rdMasterCoachActions strong{display:block!important;font-size:clamp(13px,3.35vw,15px)!important;letter-spacing:.115em!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:inherit!important;}
.rdMasterFeedbackBtn strong{font-size:clamp(11px,2.85vw,13px)!important;letter-spacing:.075em!important;white-space:nowrap!important;}
.rdMasterProgressCard{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:12px 15px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.rdMasterProgressCard h3{height:16px!important;margin:0 0 8px!important;flex:0 0 auto!important;}
.rdMasterProgressRow{height:calc((100% - 24px)/4)!important;min-height:0!important;flex:1 1 0!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) 46px!important;gap:10px!important;align-items:center!important;padding:0!important;border-bottom:1px solid rgba(255,255,255,.075)!important;}
.rdMasterProgressIcon{width:34px!important;height:34px!important;border-radius:12px!important;}
.rdMasterProgressIcon svg{width:19px!important;height:19px!important;}
.rdMasterProgressMain strong{font-size:clamp(13px,3.45vw,15px)!important;letter-spacing:.105em!important;margin:0 0 6px!important;line-height:1!important;white-space:nowrap!important;}
.rdMasterProgressMain i{height:5px!important;}
.rdMasterProgressCount{font-size:clamp(19px,5vw,23px)!important;line-height:1!important;}
@media(max-width:380px){
  .rdMasterPraxisDash{padding-left:14px!important;padding-right:14px!important;gap:7px!important;}
  .rdMasterHero{width:calc(100% + 28px)!important;margin-left:-14px!important;margin-right:-14px!important;flex-basis:300px!important;height:300px!important;}
  .rdMasterGreeting{bottom:100px!important}.rdMasterGreeting h1{font-size:26px!important}.rdMasterGreeting p{font-size:12.5px!important;}
  .rdMasterMetrics{left:12px!important;right:12px!important;gap:5px!important}.rdMasterMetric{gap:5px!important}.rdMasterMetricIcon{width:32px!important;height:32px!important;flex-basis:32px!important}.rdMasterMetric strong{font-size:27px!important}.rdMasterMetric small{font-size:7.5px!important}.rdMasterMetric b{font-size:9px!important}
  .rdMasterLevelCard{flex-basis:76px!important;grid-template-columns:54px 1fr!important;padding:9px 13px!important}.rdMasterLevelNo strong{font-size:45px!important}.rdMasterLevelBody h2{font-size:18px!important;letter-spacing:.13em!important}.rdMasterLevelMeta{font-size:7.8px!important}
  .rdMasterCoachCard{flex-basis:122px!important;padding:10px 12px!important;grid-template-rows:auto 32px 46px!important;row-gap:8px!important}.rdMasterEliteRow>span{font-size:14px!important}.rdMasterEliteSwitch{width:98px!important;height:32px!important}.rdMasterEliteSwitch .rdMasterSwitchKnob{width:24px!important;height:24px!important}.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:70px!important}.rdMasterCoachActions{gap:8px!important}.rdMasterCoachActions button{height:46px!important}.rdMasterCoachActions strong{font-size:12px!important;letter-spacing:.09em!important}.rdMasterFeedbackBtn strong{font-size:10.5px!important;letter-spacing:.045em!important}
  .rdMasterProgressCard{padding:10px 13px!important}.rdMasterProgressRow{grid-template-columns:36px minmax(0,1fr) 42px!important;gap:8px!important}.rdMasterProgressIcon{width:31px!important;height:31px!important}.rdMasterProgressMain strong{font-size:12px!important}.rdMasterProgressCount{font-size:19px!important}
}

/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD FINAL FIT v19 =====
   Fixes: no squeezed browser layout, cleaner coach spacing, true centered switch, gold-outline start button. */
.rdMasterPraxisPage{
  background:#020202!important;
  min-height:100svh!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
.rdMasterPraxisDash{
  max-width:430px!important;
  min-height:100svh!important;
  height:auto!important;
  padding:0 16px max(14px,env(safe-area-inset-bottom,0px))!important;
  gap:9px!important;
  overflow:visible!important;
}
.rdMasterHero{
  flex:0 0 clamp(306px,38svh,332px)!important;
  height:clamp(306px,38svh,332px)!important;
  min-height:306px!important;
  max-height:332px!important;
  background-size:cover!important;
  background-position:center top!important;
}
.rdMasterGreeting{bottom:108px!important;text-align:center!important;}
.rdMasterGreeting h1{font-size:clamp(29px,7.1vw,34px)!important;line-height:.9!important;letter-spacing:.035em!important;white-space:nowrap!important;}
.rdMasterGreeting p{font-size:clamp(13px,3.25vw,15px)!important;line-height:1.12!important;margin-top:8px!important;white-space:nowrap!important;}
.rdMasterMetrics{bottom:19px!important;left:16px!important;right:16px!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;}
.rdMasterMetric{justify-content:center!important;gap:8px!important;}
.rdMasterMetricIcon{width:37px!important;height:37px!important;flex:0 0 37px!important;}
.rdMasterMetric strong{font-size:clamp(28px,6.9vw,33px)!important;}
.rdMasterMetric small{font-size:8.5px!important;letter-spacing:.16em!important;}
.rdMasterMetric b{font-size:10.5px!important;}
.rdMasterLevelCard{
  flex:0 0 78px!important;
  min-height:78px!important;
  height:78px!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  padding:9px 15px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.rdMasterLevelNo strong{font-size:46px!important;line-height:.78!important;}
.rdMasterLevelNo small{font-size:9.5px!important;letter-spacing:.18em!important;}
.rdMasterLevelBody h2{font-size:clamp(18px,4.2vw,20px)!important;letter-spacing:.15em!important;margin-bottom:8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.rdMasterBar{height:6px!important;}
.rdMasterLevelMeta{font-size:8.4px!important;letter-spacing:.13em!important;margin-top:7px!important;}
.rdMasterLevelMeta b{font-size:13px!important;}
.rdMasterCoachCard{
  flex:0 0 142px!important;
  min-height:142px!important;
  height:142px!important;
  padding:13px 15px 15px!important;
  grid-template-rows:17px 36px 56px!important;
  row-gap:9px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.rdMasterCoachCard header h3,.rdMasterProgressCard h3{font-size:12.5px!important;letter-spacing:.18em!important;line-height:1!important;}
.rdMasterCoachCard header b{font-size:12.5px!important;letter-spacing:.16em!important;line-height:1!important;}
.rdMasterEliteRow{grid-template-columns:1fr 94px!important;gap:12px!important;align-items:center!important;}
.rdMasterEliteRow>span{font-size:15px!important;letter-spacing:.19em!important;line-height:1!important;}
.rdMasterEliteSwitch{
  position:relative!important;
  width:94px!important;
  height:31px!important;
  border-radius:999px!important;
  padding:0!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#2c2d2f,#111)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:inset 0 1px 2px rgba(255,255,255,.12), 0 5px 14px rgba(0,0,0,.35)!important;
}
.rdMasterEliteSwitch .rdMasterSwitchKnob{
  position:absolute!important;
  left:4px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:25px!important;
  height:25px!important;
  border-radius:50%!important;
  background:#d9dad5!important;
  color:#111!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:15px!important;
  line-height:1!important;
  transition:left .22s ease, background .22s ease, color .22s ease!important;
  box-shadow:0 1px 4px rgba(0,0,0,.35)!important;
}
.rdMasterEliteSwitch .rdMasterSwitchLabel{
  position:absolute!important;
  right:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  font-family:var(--font-c)!important;
  font-size:12px!important;
  letter-spacing:.16em!important;
  font-weight:800!important;
  color:#fff!important;
  line-height:1!important;
}
.rdMasterEliteSwitch.active{
  background:linear-gradient(135deg,#f3d77f,#b98637)!important;
  border-color:rgba(255,235,158,.9)!important;
  box-shadow:0 0 18px rgba(224,185,87,.24), inset 0 1px 0 rgba(255,255,255,.32)!important;
}
.rdMasterEliteSwitch.active .rdMasterSwitchLabel{left:16px!important;right:auto!important;color:#111!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:65px!important;background:#070707!important;color:#e6c673!important;font-size:16px!important;}
.rdMasterCoachActions{
  grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr)!important;
  gap:12px!important;
  height:56px!important;
  min-height:56px!important;
}
.rdMasterCoachActions button{
  height:56px!important;
  min-height:56px!important;
  border-radius:19px!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.rdMasterActionIcon{display:none!important;}
.rdMasterStartBtn{
  background:linear-gradient(180deg,#242527,#0e0e0f)!important;
  color:#f6f1e8!important;
  border:1.5px solid rgba(226,190,103,.74)!important;
  box-shadow:0 0 18px rgba(213,178,88,.14), inset 0 1px 0 rgba(255,255,255,.11)!important;
}
.rdMasterStartBtn strong{color:#f6f1e8!important;}
.rdMasterFeedbackBtn{
  background:linear-gradient(180deg,#252629,#0f0f10)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
}
.rdMasterCoachActions strong{
  font-size:clamp(12.5px,3.15vw,14.5px)!important;
  letter-spacing:.11em!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
.rdMasterFeedbackBtn strong{font-size:clamp(10.5px,2.65vw,12px)!important;letter-spacing:.07em!important;}
.rdMasterProgressCard{
  flex:0 0 268px!important;
  min-height:268px!important;
  height:268px!important;
  padding:12px 15px 13px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.rdMasterProgressCard h3{height:16px!important;margin:0 0 8px!important;}
.rdMasterProgressRow{height:55px!important;min-height:55px!important;grid-template-columns:36px minmax(0,1fr) 44px!important;gap:10px!important;padding:0!important;}
.rdMasterProgressIcon{width:31px!important;height:31px!important;border-radius:11px!important;}
.rdMasterProgressIcon svg{width:18px!important;height:18px!important;}
.rdMasterProgressMain strong{font-size:clamp(12px,3vw,13.5px)!important;letter-spacing:.105em!important;margin-bottom:6px!important;}
.rdMasterProgressMain i{height:5px!important;}
.rdMasterProgressCount{font-size:clamp(17px,4.6vw,21px)!important;}
@media(max-height:760px){
  .rdMasterPraxisDash{gap:7px!important;}
  .rdMasterHero{flex-basis:284px!important;height:284px!important;min-height:284px!important;}
  .rdMasterGreeting{bottom:100px!important;}
  .rdMasterGreeting h1{font-size:27px!important;}
  .rdMasterGreeting p{font-size:12.5px!important;margin-top:6px!important;}
  .rdMasterMetricIcon{width:33px!important;height:33px!important;flex-basis:33px!important;}
  .rdMasterMetric strong{font-size:27px!important;}
  .rdMasterLevelCard{height:74px!important;min-height:74px!important;flex-basis:74px!important;}
  .rdMasterCoachCard{height:132px!important;min-height:132px!important;flex-basis:132px!important;grid-template-rows:16px 33px 52px!important;padding:11px 14px 12px!important;}
  .rdMasterCoachActions{height:52px!important;min-height:52px!important;}
  .rdMasterCoachActions button{height:52px!important;min-height:52px!important;}
  .rdMasterProgressCard{height:250px!important;min-height:250px!important;flex-basis:250px!important;}
  .rdMasterProgressRow{height:50px!important;min-height:50px!important;}
}
@media(max-width:380px){
  .rdMasterPraxisDash{padding-left:14px!important;padding-right:14px!important;gap:7px!important;}
  .rdMasterHero{width:calc(100% + 28px)!important;margin-left:-14px!important;margin-right:-14px!important;}
  .rdMasterGreeting h1{font-size:25px!important;}
  .rdMasterGreeting p{font-size:12px!important;}
  .rdMasterMetrics{left:10px!important;right:10px!important;gap:5px!important}.rdMasterMetric{gap:5px!important}.rdMasterMetricIcon{width:30px!important;height:30px!important;flex-basis:30px!important}.rdMasterMetric strong{font-size:25px!important}.rdMasterMetric small{font-size:7px!important}.rdMasterMetric b{font-size:9px!important}
  .rdMasterLevelCard{grid-template-columns:50px 1fr!important;padding:8px 12px!important}.rdMasterLevelNo strong{font-size:42px!important}.rdMasterLevelBody h2{font-size:17px!important;letter-spacing:.13em!important}.rdMasterLevelMeta{font-size:7.4px!important}
  .rdMasterCoachCard{padding-left:12px!important;padding-right:12px!important}.rdMasterEliteRow>span{font-size:13.5px!important}.rdMasterEliteSwitch{width:90px!important;height:30px!important}.rdMasterEliteSwitch .rdMasterSwitchKnob{width:24px!important;height:24px!important}.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:62px!important}.rdMasterCoachActions{gap:8px!important}.rdMasterCoachActions strong{font-size:11.5px!important;letter-spacing:.08em!important}.rdMasterFeedbackBtn strong{font-size:9.7px!important;letter-spacing:.04em!important}
  .rdMasterProgressCard{padding-left:13px!important;padding-right:13px!important}.rdMasterProgressRow{grid-template-columns:34px minmax(0,1fr) 40px!important;gap:8px!important}.rdMasterProgressIcon{width:29px!important;height:29px!important}.rdMasterProgressMain strong{font-size:11.5px!important}.rdMasterProgressCount{font-size:18px!important}
}

/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD AUTHORITATIVE GRID v20 =====
   Final grid pass: no compressed browser rows, cleaner vertical rhythm, bigger coach card,
   narrower elite switch, stronger Start button, stable progress rows. */
.rdMasterPraxisPage{
  background:#030303!important;
  min-height:100dvh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdMasterPraxisDash{
  width:100%!important;
  max-width:430px!important;
  margin:0 auto!important;
  min-height:100dvh!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  padding:0 16px max(18px,env(safe-area-inset-bottom,0px))!important;
  overflow:visible!important;
}
.rdMasterHero{
  flex:0 0 clamp(306px,38dvh,334px)!important;
  height:clamp(306px,38dvh,334px)!important;
  min-height:306px!important;
  max-height:334px!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  border:0!important;
  border-radius:0!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.06)),url('./assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  overflow:hidden!important;
}
.rdMasterHeroShade{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.10) 42%,rgba(0,0,0,.45) 74%,rgba(0,0,0,.92) 100%)!important;}
.rdMasterGreeting{
  left:14px!important;
  right:14px!important;
  bottom:106px!important;
  text-align:center!important;
}
.rdMasterGreeting h1{
  font-size:clamp(29px,7.25vw,34px)!important;
  line-height:.92!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}
.rdMasterGreeting p{
  margin-top:9px!important;
  font-size:clamp(13.5px,3.25vw,15px)!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  color:rgba(247,241,229,.82)!important;
}
.rdMasterMetrics{
  left:15px!important;
  right:15px!important;
  bottom:18px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:center!important;
}
.rdMasterMetric{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:0!important;}
.rdMasterMetricIcon{width:37px!important;height:37px!important;flex:0 0 37px!important;font-size:18px!important;}
.rdMasterMetric small{font-size:8.5px!important;letter-spacing:.155em!important;}
.rdMasterMetric strong{font-size:clamp(28px,6.8vw,33px)!important;line-height:.88!important;}
.rdMasterMetric b{font-size:10.5px!important;margin-top:4px!important;}
.rdMasterLevelCard,.rdMasterCoachCard,.rdMasterProgressCard{
  width:100%!important;
  border-radius:23px!important;
  border:1.2px solid rgba(211,173,88,.72)!important;
  background:linear-gradient(180deg,rgba(10,10,10,.92),rgba(0,0,0,.95))!important;
  box-shadow:0 18px 38px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.035)!important;
  overflow:hidden!important;
}
.rdMasterLevelCard{
  flex:0 0 78px!important;
  min-height:78px!important;
  height:78px!important;
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  align-items:center!important;
  gap:13px!important;
  padding:9px 15px!important;
}
.rdMasterLevelNo small{font-size:9.5px!important;letter-spacing:.18em!important;line-height:1!important;}
.rdMasterLevelNo strong{font-size:46px!important;line-height:.78!important;}
.rdMasterLevelBody h2{font-size:clamp(18px,4.2vw,20px)!important;letter-spacing:.155em!important;line-height:.95!important;margin:0 0 8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.rdMasterBar{height:6px!important;}
.rdMasterLevelMeta{font-size:8.4px!important;letter-spacing:.13em!important;margin-top:7px!important;line-height:1!important;}
.rdMasterLevelMeta b{font-size:13px!important;}
.rdMasterCoachCard{
  flex:0 0 154px!important;
  min-height:154px!important;
  height:154px!important;
  padding:14px 15px 17px!important;
  display:grid!important;
  grid-template-rows:18px 36px 58px!important;
  row-gap:12px!important;
}
.rdMasterCoachCard header{min-height:18px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;}
.rdMasterCoachCard header h3,.rdMasterProgressCard h3{font-size:12.5px!important;letter-spacing:.18em!important;line-height:1!important;}
.rdMasterCoachCard header b{font-size:12.5px!important;letter-spacing:.16em!important;line-height:1!important;}
.rdMasterEliteRow{display:grid!important;grid-template-columns:1fr 86px!important;gap:12px!important;align-items:center!important;}
.rdMasterEliteRow>span{font-size:15px!important;letter-spacing:.19em!important;line-height:1!important;}
.rdMasterEliteSwitch{
  width:86px!important;
  height:30px!important;
  border-radius:999px!important;
  position:relative!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,#2a2b2d,#101011)!important;
  box-shadow:inset 0 1px 2px rgba(255,255,255,.12),0 5px 13px rgba(0,0,0,.34)!important;
}
.rdMasterEliteSwitch .rdMasterSwitchKnob{
  position:absolute!important;
  left:4px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:24px!important;
  height:24px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#d9dad5!important;
  color:#111!important;
  font-size:15px!important;
  line-height:1!important;
  box-shadow:0 2px 7px rgba(0,0,0,.38)!important;
  transition:left .22s ease,background .22s ease,color .22s ease!important;
}
.rdMasterEliteSwitch .rdMasterSwitchLabel{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  font-size:11.8px!important;
  letter-spacing:.15em!important;
  font-weight:800!important;
  line-height:1!important;
  color:#fff!important;
}
.rdMasterEliteSwitch.active{
  background:linear-gradient(135deg,#f2d77d,#b78234)!important;
  border-color:rgba(255,234,156,.95)!important;
  box-shadow:0 0 18px rgba(224,185,87,.25),inset 0 1px 0 rgba(255,255,255,.30)!important;
}
.rdMasterEliteSwitch.active .rdMasterSwitchLabel{left:14px!important;right:auto!important;color:#12100a!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:58px!important;background:#070707!important;color:#e8c977!important;font-size:15.5px!important;}
.rdMasterCoachActions{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)!important;gap:12px!important;height:58px!important;min-height:58px!important;align-items:stretch!important;}
.rdMasterCoachActions button{height:58px!important;min-height:58px!important;border-radius:19px!important;padding:0 13px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;}
.rdMasterActionIcon{display:none!important;}
.rdMasterStartBtn{background:linear-gradient(180deg,#242527,#0d0d0e)!important;color:#f8f2e6!important;border:1.6px solid rgba(230,194,104,.84)!important;box-shadow:0 0 20px rgba(216,181,95,.16),inset 0 1px 0 rgba(255,255,255,.12)!important;}
.rdMasterFeedbackBtn{background:linear-gradient(180deg,#252629,#0e0e0f)!important;color:#fff!important;border:1px solid rgba(255,255,255,.13)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;}
.rdMasterCoachActions strong{font-size:clamp(12.5px,3.1vw,14.5px)!important;letter-spacing:.105em!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;}
.rdMasterFeedbackBtn strong{font-size:clamp(10.5px,2.65vw,12.2px)!important;letter-spacing:.06em!important;}
.rdMasterProgressCard{
  flex:0 0 270px!important;
  min-height:270px!important;
  height:270px!important;
  padding:12px 15px 13px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
}
.rdMasterProgressCard h3{height:16px!important;margin:0 0 8px!important;flex:0 0 auto!important;}
.rdMasterProgressRow{height:55px!important;min-height:55px!important;display:grid!important;grid-template-columns:36px minmax(0,1fr) 45px!important;gap:10px!important;align-items:center!important;padding:0!important;margin:0!important;border-bottom:1px solid rgba(255,255,255,.075)!important;}
.rdMasterProgressRow:last-child{border-bottom:0!important;}
.rdMasterProgressIcon{width:31px!important;height:31px!important;border-radius:11px!important;}
.rdMasterProgressIcon svg{width:18px!important;height:18px!important;}
.rdMasterProgressMain strong{font-size:clamp(12px,3vw,13.5px)!important;letter-spacing:.105em!important;margin:0 0 6px!important;line-height:1!important;white-space:nowrap!important;}
.rdMasterProgressMain i{height:5px!important;}
.rdMasterProgressCount{font-size:clamp(17px,4.6vw,21px)!important;line-height:1!important;}
@media(max-height:760px){
  .rdMasterPraxisDash{min-height:auto!important;gap:8px!important;padding-bottom:18px!important;}
  .rdMasterHero{flex-basis:296px!important;height:296px!important;min-height:296px!important;}
  .rdMasterGreeting{bottom:100px!important}.rdMasterGreeting h1{font-size:27px!important}.rdMasterGreeting p{font-size:12.5px!important;margin-top:6px!important;}
  .rdMasterMetrics{bottom:17px!important}.rdMasterMetricIcon{width:33px!important;height:33px!important;flex-basis:33px!important}.rdMasterMetric strong{font-size:27px!important}.rdMasterMetric small{font-size:7.5px!important}.rdMasterMetric b{font-size:9.5px!important}
  .rdMasterLevelCard{height:74px!important;min-height:74px!important;flex-basis:74px!important;}
  .rdMasterCoachCard{height:140px!important;min-height:140px!important;flex-basis:140px!important;padding:12px 14px 14px!important;grid-template-rows:16px 32px 52px!important;row-gap:10px!important;}
  .rdMasterCoachActions{height:52px!important;min-height:52px!important}.rdMasterCoachActions button{height:52px!important;min-height:52px!important;}
  .rdMasterProgressCard{height:250px!important;min-height:250px!important;flex-basis:250px!important;}
  .rdMasterProgressRow{height:50px!important;min-height:50px!important;}
}
@media(max-width:380px){
  .rdMasterPraxisDash{padding-left:14px!important;padding-right:14px!important;gap:7px!important;}
  .rdMasterHero{width:calc(100% + 28px)!important;margin-left:-14px!important;margin-right:-14px!important;}
  .rdMasterGreeting h1{font-size:25px!important}.rdMasterGreeting p{font-size:12px!important;}
  .rdMasterMetrics{left:10px!important;right:10px!important;gap:5px!important}.rdMasterMetric{gap:5px!important}.rdMasterMetricIcon{width:30px!important;height:30px!important;flex-basis:30px!important}.rdMasterMetric strong{font-size:25px!important}.rdMasterMetric small{font-size:7px!important}.rdMasterMetric b{font-size:9px!important}
  .rdMasterLevelCard{grid-template-columns:50px 1fr!important;padding:8px 12px!important}.rdMasterLevelNo strong{font-size:42px!important}.rdMasterLevelBody h2{font-size:17px!important;letter-spacing:.13em!important}.rdMasterLevelMeta{font-size:7.4px!important}
  .rdMasterCoachCard{padding-left:12px!important;padding-right:12px!important}.rdMasterEliteRow>span{font-size:13.5px!important}.rdMasterEliteSwitch{width:82px!important;height:29px!important}.rdMasterEliteSwitch .rdMasterSwitchKnob{width:23px!important;height:23px!important}.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:55px!important}.rdMasterCoachActions{gap:8px!important}.rdMasterCoachActions strong{font-size:11.5px!important;letter-spacing:.08em!important}.rdMasterFeedbackBtn strong{font-size:9.7px!important;letter-spacing:.035em!important}
  .rdMasterProgressCard{padding-left:13px!important;padding-right:13px!important}.rdMasterProgressRow{grid-template-columns:34px minmax(0,1fr) 40px!important;gap:8px!important}.rdMasterProgressIcon{width:29px!important;height:29px!important}.rdMasterProgressMain strong{font-size:11.5px!important}.rdMasterProgressCount{font-size:18px!important}
}

/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD FINAL GRID v21 =====
   Clean rebuild pass: removes full level card from visual rhythm, swaps progress above coach,
   stable hero, exact centered metrics, compact premium coach controls. */
.rdMasterPraxisPage{
  background:#030303!important;
  min-height:100svh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdMasterPraxisDash{
  width:100%!important;
  max-width:430px!important;
  margin:0 auto!important;
  min-height:100svh!important;
  display:flex!important;
  flex-direction:column!important;
  gap:11px!important;
  padding:0 16px max(18px,env(safe-area-inset-bottom,0px))!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
.rdMasterHero{
  flex:0 0 clamp(354px,45svh,390px)!important;
  height:clamp(354px,45svh,390px)!important;
  min-height:354px!important;
  max-height:390px!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  border:0!important;
  border-radius:0!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.00),rgba(0,0,0,.02)),url('./assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  position:relative!important;
  overflow:hidden!important;
}
.rdMasterHeroShade{
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.08) 42%,rgba(0,0,0,.50) 76%,rgba(0,0,0,.92) 100%)!important;
  pointer-events:none!important;
}
.rdMasterMiniLevel{
  position:absolute!important;
  top:calc(env(safe-area-inset-top,0px) + 48px)!important;
  right:18px!important;
  width:78px!important;
  opacity:.95!important;
  z-index:4!important;
  text-align:right!important;
}
.rdMasterMiniLevel span{
  display:block!important;
  color:#e6c36e!important;
  font-family:var(--display-font,inherit)!important;
  font-size:10px!important;
  letter-spacing:.17em!important;
  font-weight:800!important;
  line-height:1!important;
  margin-bottom:5px!important;
}
.rdMasterMiniLevel i{
  display:block!important;
  width:100%!important;
  height:3px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  overflow:hidden!important;
}
.rdMasterMiniLevel em{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#b98232,#f1d477)!important;}
.rdMasterGreeting{
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:118px!important;
  text-align:center!important;
  z-index:3!important;
}
.rdMasterGreeting h1{
  margin:0!important;
  font-family:var(--display-font,inherit)!important;
  font-size:clamp(31px,7.7vw,36px)!important;
  line-height:.95!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
  color:#f7f2e7!important;
  text-shadow:0 8px 24px rgba(0,0,0,.52)!important;
}
.rdMasterGreeting h1 span{color:#e7c36d!important;}
.rdMasterGreeting p{
  margin:10px 0 0!important;
  color:rgba(247,241,229,.82)!important;
  font-size:clamp(14px,3.35vw,15.4px)!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  text-shadow:0 5px 18px rgba(0,0,0,.55)!important;
}
.rdMasterMetrics{
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:26px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:center!important;
  z-index:3!important;
}
.rdMasterMetric{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:center!important;
}
.rdMasterMetricIcon{
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  border:1.25px solid rgba(219,181,92,.76)!important;
  color:#e3bf66!important;
  display:grid!important;
  place-items:center!important;
  font-size:18px!important;
  line-height:1!important;
  background:rgba(0,0,0,.22)!important;
  box-shadow:0 0 15px rgba(221,174,70,.10)!important;
}
.rdMasterMetric small{
  display:block!important;
  color:rgba(238,218,163,.76)!important;
  font-family:var(--display-font,inherit)!important;
  font-size:8px!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rdMasterMetric strong{
  display:block!important;
  color:#fff!important;
  font-family:var(--display-font,inherit)!important;
  font-size:clamp(28px,6.6vw,32px)!important;
  line-height:.88!important;
  margin-top:2px!important;
}
.rdMasterMetric b{
  display:block!important;
  color:#e8c774!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1!important;
  margin-top:5px!important;
}
.rdMasterLevelCard{display:none!important;}
.rdMasterProgressCard,.rdMasterCoachCard{
  width:100%!important;
  border-radius:23px!important;
  border:1.2px solid rgba(213,176,91,.75)!important;
  background:linear-gradient(180deg,rgba(9,9,9,.94),rgba(0,0,0,.96))!important;
  box-shadow:0 18px 38px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.035)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.rdMasterProgressCard{
  order:2!important;
  flex:0 0 clamp(258px,31svh,286px)!important;
  min-height:258px!important;
  height:clamp(258px,31svh,286px)!important;
  padding:15px 17px 14px!important;
  display:flex!important;
  flex-direction:column!important;
}
.rdMasterProgressCard h3{
  margin:0 0 10px!important;
  height:16px!important;
  flex:0 0 16px!important;
  color:#ddb65c!important;
  font-family:var(--display-font,inherit)!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.19em!important;
}
.rdMasterProgressRow{
  flex:1 1 0!important;
  min-height:0!important;
  height:auto!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 48px!important;
  gap:10px!important;
  align-items:center!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.075)!important;
  background:transparent!important;
  color:inherit!important;
  width:100%!important;
  text-align:left!important;
  font:inherit!important;
}
button.rdMasterProgressRow{cursor:pointer!important;}
.rdMasterProgressIcon{
  width:34px!important;
  height:34px!important;
  border-radius:12px!important;
  border:1.1px solid rgba(213,176,91,.50)!important;
  display:grid!important;
  place-items:center!important;
  color:#e4c068!important;
  background:rgba(255,255,255,.02)!important;
}
.rdMasterProgressIcon svg{width:19px!important;height:19px!important;stroke:currentColor!important;}
.rdMasterProgressMain strong{
  display:block!important;
  color:#fff!important;
  font-family:var(--display-font,inherit)!important;
  font-size:clamp(13px,3.25vw,15px)!important;
  letter-spacing:.105em!important;
  line-height:1!important;
  white-space:nowrap!important;
  margin:0 0 7px!important;
}
.rdMasterProgressMain i{display:block!important;height:5px!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;overflow:hidden!important;}
.rdMasterProgressMain em{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#b98232,#f2d477)!important;}
.rdMasterProgressCount{
  justify-self:end!important;
  color:#eac873!important;
  font-family:var(--display-font,inherit)!important;
  font-size:clamp(18px,4.7vw,22px)!important;
  line-height:1!important;
  font-weight:900!important;
}
.rdMasterCoachCard{
  order:3!important;
  flex:0 0 clamp(154px,18svh,168px)!important;
  min-height:154px!important;
  height:clamp(154px,18svh,168px)!important;
  padding:15px 17px 17px!important;
  display:grid!important;
  grid-template-rows:17px 35px minmax(54px,1fr)!important;
  row-gap:12px!important;
}
.rdMasterCoachCard header{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:17px!important;}
.rdMasterCoachCard header h3,.rdMasterCoachCard header b{
  margin:0!important;
  color:#ddb65c!important;
  font-family:var(--display-font,inherit)!important;
  font-size:12.5px!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  white-space:nowrap!important;
}
.rdMasterCoachCard header b{font-size:10.8px!important;letter-spacing:.14em!important;opacity:.95!important;}
.rdMasterEliteRow{
  display:grid!important;
  grid-template-columns:1fr 78px!important;
  gap:12px!important;
  align-items:center!important;
}
.rdMasterEliteRow>span{
  color:#fff!important;
  font-family:var(--display-font,inherit)!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:.19em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rdMasterEliteSwitch{
  width:78px!important;
  height:32px!important;
  border-radius:999px!important;
  position:relative!important;
  display:block!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,#2b2c2e,#111112)!important;
  box-shadow:inset 0 1px 2px rgba(255,255,255,.12),0 5px 12px rgba(0,0,0,.35)!important;
}
.rdMasterEliteSwitch .rdMasterSwitchKnob{
  position:absolute!important;
  top:50%!important;
  left:4px!important;
  transform:translateY(-50%)!important;
  width:26px!important;
  height:26px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#d9dad5!important;
  color:#111!important;
  font-size:15px!important;
  line-height:1!important;
  box-shadow:0 2px 7px rgba(0,0,0,.4)!important;
  transition:left .22s ease,background .22s ease,color .22s ease!important;
}
.rdMasterEliteSwitch .rdMasterSwitchLabel{
  position:absolute!important;
  right:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#fff!important;
  font-family:var(--display-font,inherit)!important;
  font-size:11.4px!important;
  letter-spacing:.14em!important;
  font-weight:900!important;
  line-height:1!important;
}
.rdMasterEliteSwitch.active{background:linear-gradient(135deg,#f5dc83,#b68030)!important;border-color:rgba(255,232,148,.96)!important;box-shadow:0 0 18px rgba(224,185,87,.24),inset 0 1px 0 rgba(255,255,255,.30)!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchLabel{left:12px!important;right:auto!important;color:#100d08!important;}
.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:48px!important;background:#070707!important;color:#e8c977!important;font-size:16px!important;}
.rdMasterCoachActions{
  display:grid!important;
  grid-template-columns:minmax(0,1.3fr) minmax(0,.78fr)!important;
  gap:13px!important;
  align-items:stretch!important;
  min-height:54px!important;
}
.rdMasterCoachActions button{
  height:100%!important;
  min-height:54px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 12px!important;
  overflow:hidden!important;
}
.rdMasterStartBtn{background:linear-gradient(180deg,#232426,#0d0d0e)!important;color:#f8f1e4!important;border:1.7px solid rgba(230,194,104,.86)!important;box-shadow:0 0 18px rgba(216,181,95,.15),inset 0 1px 0 rgba(255,255,255,.12)!important;}
.rdMasterFeedbackBtn{background:linear-gradient(180deg,#252629,#101011)!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;}
.rdMasterActionIcon{display:none!important;}
.rdMasterCoachActions strong{font-family:var(--display-font,inherit)!important;font-size:clamp(11.8px,2.9vw,13.5px)!important;letter-spacing:.09em!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;}
.rdMasterFeedbackBtn strong{font-size:clamp(10px,2.45vw,11.5px)!important;letter-spacing:.045em!important;}
@media(max-height:760px){
  .rdMasterPraxisDash{gap:8px!important;padding-left:15px!important;padding-right:15px!important;padding-bottom:16px!important;min-height:auto!important;}
  .rdMasterHero{flex-basis:336px!important;height:336px!important;min-height:336px!important;max-height:336px!important;width:calc(100% + 30px)!important;margin-left:-15px!important;margin-right:-15px!important;}
  .rdMasterGreeting{bottom:108px!important;}.rdMasterGreeting h1{font-size:28px!important}.rdMasterGreeting p{font-size:12.8px!important;margin-top:7px!important;}
  .rdMasterMetrics{bottom:22px!important;left:14px!important;right:14px!important;gap:7px!important}.rdMasterMetric{grid-template-columns:34px minmax(0,1fr)!important;gap:6px!important}.rdMasterMetricIcon{width:32px!important;height:32px!important;font-size:16px!important}.rdMasterMetric strong{font-size:26px!important}.rdMasterMetric small{font-size:7.4px!important}.rdMasterMetric b{font-size:9.3px!important}
  .rdMasterProgressCard{height:246px!important;min-height:246px!important;flex-basis:246px!important;padding:12px 14px!important;}.rdMasterProgressCard h3{font-size:11.5px!important;margin-bottom:7px!important}.rdMasterProgressRow{grid-template-columns:32px minmax(0,1fr) 40px!important;gap:8px!important}.rdMasterProgressIcon{width:29px!important;height:29px!important}.rdMasterProgressMain strong{font-size:11.2px!important;margin-bottom:5px!important}.rdMasterProgressCount{font-size:18px!important}.rdMasterProgressMain i{height:4px!important}
  .rdMasterCoachCard{height:142px!important;min-height:142px!important;flex-basis:142px!important;padding:12px 14px 14px!important;row-gap:10px!important;grid-template-rows:16px 31px minmax(50px,1fr)!important}.rdMasterEliteRow>span{font-size:13px!important}.rdMasterEliteSwitch{width:74px!important;height:30px!important}.rdMasterEliteSwitch .rdMasterSwitchKnob{width:24px!important;height:24px!important}.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:46px!important}.rdMasterCoachActions{gap:10px!important;min-height:50px!important}.rdMasterCoachActions button{min-height:50px!important}.rdMasterCoachActions strong{font-size:11.3px!important}.rdMasterFeedbackBtn strong{font-size:9.7px!important}
}
@media(max-width:380px){
  .rdMasterGreeting h1{font-size:25px!important}.rdMasterGreeting p{font-size:12px!important;white-space:normal!important}.rdMasterMetrics{left:9px!important;right:9px!important;gap:5px!important}.rdMasterMetric{grid-template-columns:29px minmax(0,1fr)!important;gap:5px!important}.rdMasterMetricIcon{width:28px!important;height:28px!important}.rdMasterMetric strong{font-size:24px!important}.rdMasterMetric small{font-size:6.5px!important}.rdMasterMetric b{font-size:8.8px!important}.rdMasterProgressRow{grid-template-columns:30px minmax(0,1fr) 38px!important}.rdMasterProgressMain strong{font-size:10.7px!important}.rdMasterCoachActions{gap:8px!important}.rdMasterCoachActions strong{font-size:10.7px!important}.rdMasterFeedbackBtn strong{font-size:9.2px!important}.rdMasterEliteSwitch{width:70px!important}.rdMasterEliteSwitch.active .rdMasterSwitchKnob{left:42px!important}
}

/* ===== RESET DISCIPLINE · PRAXIS DASHBOARD FINAL CLEAN v22 =====
   Cleaned according to final feedback: no Elite block, no level card, progress before coach,
   smaller average metrics, restored centered greeting, stable Safari/browser spacing. */
.rdMasterPraxisPage{
  background:#030303!important;
  min-height:100svh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdMasterPraxisDash.rdPraxisFinal22{
  width:100%!important;
  max-width:430px!important;
  margin:0 auto!important;
  min-height:100svh!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  padding:0 16px max(18px,env(safe-area-inset-bottom,0px))!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.rdPraxisFinal22 .rdMasterHero{
  flex:0 0 clamp(356px,44svh,392px)!important;
  height:clamp(356px,44svh,392px)!important;
  min-height:356px!important;
  max-height:392px!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  border:0!important;
  border-radius:0!important;
  background-image:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.05)),url('./assets/img/dashboard-hood-final.png')!important;
  background-size:cover!important;
  background-position:center top!important;
  overflow:hidden!important;
}
.rdPraxisFinal22 .rdMasterHeroShade{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.10) 45%,rgba(0,0,0,.48) 80%,rgba(0,0,0,.92) 100%)!important;}
.rdPraxisFinal22 .rdMasterMiniLevel,.rdPraxisFinal22 .rdMasterLevelCard{display:none!important;}
.rdPraxisFinal22 .rdMasterGreeting{
  left:18px!important;right:18px!important;bottom:130px!important;text-align:center!important;
}
.rdPraxisFinal22 .rdMasterGreeting h1{
  font-size:clamp(28px,6.7vw,32px)!important;line-height:.96!important;letter-spacing:.025em!important;font-weight:800!important;white-space:nowrap!important;
}
.rdPraxisFinal22 .rdMasterGreeting p{
  margin-top:10px!important;font-size:clamp(14px,3.25vw,15.5px)!important;line-height:1.15!important;white-space:nowrap!important;color:rgba(247,241,229,.82)!important;
}
.rdPraxisFinal22 .rdMasterMetrics{
  left:18px!important;right:18px!important;bottom:22px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;align-items:center!important;justify-items:center!important;
}
.rdPraxisFinal22 .rdMasterMetric{display:grid!important;grid-template-columns:34px minmax(0,auto)!important;gap:7px!important;align-items:center!important;justify-content:center!important;min-width:0!important;}
.rdPraxisFinal22 .rdMasterMetricIcon{width:32px!important;height:32px!important;flex-basis:32px!important;font-size:16px!important;border-width:1px!important;}
.rdPraxisFinal22 .rdMasterMetric small{font-size:7.5px!important;letter-spacing:.15em!important;line-height:1!important;white-space:nowrap!important;color:rgba(235,216,169,.70)!important;}
.rdPraxisFinal22 .rdMasterMetric strong{font-size:clamp(25px,6vw,29px)!important;line-height:.88!important;font-weight:800!important;}
.rdPraxisFinal22 .rdMasterMetric b{font-size:10px!important;line-height:1!important;margin-top:4px!important;color:#e5c071!important;}
.rdPraxisFinal22 .rdMasterProgressCard,.rdPraxisFinal22 .rdMasterCoachCard{
  width:100%!important;border-radius:23px!important;border:1.2px solid rgba(211,173,88,.72)!important;background:linear-gradient(180deg,rgba(10,10,10,.93),rgba(0,0,0,.96))!important;box-shadow:0 18px 38px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.035)!important;overflow:hidden!important;box-sizing:border-box!important;
}
.rdPraxisFinal22 .rdMasterProgressCard{
  flex:0 0 318px!important;height:318px!important;min-height:318px!important;padding:17px 17px 17px!important;
}
.rdPraxisFinal22 .rdMasterProgressCard h3,.rdPraxisFinal22 .rdMasterCoachCard header h3{
  font-size:13.5px!important;letter-spacing:.18em!important;line-height:1!important;margin:0!important;color:#e3bf6f!important;font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:700!important;
}
.rdPraxisFinal22 .rdMasterProgressCard h3{height:19px!important;margin-bottom:10px!important;}
.rdPraxisFinal22 .rdMasterProgressRow{
  height:68px!important;min-height:68px!important;display:grid!important;grid-template-columns:43px minmax(0,1fr) 52px!important;gap:11px!important;align-items:center!important;padding:0!important;border:0!important;border-top:1px solid rgba(255,255,255,.07)!important;background:transparent!important;
}
.rdPraxisFinal22 .rdMasterProgressRow:first-of-type{border-top:1px solid rgba(255,255,255,.07)!important;}
.rdPraxisFinal22 .rdMasterProgressIcon{width:37px!important;height:37px!important;border-radius:13px!important;display:grid!important;place-items:center!important;border:1px solid rgba(211,173,88,.62)!important;background:rgba(0,0,0,.35)!important;}
.rdPraxisFinal22 .rdMasterProgressIcon svg{width:20px!important;height:20px!important;}
.rdPraxisFinal22 .rdMasterProgressMain strong{font-size:clamp(14px,3.35vw,16px)!important;letter-spacing:.10em!important;line-height:1!important;margin:0 0 9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.rdPraxisFinal22 .rdMasterProgressMain i{height:5px!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;}
.rdPraxisFinal22 .rdMasterProgressCount{font-size:clamp(19px,4.8vw,23px)!important;line-height:1!important;color:#e6c576!important;font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;font-weight:800!important;}
.rdPraxisFinal22 .rdMasterCoachCard.rdCoachSimpleCard{
  flex:0 0 134px!important;height:134px!important;min-height:134px!important;padding:17px 17px 18px!important;display:grid!important;grid-template-rows:18px minmax(0,1fr)!important;row-gap:16px!important;
}
.rdPraxisFinal22 .rdMasterCoachCard header{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:18px!important;}
.rdPraxisFinal22 .rdMasterCoachCard header b,.rdPraxisFinal22 .rdMasterEliteRow,.rdPraxisFinal22 .rdMasterEliteSwitch{display:none!important;}
.rdPraxisFinal22 .rdMasterCoachActions.rdCoachSimpleActions{display:grid!important;grid-template-columns:1.45fr .85fr!important;gap:14px!important;height:64px!important;min-height:64px!important;align-items:stretch!important;}
.rdPraxisFinal22 .rdMasterCoachActions button{height:64px!important;min-height:64px!important;border-radius:20px!important;padding:0 14px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important;box-sizing:border-box!important;}
.rdPraxisFinal22 .rdMasterStartBtn{background:linear-gradient(180deg,#26272a,#101011)!important;color:#fff!important;border:1.7px solid rgba(226,190,103,.88)!important;box-shadow:0 0 18px rgba(213,178,88,.16), inset 0 1px 0 rgba(255,255,255,.12)!important;}
.rdPraxisFinal22 .rdMasterFeedbackBtn{background:linear-gradient(180deg,#252629,#0f0f10)!important;border:1px solid rgba(255,255,255,.13)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;}
.rdPraxisFinal22 .rdMasterCoachActions strong{font-size:clamp(12.5px,3.05vw,14px)!important;letter-spacing:.095em!important;line-height:1!important;white-space:nowrap!important;color:#fff!important;text-align:center!important;}
.rdPraxisFinal22 .rdMasterFeedbackBtn strong{font-size:clamp(10.8px,2.65vw,12px)!important;letter-spacing:.055em!important;}
@media(max-height:760px){
  .rdMasterPraxisDash.rdPraxisFinal22{gap:9px!important;padding-left:15px!important;padding-right:15px!important;}
  .rdPraxisFinal22 .rdMasterHero{flex-basis:334px!important;height:334px!important;min-height:334px!important;width:calc(100% + 30px)!important;margin-left:-15px!important;margin-right:-15px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:116px!important;}
  .rdPraxisFinal22 .rdMasterGreeting h1{font-size:27px!important;}
  .rdPraxisFinal22 .rdMasterGreeting p{font-size:13px!important;margin-top:8px!important;}
  .rdPraxisFinal22 .rdMasterMetrics{bottom:18px!important;left:14px!important;right:14px!important;gap:7px!important;}
  .rdPraxisFinal22 .rdMasterMetric{grid-template-columns:30px minmax(0,auto)!important;gap:6px!important;}
  .rdPraxisFinal22 .rdMasterMetricIcon{width:30px!important;height:30px!important;}
  .rdPraxisFinal22 .rdMasterMetric strong{font-size:25px!important;}
  .rdPraxisFinal22 .rdMasterProgressCard{height:294px!important;min-height:294px!important;flex-basis:294px!important;padding:14px 15px!important;}
  .rdPraxisFinal22 .rdMasterProgressRow{height:61px!important;min-height:61px!important;grid-template-columns:38px minmax(0,1fr) 47px!important;}
  .rdPraxisFinal22 .rdMasterProgressIcon{width:34px!important;height:34px!important;}
  .rdPraxisFinal22 .rdMasterProgressMain strong{font-size:13.2px!important;margin-bottom:7px!important;}
  .rdPraxisFinal22 .rdMasterProgressCount{font-size:20px!important;}
  .rdPraxisFinal22 .rdMasterCoachCard.rdCoachSimpleCard{height:122px!important;min-height:122px!important;flex-basis:122px!important;padding:14px 15px 15px!important;row-gap:12px!important;}
  .rdPraxisFinal22 .rdMasterCoachActions.rdCoachSimpleActions{height:54px!important;min-height:54px!important;gap:11px!important;}
  .rdPraxisFinal22 .rdMasterCoachActions button{height:54px!important;min-height:54px!important;border-radius:18px!important;}
}
@media(max-width:380px){
  .rdPraxisFinal22 .rdMasterGreeting h1{font-size:24px!important;}
  .rdPraxisFinal22 .rdMasterGreeting p{font-size:12px!important;}
  .rdPraxisFinal22 .rdMasterMetrics{left:8px!important;right:8px!important;gap:4px!important;}
  .rdPraxisFinal22 .rdMasterMetric{grid-template-columns:27px minmax(0,auto)!important;gap:5px!important;}
  .rdPraxisFinal22 .rdMasterMetricIcon{width:27px!important;height:27px!important;font-size:14px!important;}
  .rdPraxisFinal22 .rdMasterMetric small{font-size:6.5px!important;}
  .rdPraxisFinal22 .rdMasterMetric strong{font-size:22px!important;}
  .rdPraxisFinal22 .rdMasterProgressRow{grid-template-columns:34px minmax(0,1fr) 40px!important;gap:8px!important;}
  .rdPraxisFinal22 .rdMasterProgressIcon{width:30px!important;height:30px!important;}
  .rdPraxisFinal22 .rdMasterProgressMain strong{font-size:11.5px!important;}
  .rdPraxisFinal22 .rdMasterProgressCount{font-size:18px!important;}
  .rdPraxisFinal22 .rdMasterCoachActions.rdCoachSimpleActions{gap:8px!important;grid-template-columns:1.35fr .9fr!important;}
  .rdPraxisFinal22 .rdMasterCoachActions strong{font-size:10.8px!important;letter-spacing:.075em!important;}
  .rdPraxisFinal22 .rdMasterFeedbackBtn strong{font-size:9.4px!important;}
}

/* === RD V23 targeted fixes: dashboard button parity + inline Morning Check layout === */
.rdPraxisFinal22 .rdMasterCoachCard.rdCoachSimpleCard{
  border-radius:24px!important;
  border:1.2px solid rgba(201,168,76,.72)!important;
  background:linear-gradient(180deg,rgba(8,8,8,.96),rgba(0,0,0,.97))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.07) inset,0 18px 34px rgba(0,0,0,.42)!important;
}
.rdPraxisFinal22 .rdMasterCoachActions.rdCoachSimpleActions{
  gap:18px!important;
}
.rdPraxisFinal22 .rdMasterCoachActions button{
  border-radius:22px!important;
  padding:0 18px!important;
  letter-spacing:.12em!important;
}
.rdPraxisFinal22 .rdMasterStartBtn{
  border:1.6px solid rgba(229,192,113,.86)!important;
  background:linear-gradient(180deg,rgba(42,43,46,.96),rgba(15,15,16,.98))!important;
  box-shadow:0 0 0 1px rgba(255,234,174,.08) inset,0 0 18px rgba(229,192,113,.18),0 12px 26px rgba(0,0,0,.34)!important;
}
.rdPraxisFinal22 .rdMasterFeedbackBtn{
  border:1.05px solid rgba(255,255,255,.15)!important;
  background:linear-gradient(180deg,rgba(38,39,42,.95),rgba(15,15,16,.98))!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.055) inset,0 10px 24px rgba(0,0,0,.32)!important;
}
.rdPraxisFinal22 .rdMasterCoachActions strong{
  font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;
  font-weight:800!important;
  color:rgba(255,255,255,.96)!important;
}
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction{
  display:block!important;
  margin:18px 0 14px!important;
  padding-left:0!important;
}
.praxisCoachPage .rdInlineCheckCard.actionBubble{
  width:auto!important;
  max-width:min(310px,92%)!important;
  min-width:230px!important;
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(19,19,20,.94),rgba(9,9,10,.94))!important;
  border:1px solid rgba(212,174,84,.42)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.05) inset,0 12px 25px rgba(0,0,0,.26)!important;
}
.praxisCoachPage .rdInlineCheckCard .rdInlineCheckText{
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
  white-space:nowrap!important;
  color:rgba(236,221,183,.88)!important;
  font-family:var(--font-c,'Barlow Condensed',sans-serif)!important;
  font-weight:700!important;
  min-width:0!important;
}
.praxisCoachPage .rdInlineCheckCard .inlineCoachAction{
  flex:0 0 auto!important;
  height:36px!important;
  min-width:122px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  font-size:12px!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
  background:rgba(212,174,84,.14)!important;
  border:1px solid rgba(212,174,84,.62)!important;
  color:rgba(255,241,201,.96)!important;
}
.praxisCoachPage .rdInlineCheckCard.done{
  opacity:.92!important;
  border-color:rgba(129,160,91,.42)!important;
}
.praxisCoachPage .rdInlineCheckCard.done .inlineCoachAction{
  background:rgba(34,48,24,.72)!important;
  border-color:rgba(129,160,91,.48)!important;
}
@media(max-width:380px){
  .praxisCoachPage .rdInlineCheckCard.actionBubble{max-width:96%!important;min-width:0!important;width:96%!important;}
  .praxisCoachPage .rdInlineCheckCard .rdInlineCheckText{font-size:12px!important;letter-spacing:.08em!important;}
  .praxisCoachPage .rdInlineCheckCard .inlineCoachAction{min-width:112px!important;font-size:11px!important;padding:0 12px!important;}
}

/* ===== RESET DISCIPLINE · UNIFIED CLEANUP v23 =====
   Single authoritative override for all inconsistencies.
   Mic button neutral, old voice overlay killed,
   consistent card/button language across all pages.
   ================================================== */

/* Kill old fullscreen voice overlay - permanently gone */
.rdVoiceOverlay,.rdVoiceSheet,.rdVoiceTitle,
.rdVoiceBars:not(.rdInlineVoiceBars),.rdVoiceText:not(.rdInlineVoiceText),
.rdVoiceControls{display:none!important;pointer-events:none!important;}

/* Mic button: neutral, clean, no gold */
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  width:44px!important;height:44px!important;min-width:44px!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:rgba(30,30,30,.92)!important;
  color:rgba(180,180,180,.88)!important;
  box-shadow:none!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn:active{
  background:rgba(50,50,50,.95)!important;
  color:rgba(220,220,220,.96)!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{
  width:17px!important;height:17px!important;stroke-width:1.6!important;
}

/* Unified card design tokens — border-radius 18px, border gold 15% opacity */
.card,.checkModalCard,.trendCard,.performanceTrend{
  border-radius:18px!important;
  border:1.1px solid rgba(201,168,76,.18)!important;
}

/* Unified button heights — consistent 48px across all pages */
.btn{
  height:48px!important;
  border-radius:16px!important;
  font-size:13px!important;
  letter-spacing:.12em!important;
}
.btn.secondary{
  border:1.1px solid rgba(201,168,76,.28)!important;
  background:rgba(255,255,255,.04)!important;
}

/* Challenge cards — match praxis border style */
.challengeEntryCard,.challengeHistoryCard,.challengeProCard{
  border:1.1px solid rgba(201,168,76,.18)!important;
  border-radius:18px!important;
}

/* Choice cards on home — keep existing gold border, unified radius */
.choiceCard{
  border-radius:18px!important;
}

/* Module/extra cards — unified radius */
.addonModuleCard,.addonLessonCard,.addonWideCard{
  border-radius:18px!important;
  border:1.1px solid rgba(201,168,76,.18)!important;
}

/* Praxis progress and coach cards — match 30-day master 23px radius with gold border */
.rdPraxisFinal22 .rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterCoachCard{
  border-radius:23px!important;
  border:1.2px solid rgba(201,168,76,.72)!important;
}

/* Coach chat bubbles — clean, consistent */
.chatBubble.coach{
  border-radius:4px 16px 16px 16px!important;
  border:1px solid rgba(201,168,76,.14)!important;
  background:rgba(20,20,20,.95)!important;
}
.chatBubble.user{
  border-radius:16px 4px 16px 16px!important;
  border:1px solid rgba(201,168,76,.18)!important;
  background:rgba(201,168,76,.10)!important;
}

/* Coach open text — readable size, no avatar clutter */
.coachOpenText{
  font-size:15px!important;
  line-height:1.62!important;
  color:rgba(240,237,232,.92)!important;
  padding:0 2px!important;
}

/* Input row clean, proportional */
.chatInputRow{
  gap:8px!important;
  padding:10px 14px!important;
}
.chatInputRow input{
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(18,18,18,.98)!important;
  font-size:15px!important;
  height:44px!important;
}
.chatInputRow input:focus{
  border-color:rgba(201,168,76,.55)!important;
}

/* Send button — same height as input, not gold */
.chatInputRow > button:not(.rdVoiceBtn){
  height:44px!important;
  min-width:44px!important;
  border-radius:14px!important;
  border:1.1px solid rgba(201,168,76,.72)!important;
  background:linear-gradient(180deg,rgba(38,38,42,.96),rgba(12,12,14,.98))!important;
  color:rgba(230,197,113,.96)!important;
}
.chatInputRow > button:not(.rdVoiceBtn) svg{
  width:18px!important;height:18px!important;
}

/* Archive cards — consistent */
.archiveDayCard{
  border-radius:18px!important;
  border:1.1px solid rgba(201,168,76,.18)!important;
}

/* Press feedback — uniform */
.btn:active,.choiceCard:active,.largeCourseCard:active,.coachLaunchCard:active,
.challengeEntryCard:active,.addonModuleCard:active,.addonLessonCard:active{
  transform:scale(0.975)!important;
}

/* ── v27 TARGETED FIXES ONLY — no layout changes ── */

/* 1. Hide feedback button */
.rdMasterFeedbackBtn { display: none !important; }

/* 2. Coach start button full width when feedback hidden */
.rdMasterCoachActions.rdCoachSimpleActions {
  grid-template-columns: 1fr !important;
}

/* 3. Progress rows: slightly more compact */
.rdMasterProgressRow {
  height: 56px !important;
  min-height: 56px !important;
}
.rdMasterProgressCard {
  padding: 13px 15px !important;
}

/* 4. Voice composer: ChatGPT pill style */
.praxisCoachPage .chatInputRow.rdVoiceInputRow {
  display: grid !important;
  grid-template-columns: 1fr 50px !important;
  gap: 8px !important;
  padding: 10px 14px calc(env(safe-area-inset-bottom,0px) + 10px) !important;
  position: relative !important;
  border-top: 0 !important;
}
.praxisCoachPage .chatInputRow input {
  height: 46px !important;
  background: rgba(24,24,24,0.98) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 999px !important;
  color: rgba(240,237,232,0.96) !important;
  font-size: 15px !important;
  padding: 0 46px 0 18px !important;
  outline: none !important;
  -webkit-appearance: none !important;
  width: 100% !important;
}
.praxisCoachPage .chatInputRow input:focus {
  border-color: rgba(201,168,76,0.45) !important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn {
  position: absolute !important;
  right: 68px !important;
  top: 50% !important;
  transform: translateY(-65%) !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: none !important;
  color: rgba(120,112,100,0.72) !important;
  box-shadow: none !important;
  z-index: 2 !important;
}
.praxisCoachPage .chatInputRow > button:not(.rdVoiceBtn) {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg,rgba(201,168,76,0.92),rgba(140,108,28,0.96)) !important;
  border: none !important;
  color: #080808 !important;
  box-shadow: 0 2px 12px rgba(201,168,76,0.30) !important;
}

/* 5. Voice recording state: WhatsApp style */
.praxisCoachPage .rdInlineVoicePanel {
  display: grid !important;
  grid-template-columns: 1fr 54px 54px !important;
  gap: 8px !important;
  padding: 10px 14px calc(env(safe-area-inset-bottom,0px) + 10px) !important;
}
.praxisCoachPage .rdInlineVoiceText {
  height: 46px !important;
  border-radius: 999px !important;
  background: rgba(24,24,24,0.98) !important;
  border: 1px solid rgba(201,168,76,0.35) !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
  font-size: 14px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}
.praxisCoachPage .rdInlineVoiceStop {
  height: 46px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  letter-spacing: 0.12em !important;
}
.praxisCoachPage .rdInlineVoiceSend {
  height: 46px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,rgba(201,168,76,0.92),rgba(140,108,28,0.96)) !important;
  border: none !important;
  color: #080808 !important;
  font-size: 10px !important;
  letter-spacing: 0.12em !important;
  font-weight: 700 !important;
}

/* 6. Typing dots animation */
@keyframes rdDotPulse {
  0%,80%,100% { transform:scaleY(0.5);opacity:0.4; }
  40%         { transform:scaleY(1.2);opacity:1; }
}
.rdCoachTyping {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 10px 4px !important;
  height: 34px !important;
}
.rdCoachTyping span {
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: rgba(201,168,76,0.70) !important;
  animation: rdDotPulse 1.2s ease-in-out infinite !important;
  display: block !important;
}
.rdCoachTyping span:nth-child(2) { animation-delay: 0.2s !important; }
.rdCoachTyping span:nth-child(3) { animation-delay: 0.4s !important; }


/* ===== RD V28 AUTHORITATIVE VISUAL FIX =====
   Master-layout parity, smaller progress, one clean coach CTA, ChatGPT-like composer. */
:root{
  --rd-v28-border: rgba(201,168,76,.46);
  --rd-v28-border-soft: rgba(201,168,76,.28);
  --rd-v28-glow: rgba(201,168,76,.14);
}
.rdMasterPraxisPage{background:#030303!important;overflow-y:auto!important;}
.rdMasterPraxisDash.rdPraxisFinal22{gap:11px!important;padding:0 16px max(16px,env(safe-area-inset-bottom,0px))!important;}
.rdPraxisFinal22 .rdMasterHero{
  flex-basis:clamp(382px,47svh,420px)!important;
  height:clamp(382px,47svh,420px)!important;
  min-height:382px!important;
  max-height:420px!important;
  background-position:center top!important;
}
.rdPraxisFinal22 .rdMasterHeroShade{background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.06) 45%,rgba(0,0,0,.43) 78%,rgba(0,0,0,.94) 100%)!important;}
.rdPraxisFinal22 .rdMasterGreeting{bottom:112px!important;left:18px!important;right:18px!important;text-align:center!important;}
.rdPraxisFinal22 .rdMasterGreeting h1{font-size:clamp(27px,6.45vw,31px)!important;letter-spacing:.025em!important;}
.rdPraxisFinal22 .rdMasterGreeting p{font-size:clamp(13px,3.1vw,14.5px)!important;margin-top:8px!important;}
.rdPraxisFinal22 .rdMasterMetrics{bottom:20px!important;gap:8px!important;}
.rdPraxisFinal22 .rdMasterMetric{grid-template-columns:30px minmax(0,auto)!important;gap:6px!important;}
.rdPraxisFinal22 .rdMasterMetricIcon{width:29px!important;height:29px!important;font-size:14px!important;border-color:var(--rd-v28-border)!important;}
.rdPraxisFinal22 .rdMasterMetric small{font-size:7px!important;color:rgba(235,216,169,.62)!important;}
.rdPraxisFinal22 .rdMasterMetric strong{font-size:clamp(23px,5.6vw,27px)!important;}
.rdPraxisFinal22 .rdMasterMetric b{font-size:9px!important;color:#d8b75f!important;}
.rdPraxisFinal22 .rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterCoachCard{
  border:1.1px solid var(--rd-v28-border)!important;
  border-radius:23px!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.045) inset,0 14px 34px rgba(0,0,0,.34),0 0 18px var(--rd-v28-glow)!important;
  background:linear-gradient(180deg,rgba(8,8,8,.94),rgba(0,0,0,.97))!important;
}
.rdPraxisFinal22 .rdMasterProgressCard{
  flex:0 0 272px!important;
  height:272px!important;
  min-height:272px!important;
  padding:13px 15px 13px!important;
}
.rdPraxisFinal22 .rdMasterProgressCard h3{font-size:12px!important;height:15px!important;margin-bottom:7px!important;color:#d6b462!important;}
.rdPraxisFinal22 .rdMasterProgressRow{height:54px!important;min-height:54px!important;grid-template-columns:35px minmax(0,1fr) 43px!important;gap:9px!important;}
.rdPraxisFinal22 .rdMasterProgressIcon{width:30px!important;height:30px!important;border-radius:11px!important;border-color:var(--rd-v28-border-soft)!important;color:#d9b85f!important;}
.rdPraxisFinal22 .rdMasterProgressIcon svg{width:17px!important;height:17px!important;}
.rdPraxisFinal22 .rdMasterProgressMain strong{font-size:clamp(11.5px,2.9vw,13px)!important;letter-spacing:.10em!important;margin-bottom:5px!important;}
.rdPraxisFinal22 .rdMasterProgressMain i{height:4px!important;background:rgba(255,255,255,.11)!important;}
.rdPraxisFinal22 .rdMasterProgressMain em{background:linear-gradient(90deg,#b88435,#e5c071)!important;}
.rdPraxisFinal22 .rdMasterProgressCount{font-size:clamp(17px,4.3vw,20px)!important;color:#dfbd68!important;}
.rdPraxisFinal22 .rdMasterCoachCard.rdCoachSimpleCard,
.rdPraxisFinal22 .rdMasterCoachCard.rdCoachSingleCard{
  flex:0 0 92px!important;
  height:92px!important;
  min-height:92px!important;
  padding:16px!important;
  display:flex!important;
  align-items:center!important;
}
.rdPraxisFinal22 .rdMasterCoachCard header{display:none!important;}
.rdPraxisFinal22 .rdMasterCoachActions.rdCoachSimpleActions,
.rdPraxisFinal22 .rdMasterCoachActions.rdCoachSingleAction{
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
}
.rdPraxisFinal22 .rdMasterFeedbackBtn{display:none!important;}
.rdPraxisFinal22 .rdMasterStartBtn{
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  border-radius:20px!important;
  border:1.35px solid rgba(201,168,76,.60)!important;
  background:linear-gradient(180deg,rgba(36,37,39,.96),rgba(10,10,11,.98))!important;
  color:#f8f2e8!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.06) inset,0 0 18px rgba(201,168,76,.14),0 12px 26px rgba(0,0,0,.34)!important;
}
.rdPraxisFinal22 .rdMasterStartBtn strong{font-size:clamp(14px,3.6vw,16px)!important;letter-spacing:.14em!important;color:#fff!important;}

/* Coach chat: remove bottom back CTA and keep composer as real bottom control */
.praxisCoachPage .dashboardReviewBtn.rdChatBackHidden{display:none!important;}
.praxisCoachPage{background:#030303!important;overflow:hidden!important;}
.praxisCoachPage #praxisChatShell{padding:0 16px max(8px,env(safe-area-inset-bottom,0px))!important;min-height:0!important;}
.praxisCoachPage #praxisChatMessages{padding:18px 0 14px!important;}
.praxisCoachPage .rdComposerWrap{flex:0 0 auto!important;margin:0!important;padding:8px 0 4px!important;background:linear-gradient(180deg,rgba(3,3,3,0),rgba(3,3,3,.98) 28%)!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 46px!important;
  gap:8px!important;
  align-items:center!important;
  padding:0!important;
  height:52px!important;
}
.praxisCoachPage .chatInputRow input{
  height:46px!important;
  border-radius:999px!important;
  padding:0 44px 0 18px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(13,13,14,.98)!important;
  color:rgba(245,242,238,.96)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 24px rgba(0,0,0,.26)!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  position:absolute!important;
  right:58px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:34px!important;height:34px!important;min-width:34px!important;
  border-radius:50%!important;background:transparent!important;border:0!important;
  color:rgba(170,165,158,.70)!important;box-shadow:none!important;z-index:3!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn svg{width:18px!important;height:18px!important;}
.praxisCoachPage .chatInputRow > button:not(.rdVoiceBtn){
  width:46px!important;height:46px!important;min-width:46px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(244,244,244,.94)!important;color:#111!important;
  box-shadow:0 8px 22px rgba(0,0,0,.34)!important;
}
.praxisCoachPage .chatInputRow > button:not(.rdVoiceBtn) svg{width:18px!important;height:18px!important;transform:translateX(1px)!important;}
.praxisCoachPage .rdInlineVoicePanel{
  height:54px!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 48px!important;
  gap:8px!important;
  align-items:center!important;
  padding:5px 7px!important;
  border-radius:22px!important;
  background:rgba(17,17,18,.96)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.36)!important;
}
.praxisCoachPage .rdInlineVoicePanel.hidden{display:none!important;}
.praxisCoachPage .rdInlineVoiceText{display:none!important;}
.praxisCoachPage .rdInlineVoiceStop,.praxisCoachPage .rdInlineVoiceSend{
  font-size:0!important;color:transparent!important;display:grid!important;place-items:center!important;padding:0!important;
}
.praxisCoachPage .rdInlineVoiceStop{width:42px!important;height:42px!important;min-width:42px!important;border-radius:15px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.11)!important;}
.praxisCoachPage .rdInlineVoiceStop:before{content:'■'!important;font-size:11px!important;color:rgba(255,255,255,.90)!important;}
.praxisCoachPage .rdInlineVoiceSend{width:46px!important;height:46px!important;min-width:46px!important;border-radius:16px!important;background:rgba(244,244,244,.96)!important;border:1px solid rgba(255,255,255,.72)!important;}
.praxisCoachPage .rdInlineVoiceSend:before{content:'↑'!important;font-size:26px!important;font-weight:900!important;color:#111!important;line-height:1!important;transform:translateY(-1px)!important;}
.praxisCoachPage .rdInlineVoiceBars{
  height:42px!important;width:100%!important;min-width:0!important;border-radius:17px!important;
  background:rgba(0,0,0,.26)!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:3px!important;padding:0 14px!important;overflow:hidden!important;
}
.praxisCoachPage .rdInlineVoiceBars span{
  width:3px!important;min-width:3px!important;border-radius:99px!important;background:rgba(238,238,238,.38)!important;
  height:calc(7px + (var(--rdVoiceLevel,.25) * 25px))!important;animation:rdWaveSlide 1.45s linear infinite!important;
}
@keyframes rdWaveSlide{0%{transform:translateX(16px) scaleY(.65);opacity:.25}40%{opacity:.75}100%{transform:translateX(-14px) scaleY(1);opacity:.25}}
@media(max-height:760px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:350px!important;height:350px!important;min-height:350px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:104px!important;}
  .rdPraxisFinal22 .rdMasterProgressCard{height:250px!important;min-height:250px!important;flex-basis:250px!important;}
  .rdPraxisFinal22 .rdMasterProgressRow{height:49px!important;min-height:49px!important;}
  .rdPraxisFinal22 .rdMasterCoachCard.rdCoachSimpleCard,.rdPraxisFinal22 .rdMasterCoachCard.rdCoachSingleCard{height:86px!important;min-height:86px!important;flex-basis:86px!important;padding:14px!important;}
  .rdPraxisFinal22 .rdMasterCoachActions.rdCoachSimpleActions,.rdPraxisFinal22 .rdMasterCoachActions.rdCoachSingleAction,.rdPraxisFinal22 .rdMasterStartBtn{height:54px!important;min-height:54px!important;}
}
@media(max-width:380px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:340px!important;height:340px!important;min-height:340px!important;}
  .rdPraxisFinal22 .rdMasterGreeting h1{font-size:24px!important;}
  .rdPraxisFinal22 .rdMasterGreeting p{font-size:12px!important;white-space:normal!important;}
}

/* ===== RD V29 FINAL PRACTICE DASHBOARD + CHAT INPUT ===== */
.rdMasterPraxisDash.rdPraxisFinal22{
  gap:14px!important;
  padding:0 16px max(22px,env(safe-area-inset-bottom,0px))!important;
}
.rdPraxisFinal22 .rdMasterHero{
  flex-basis:clamp(414px,50svh,462px)!important;
  height:clamp(414px,50svh,462px)!important;
  min-height:414px!important;
  max-height:462px!important;
  background-position:center top!important;
}
.rdPraxisFinal22 .rdMasterGreeting{
  bottom:108px!important;
  left:18px!important;
  right:18px!important;
  text-align:center!important;
}
.rdPraxisFinal22 .rdMasterMetrics{
  bottom:16px!important;
}
.rdPraxisFinal22 .rdMasterProgressCard{
  flex:0 0 260px!important;
  height:260px!important;
  min-height:260px!important;
  padding:12px 15px!important;
  border-color:rgba(201,168,76,.40)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.035) inset,0 12px 28px rgba(0,0,0,.30),0 0 13px rgba(201,168,76,.09)!important;
}
.rdPraxisFinal22 .rdMasterProgressRow{
  height:51px!important;
  min-height:51px!important;
}
.rdPraxisFinal22 .rdMasterCoachCard{display:none!important;}
.rdPraxisFinal22 .rdMasterSoloStartBtn{
  width:100%!important;
  height:62px!important;
  min-height:62px!important;
  border-radius:22px!important;
  border:1.15px solid rgba(201,168,76,.48)!important;
  background:linear-gradient(180deg,rgba(36,37,39,.96),rgba(7,7,8,.985))!important;
  color:#fff!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.045) inset,0 10px 26px rgba(0,0,0,.35),0 0 13px rgba(201,168,76,.10)!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.rdPraxisFinal22 .rdMasterSoloStartBtn strong{
  font-family:var(--font-display,inherit)!important;
  font-size:clamp(14px,3.65vw,16px)!important;
  letter-spacing:.16em!important;
  line-height:1!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge{
  position:absolute!important;
  right:19px!important;
  top:92px!important;
  z-index:5!important;
  width:82px!important;
  padding:8px 9px!important;
  border-radius:15px!important;
  border:1px solid rgba(201,168,76,.42)!important;
  background:rgba(5,5,6,.46)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.28),0 0 12px rgba(201,168,76,.08)!important;
  color:#e4c16c!important;
  text-align:left!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  display:block!important;
  font-size:9px!important;
  letter-spacing:.13em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  display:block!important;
  height:3px!important;
  margin-top:7px!important;
  border-radius:99px!important;
  background:rgba(255,255,255,.14)!important;
  overflow:hidden!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge i{
  display:block!important;
  height:100%!important;
  border-radius:99px!important;
  background:linear-gradient(90deg,#b88435,#e5c071)!important;
}
.rdLevelModalBox{max-width:340px!important;text-align:left!important;}
.rdLevelModalBox h2{margin:6px 0 10px!important;}
.rdLevelLegendRows{display:grid!important;gap:8px!important;margin:14px 0 18px!important;}
.rdLevelLegendRows div{display:flex!important;justify-content:space-between!important;gap:12px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;padding-bottom:7px!important;}
.rdLevelLegendRows b{font-size:12px!important;color:#fff!important;}
.rdLevelLegendRows span{font-size:11px!important;color:rgba(235,216,169,.78)!important;text-align:right!important;}

/* Composer stays one single ChatGPT-like mask while recording */
.praxisCoachPage .rdInlineVoicePanel{display:none!important;}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 46px!important;
  gap:8px!important;
  align-items:center!important;
  height:52px!important;
  padding:0!important;
}
.praxisCoachPage .chatInputRow input{
  height:46px!important;
  border-radius:999px!important;
  padding:0 47px 0 18px!important;
  font-size:15px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(13,13,14,.98)!important;
  color:rgba(245,242,238,.96)!important;
}
.praxisCoachPage .chatInputRow.voiceActive input{
  color:rgba(245,242,238,.78)!important;
  border-color:rgba(201,168,76,.32)!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  display:none!important;
  position:absolute!important;
  left:18px!important;
  right:54px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  height:26px!important;
  pointer-events:none!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:3px!important;
  opacity:.42!important;
  overflow:hidden!important;
  z-index:2!important;
}
.praxisCoachPage .chatInputRow.voiceActive .rdInputVoiceWaves{display:flex!important;}
.praxisCoachPage .rdInputVoiceWaves span{
  width:3px!important;
  min-width:3px!important;
  border-radius:99px!important;
  background:rgba(238,238,238,.42)!important;
  height:calc(7px + (var(--rdVoiceLevel,.25) * 21px))!important;
  animation:rdV29Wave 1.15s ease-in-out infinite!important;
  animation-delay:calc(var(--i,0) * .045s)!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){height:calc(9px + (var(--rdVoiceLevel,.25) * 16px))!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){height:calc(5px + (var(--rdVoiceLevel,.25) * 24px))!important;}
@keyframes rdV29Wave{0%,100%{transform:scaleY(.55);opacity:.25}45%{transform:scaleY(1.25);opacity:.85}}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  position:absolute!important;
  right:58px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:50%!important;
  background:transparent!important;
  border:0!important;
  color:rgba(170,165,158,.70)!important;
  box-shadow:none!important;
  z-index:4!important;
}
.praxisCoachPage .chatInputRow.voiceActive .rdVoiceBtn svg{display:none!important;}
.praxisCoachPage .chatInputRow.voiceActive .rdVoiceBtn:before{
  content:'■'!important;
  display:grid!important;
  place-items:center!important;
  width:26px!important;
  height:26px!important;
  border-radius:9px!important;
  color:rgba(255,255,255,.92)!important;
  background:rgba(255,255,255,.08)!important;
  font-size:9px!important;
}
.praxisCoachPage .chatInputRow > button:not(.rdVoiceBtn){
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:50%!important;
  background:rgba(244,244,244,.94)!important;
  color:#111!important;
}
@media(max-height:760px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:390px!important;height:390px!important;min-height:390px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:102px!important;}
  .rdPraxisFinal22 .rdMasterProgressCard{height:248px!important;min-height:248px!important;flex-basis:248px!important;}
  .rdPraxisFinal22 .rdMasterProgressRow{height:48px!important;min-height:48px!important;}
  .rdPraxisFinal22 .rdMasterSoloStartBtn{height:58px!important;min-height:58px!important;}
  .rdPraxisFinal22 .rdPraxisLevelBadge{top:84px!important;}
}

/* ===== RD V30 MICRO-POLISH: dashboard spacing, level legend wording support, stable inline voice ===== */
.rdMasterPraxisDash.rdPraxisFinal22{
  gap:16px!important;
}
.rdPraxisFinal22 .rdMasterHero{
  flex-basis:clamp(424px,51.5svh,476px)!important;
  height:clamp(424px,51.5svh,476px)!important;
  min-height:424px!important;
  max-height:476px!important;
}
.rdPraxisFinal22 .rdMasterGreeting{
  bottom:94px!important;
}
.rdPraxisFinal22 .rdMasterMetrics{
  bottom:2px!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge{
  width:98px!important;
  top:88px!important;
  right:18px!important;
  padding:10px 11px!important;
  border-radius:18px!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:10.5px!important;
  letter-spacing:.16em!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  height:4px!important;
  margin-top:9px!important;
}
.rdLevelModalBox .cleanTag{display:none!important;}
.rdLevelModalBox h2{margin-top:0!important;}
.rdLevelFineprint{
  margin:2px 0 16px!important;
  font-size:12px!important;
  line-height:1.45!important;
  color:rgba(236,229,215,.62)!important;
}

/* Keep the normal ChatGPT-like composer visible while recording; no separate voice window. */
.praxisCoachPage .rdInlineVoicePanel,
.praxisCoachPage .rdInlineVoicePanel:not(.hidden){
  display:none!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .chatInputRow.rdVoiceInputRow,
.praxisCoachPage .chatInputRow.rdVoiceInputRow.voiceActive{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 42px!important;
  height:46px!important;
  gap:7px!important;
}
.praxisCoachPage .chatInputRow.rdVoiceInputRow{
  grid-template-columns:minmax(0,1fr) 42px!important;
  height:46px!important;
  gap:7px!important;
}
.praxisCoachPage .chatInputRow input,
.praxisCoachPage .chatInputRow.rdVoiceInputRow input{
  height:42px!important;
  min-height:34px!important;
  border-radius:999px!important;
  font-size:14.5px!important;
  padding:0 43px 0 16px!important;
}
.praxisCoachPage .chatInputRow .rdVoiceBtn{
  right:50px!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
}
.praxisCoachPage .chatInputRow > button:not(.rdVoiceBtn),
.praxisCoachPage .chatInputRow.rdVoiceInputRow > button:not(.rdVoiceBtn){
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:50%!important;
}
.praxisCoachPage .chatInputRow.voiceActive input::placeholder{color:transparent!important;}
.praxisCoachPage .chatInputRow.voiceActive .rdInputVoiceWaves{
  display:flex!important;
  left:16px!important;
  right:47px!important;
  height:24px!important;
  opacity:.52!important;
}
.praxisCoachPage .chatInputRow.voiceActive .rdVoiceBtn:before{
  width:24px!important;
  height:24px!important;
  border-radius:8px!important;
}
@media(max-height:760px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:404px!important;height:404px!important;min-height:404px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:92px!important;}
  .rdPraxisFinal22 .rdMasterMetrics{bottom:0!important;}
  .rdPraxisFinal22 .rdPraxisLevelBadge{top:82px!important;width:96px!important;}
}

/* ===== RD V31 FINAL: clean rebuilt composer + level system + micro dashboard spacing ===== */
.rdPraxisFinal22 .rdMasterHero{
  flex-basis:clamp(436px,53svh,492px)!important;
  height:clamp(436px,53svh,492px)!important;
  min-height:436px!important;
  max-height:492px!important;
}
.rdPraxisFinal22 .rdMasterGreeting{bottom:86px!important;}
.rdPraxisFinal22 .rdMasterMetrics{bottom:-8px!important;}
.rdMasterPraxisDash.rdPraxisFinal22{gap:18px!important;}
.rdPraxisFinal22 .rdPraxisLevelBadge{
  width:112px!important;
  top:86px!important;
  right:17px!important;
  padding:12px 13px!important;
  border-radius:20px!important;
  background:rgba(5,5,6,.50)!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge strong{font-size:11.5px!important;letter-spacing:.18em!important;}
.rdPraxisFinal22 .rdPraxisLevelBadge span{height:5px!important;margin-top:10px!important;}
.rdLevelModalSimple{max-width:348px!important;padding:25px 24px 24px!important;}
.rdLevelModalSimple h2{font-size:34px!important;letter-spacing:.11em!important;margin:0 0 12px!important;}
.rdLevelModalSimple p{font-size:14px!important;line-height:1.55!important;color:rgba(238,232,222,.70)!important;}
.rdLevelModalSimple .rdLevelLegendRows{gap:7px!important;margin:16px 0!important;}
.rdLevelModalSimple .rdLevelLegendRows div{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;}
.rdLevelModalSimple .rdLevelLegendRows b{font-size:12.5px!important;line-height:1.25!important;}
.rdLevelModalSimple .rdLevelLegendRows span{font-size:11.5px!important;line-height:1.35!important;text-align:right!important;}
.rdLevelModalSimple .rdLevelFineprint{font-size:11.5px!important;line-height:1.5!important;margin:12px 0 18px!important;}

/* Remove every legacy composer/voice implementation and rebuild from one source. */
.praxisCoachPage .rdInlineVoicePanel,
.praxisCoachPage .rdInlineVoicePanel:not(.hidden),
.praxisCoachPage .chatInputRow.rdVoiceInputRow{display:none!important;}
.praxisCoachPage .rdComposerWrap,
.praxisCoachPage .rdComposerWrap.rdComposerV31,
.praxisCoachPage .rdComposerWrap.voiceActive{
  flex:0 0 auto!important;
  position:relative!important;
  margin:0!important;
  padding:10px 0 calc(env(safe-area-inset-bottom) + 10px)!important;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.96) 26%,#000 100%)!important;
  border-top:1px solid rgba(255,255,255,.075)!important;
  z-index:20!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow.rdCleanComposer,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanComposer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:10px!important;
  align-items:center!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  padding:0!important;
  margin:0!important;
}
.praxisCoachPage .rdCleanInputShell{
  position:relative!important;
  height:48px!important;
  min-height:48px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(7,7,8,.96)!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.65) inset,0 10px 24px rgba(0,0,0,.34)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell{
  border-color:rgba(201,168,76,.42)!important;
  box-shadow:0 0 0 1px rgba(201,168,76,.10) inset,0 10px 24px rgba(0,0,0,.34),0 0 16px rgba(201,168,76,.08)!important;
}
.praxisCoachPage .rdCleanInputShell input,
.praxisCoachPage #praxisInput{
  display:block!important;
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  line-height:46px!important;
  border:0!important;
  border-radius:20px!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  padding:0 48px 0 18px!important;
  color:rgba(245,242,238,.96)!important;
  font-size:15px!important;
  font-weight:400!important;
  letter-spacing:.01em!important;
}
.praxisCoachPage #praxisInput::placeholder{color:rgba(176,172,165,.52)!important;}
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput{
  color:rgba(245,242,238,.20)!important;
  caret-color:transparent!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput::placeholder{color:transparent!important;}
.praxisCoachPage .rdInputVoiceWaves,
.praxisCoachPage #rdInputVoiceWaves{
  display:none!important;
  position:absolute!important;
  left:18px!important;
  right:50px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  height:26px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:3px!important;
  pointer-events:none!important;
  overflow:hidden!important;
  z-index:2!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves{display:flex!important;}
.praxisCoachPage .rdInputVoiceWaves span{
  display:block!important;
  width:3px!important;
  min-width:3px!important;
  border-radius:99px!important;
  background:rgba(235,235,235,.45)!important;
  height:calc(6px + (var(--rdVoiceLevel,.25) * 18px))!important;
  animation:rdV31Wave 1.05s ease-in-out infinite!important;
  animation-delay:calc(var(--i,0) * .035s)!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){height:calc(8px + (var(--rdVoiceLevel,.25) * 14px))!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){height:calc(5px + (var(--rdVoiceLevel,.25) * 21px))!important;}
@keyframes rdV31Wave{0%,100%{transform:scaleY(.52);opacity:.22}45%{transform:scaleY(1.22);opacity:.78}}
.praxisCoachPage .rdVoiceBtn{
  position:absolute!important;
  right:7px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  border:0!important;
  border-radius:14px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  color:rgba(178,174,168,.76)!important;
  box-shadow:none!important;
  z-index:4!important;
}
.praxisCoachPage .rdVoiceBtn .rdStopIcon{display:none!important;width:11px!important;height:11px!important;border-radius:3px!important;background:rgba(245,245,245,.92)!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn{background:rgba(255,255,255,.07)!important;color:#fff!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdMicIcon{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdStopIcon{display:block!important;}
.praxisCoachPage .rdSendBtn,
.praxisCoachPage .rdCleanComposer > .rdSendBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdSendBtn{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  background:linear-gradient(180deg,rgba(47,48,50,.98),rgba(21,21,22,.98))!important;
  color:#fff!important;
  box-shadow:0 9px 22px rgba(0,0,0,.34),0 1px 0 rgba(255,255,255,.08) inset!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdSendBtn{
  border-color:rgba(201,168,76,.30)!important;
  color:#fff!important;
}
.praxisCoachPage .chatMessages{padding-bottom:18px!important;}
@media(max-height:760px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:418px!important;height:418px!important;min-height:418px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:84px!important;}
  .rdPraxisFinal22 .rdMasterMetrics{bottom:-10px!important;}
  .rdPraxisFinal22 .rdPraxisLevelBadge{top:80px!important;width:108px!important;}
  .praxisCoachPage .rdCleanComposer,.praxisCoachPage #rdChatInputRow.rdCleanComposer{height:46px!important;grid-template-columns:minmax(0,1fr) 46px!important;gap:9px!important;}
  .praxisCoachPage .rdCleanInputShell,.praxisCoachPage .rdSendBtn{height:46px!important;min-height:46px!important;}
}

/* ===== RD V32 FINAL: composer rebuilt lower, centered, repeatable voice wave ===== */
.praxisCoachPage .rdComposerWrap,
.praxisCoachPage .rdComposerWrap.rdComposerV31,
.praxisCoachPage .rdComposerWrap.voiceActive{
  padding:7px 0 max(7px, env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.92) 18%,#000 100%)!important;
  border-top:1px solid rgba(255,255,255,.075)!important;
  min-height:62px!important;
  display:flex!important;
  align-items:flex-end!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow.rdCleanComposer,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanComposer{
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:10px!important;
  align-items:center!important;
  margin:0!important;
}
.praxisCoachPage .rdCleanInputShell{
  height:48px!important;
  min-height:48px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
}
.praxisCoachPage .rdCleanInputShell input,
.praxisCoachPage #praxisInput{
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  line-height:48px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:flex!important;
  align-items:center!important;
  transform:translateY(0)!important;
}
.praxisCoachPage #praxisInput::placeholder{
  line-height:48px!important;
  transform:translateY(0)!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput,
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput{
  color:transparent!important;
  text-shadow:none!important;
  caret-color:transparent!important;
}
.praxisCoachPage .rdInputVoiceWaves,
.praxisCoachPage #rdInputVoiceWaves{
  left:18px!important;
  right:52px!important;
  height:30px!important;
  gap:3px!important;
  opacity:.88!important;
  justify-content:flex-start!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%)!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%)!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves{
  display:flex!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:2.5px!important;
  min-width:2.5px!important;
  border-radius:999px!important;
  background:rgba(220,220,220,.48)!important;
  height:calc(5px + (var(--rdVoiceLevel,.25) * 24px))!important;
  opacity:.68!important;
  transform-origin:center!important;
  animation:rdV32ChatGPTWave 1.05s ease-in-out infinite!important;
  animation-delay:calc(var(--i,0) * -0.028s)!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){height:calc(7px + (var(--rdVoiceLevel,.25) * 18px))!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){height:calc(4px + (var(--rdVoiceLevel,.25) * 29px))!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(5n){height:calc(9px + (var(--rdVoiceLevel,.25) * 13px))!important;}
@keyframes rdV32ChatGPTWave{
  0%,100%{transform:scaleY(.46);opacity:.28}
  35%{transform:scaleY(calc(.75 + var(--rdVoiceLevel,.25) * 1.8));opacity:.86}
  62%{transform:scaleY(calc(.55 + var(--rdVoiceLevel,.25) * 1.05));opacity:.58}
}
.praxisCoachPage .rdVoiceBtn{
  right:8px!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  border-radius:13px!important;
}
.praxisCoachPage .rdSendBtn,
.praxisCoachPage .rdCleanComposer > .rdSendBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdSendBtn{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  border-radius:18px!important;
}
.praxisCoachPage .chatMessages{padding-bottom:12px!important;}
@media(max-width:420px){
  .praxisCoachPage .rdComposerWrap,.praxisCoachPage .rdComposerWrap.voiceActive{min-height:60px!important;padding-top:6px!important;padding-bottom:max(6px, env(safe-area-inset-bottom))!important;}
  .praxisCoachPage .rdCleanComposer,.praxisCoachPage #rdChatInputRow.rdCleanComposer{height:46px!important;min-height:46px!important;max-height:46px!important;grid-template-columns:minmax(0,1fr) 46px!important;gap:9px!important;}
  .praxisCoachPage .rdCleanInputShell,.praxisCoachPage .rdCleanInputShell input,.praxisCoachPage #praxisInput{height:46px!important;min-height:46px!important;max-height:46px!important;line-height:46px!important;}
  .praxisCoachPage .rdSendBtn,.praxisCoachPage .rdCleanComposer > .rdSendBtn{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;}
  .praxisCoachPage .rdInputVoiceWaves{height:28px!important;right:50px!important;}
}

/* =========================================================
   RESET DISCIPLINE — COACH CORE VFINAL CSS
   Final override: removes legacy composer conflicts by making
   the new composer/page classes the only visible layer.
   ========================================================= */
.rdMasterGreeting h1{transform:translateY(10px)!important;}
.rdMasterMetrics,.rdMasterProgressCard,.rdMasterSoloStartBtn{transform:translateY(12px)!important;}
.rdLevelBadge,.rdPraxisLevelBadge{display:flex!important;align-items:center!important;justify-content:center!important;min-width:72px!important;min-height:34px!important;font-size:13px!important;letter-spacing:.08em!important;text-align:center!important;}
.rdTodoBadge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:19px!important;height:19px!important;margin-left:6px!important;border-radius:999px!important;background:linear-gradient(180deg,#e3bd6d,#9b7130)!important;color:#080808!important;font-size:11px!important;font-weight:900!important;vertical-align:middle!important;box-shadow:0 0 18px rgba(212,160,80,.35)!important;}
.praxisCoachPage.rdCoachVFinalPage{height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;background:#030303!important;display:flex!important;flex-direction:column!important;padding:0!important;}
.rdCoachVFinal{height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;background:radial-gradient(circle at 50% 0%,rgba(151,104,43,.22),transparent 42%),#040404!important;}
.rdCoachTop{flex:0 0 auto!important;display:flex!important;gap:12px!important;align-items:center!important;padding:calc(env(safe-area-inset-top) + 12px) 16px 10px!important;border-bottom:1px solid rgba(203,151,78,.13)!important;background:linear-gradient(180deg,rgba(10,8,5,.94),rgba(5,5,5,.76))!important;}
.rdCoachTop img{width:46px!important;height:46px!important;border-radius:16px!important;object-fit:cover!important;border:1px solid rgba(210,164,90,.32)!important;}
.rdCoachTop h1{margin:2px 0 2px!important;font-size:18px!important;line-height:1!important;color:#f1e4c8!important;letter-spacing:.04em!important;text-transform:uppercase!important;}
.rdCoachTop p{margin:0!important;font-size:12px!important;color:rgba(224,212,188,.66)!important;}
.rdCoachChatShell{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0 13px!important;}
.rdCoachChatShell .chatMessages{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:14px 0 8px!important;}
.rdCoachChatShell .coachBottomActionHost{flex:0 0 auto!important;}
.praxisCoachPage .rdComposerWrap{flex:0 0 auto!important;margin:0!important;padding:8px 0 max(8px,env(safe-area-inset-bottom))!important;background:linear-gradient(180deg,rgba(4,4,4,0),rgba(4,4,4,.98) 30%)!important;min-height:62px!important;}
.praxisCoachPage .rdCleanComposer{display:grid!important;grid-template-columns:1fr 48px!important;align-items:center!important;gap:9px!important;width:100%!important;max-width:760px!important;margin:0 auto!important;}
.praxisCoachPage .rdCleanInputShell{height:48px!important;min-height:48px!important;max-height:48px!important;display:flex!important;align-items:center!important;position:relative!important;border-radius:16px!important;background:linear-gradient(180deg,rgba(26,24,22,.96),rgba(10,10,10,.98))!important;border:1px solid rgba(206,155,82,.30)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 34px rgba(0,0,0,.38)!important;overflow:hidden!important;padding:0 48px 0 16px!important;}
.praxisCoachPage #praxisInput{height:48px!important;min-height:48px!important;max-height:48px!important;line-height:48px!important;padding:0!important;margin:0!important;width:100%!important;border:0!important;outline:0!important;background:transparent!important;color:#eee5d4!important;font-size:15px!important;display:block!important;vertical-align:middle!important;}
.praxisCoachPage #praxisInput::placeholder{color:rgba(191,181,160,.56)!important;line-height:48px!important;}
.praxisCoachPage .rdVoiceBtn{position:absolute!important;right:7px!important;top:50%!important;transform:translateY(-50%)!important;width:34px!important;height:34px!important;min-width:34px!important;border-radius:12px!important;border:1px solid rgba(214,165,88,.22)!important;background:rgba(255,255,255,.035)!important;color:#d8ba7b!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;}
.praxisCoachPage .rdSendBtn{width:48px!important;height:48px!important;min-width:48px!important;border-radius:16px!important;border:1px solid rgba(225,176,96,.38)!important;background:linear-gradient(180deg,#d8aa5a,#8d6428)!important;color:#070707!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;box-shadow:0 14px 30px rgba(165,110,35,.28)!important;}
.praxisCoachPage .rdInputVoiceWaves{display:none!important;position:absolute!important;left:16px!important;right:52px!important;top:50%!important;height:34px!important;transform:translateY(-50%)!important;align-items:center!important;gap:3px!important;overflow:hidden!important;pointer-events:none!important;}
.praxisCoachPage .rdInputVoiceWaves span{display:block!important;width:3px!important;min-width:3px!important;border-radius:999px!important;background:rgba(232,210,172,.62)!important;height:calc(6px + (var(--rdVoiceLevel,.35) * 22px))!important;animation:rdFinalWave 1.22s ease-in-out infinite!important;animation-delay:calc(var(--i) * -0.045s)!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){height:calc(8px + (var(--rdVoiceLevel,.35) * 16px))!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){height:calc(5px + (var(--rdVoiceLevel,.35) * 27px))!important;}
@keyframes rdFinalWave{0%,100%{transform:scaleY(.38);opacity:.28}42%{transform:scaleY(1.18);opacity:.95}68%{transform:scaleY(.65);opacity:.55}}
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput,.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput{color:transparent!important;caret-color:transparent!important;}
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput::placeholder,.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput::placeholder{color:transparent!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves,.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves{display:flex!important;}
.praxisCoachPage .rdStopIcon{display:none!important;width:11px!important;height:11px!important;border-radius:3px!important;background:#f6ead4!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdMicIcon,.praxisCoachPage .rdComposerWrap.voiceActive .rdMicIcon{display:none!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdStopIcon,.praxisCoachPage .rdComposerWrap.voiceActive .rdStopIcon{display:block!important;}
.rdTodoActionBubble{gap:10px!important;}
.rdCoachTodoModal{max-width:420px!important;border-radius:24px!important;background:linear-gradient(180deg,rgba(20,18,15,.98),rgba(6,6,6,.98))!important;border:1px solid rgba(219,168,91,.30)!important;box-shadow:0 30px 80px rgba(0,0,0,.72)!important;}
.rdCoachTodoModal h2{color:#f0dfbd!important;text-transform:uppercase!important;letter-spacing:.05em!important;font-size:20px!important;}
.rdCoachTodoModal ol{padding-left:20px!important;color:#efe7d8!important;line-height:1.55!important;}
.rdTodoHint{font-size:12px!important;color:rgba(225,213,190,.66)!important;margin-top:12px!important;}
.rdTodoModalActions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:14px!important;}
.rdTodoFolder{margin:14px 0!important;padding:14px!important;border-radius:22px!important;border:1px solid rgba(206,155,82,.20)!important;background:rgba(12,12,12,.68)!important;}
.rdFolderHead{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;margin-bottom:10px!important;}
.rdFolderHead h2{margin:0!important;color:#efdcb9!important;font-size:16px!important;text-transform:uppercase!important;letter-spacing:.06em!important;}
.rdFolderHead small{color:rgba(225,212,188,.54)!important;font-size:11px!important;text-align:right!important;}
.rdCoachTodoItem{display:grid!important;grid-template-columns:1fr auto!important;gap:10px!important;align-items:center!important;padding:10px 0!important;border-top:1px solid rgba(255,255,255,.06)!important;}
.rdCoachTodoItem:first-of-type{border-top:0!important;}
.rdCoachTodoItem>button:first-child{all:unset!important;cursor:pointer!important;display:grid!important;gap:3px!important;}
.rdCoachTodoItem b{color:#f1e4c8!important;font-size:14px!important;}
.rdCoachTodoItem span,.rdCoachTodoItem small{color:rgba(225,212,188,.58)!important;font-size:12px!important;}
.rdCoachTodoItem.unread b:before{content:'•';color:#d6a24f;margin-right:6px;}
.rdCoachTodoItem.done{opacity:.55!important;}
.rdCoachTodoItem div button{width:30px!important;height:30px!important;border-radius:10px!important;border:1px solid rgba(214,165,88,.22)!important;background:rgba(255,255,255,.04)!important;color:#d7b06a!important;}
.rdEmptyText{color:rgba(225,212,188,.55)!important;font-size:13px!important;}

/* =========================================================
   RESET DISCIPLINE — FINAL VISUAL RESTORE v34
   Restores dashboard master spacing and fixes fixed-nav chat layout.
   ========================================================= */
.rdMasterPraxisPage{background:#030303!important;overflow-y:auto!important;}
.rdMasterPraxisDash.rdPraxisFinal22{gap:14px!important;padding:0 16px max(18px,env(safe-area-inset-bottom,0px))!important;}
.rdPraxisFinal22 .rdMasterHero{flex-basis:390px!important;height:390px!important;min-height:390px!important;margin-bottom:2px!important;}
.rdPraxisFinal22 .rdMasterGreeting{bottom:118px!important;left:18px!important;right:18px!important;text-align:center!important;transform:none!important;}
.rdPraxisFinal22 .rdMasterGreeting h1{transform:none!important;font-size:clamp(27px,6.4vw,32px)!important;line-height:1.02!important;}
.rdPraxisFinal22 .rdMasterGreeting p{font-size:clamp(13px,3.1vw,14.5px)!important;margin-top:8px!important;}
.rdPraxisFinal22 .rdMasterMetrics{bottom:22px!important;left:14px!important;right:14px!important;gap:8px!important;transform:none!important;}
.rdPraxisFinal22 .rdMasterSoloStartBtn{height:64px!important;min-height:64px!important;transform:none!important;margin-top:0!important;}
.rdPraxisFinal22 .rdMasterProgressCard{transform:none!important;height:auto!important;min-height:252px!important;flex-basis:auto!important;margin-top:0!important;}
.rdPraxisFinal22 .rdPraxisLevelBadge{top:calc(env(safe-area-inset-top,0px) + 74px)!important;right:18px!important;min-width:116px!important;height:56px!important;border-radius:20px!important;display:flex!important;flex-direction:column!important;gap:7px!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
.rdPraxisFinal22 .rdPraxisLevelBadge strong{line-height:1!important;}
.rdPraxisFinal22 .rdPraxisLevelBadge span{display:block!important;width:72px!important;height:6px!important;border-radius:999px!important;background:rgba(255,255,255,.16)!important;overflow:hidden!important;}
.rdPraxisFinal22 .rdPraxisLevelBadge span i{display:block!important;height:100%!important;border-radius:999px!important;background:linear-gradient(90deg,#e6bd67,#9c6c2f)!important;}
@media(max-width:430px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:382px!important;height:382px!important;min-height:382px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:116px!important;}
  .rdPraxisFinal22 .rdMasterMetrics{bottom:24px!important;}
}
@media(max-width:380px){
  .rdPraxisFinal22 .rdMasterHero{flex-basis:360px!important;height:360px!important;min-height:360px!important;}
  .rdPraxisFinal22 .rdMasterGreeting{bottom:112px!important;}
}
main.screen.praxisCoachPage{height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;padding:0!important;background:#030303!important;}
.praxisCoachPage .topbar.rdGlobalTopbar{position:fixed!important;top:calc(env(safe-area-inset-top,0px) + 14px)!important;left:0!important;right:0!important;height:38px!important;z-index:1000!important;background:transparent!important;}
.praxisCoachPage .rdCoachVFinal{box-sizing:border-box!important;height:100dvh!important;max-height:100dvh!important;padding-top:calc(env(safe-area-inset-top,0px) + 62px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;background:radial-gradient(circle at 50% 0%,rgba(151,104,43,.18),transparent 36%),#040404!important;}
.praxisCoachPage .rdCoachTop{flex:0 0 auto!important;padding:10px 18px 12px!important;margin:0!important;display:flex!important;align-items:center!important;gap:12px!important;border-bottom:1px solid rgba(203,151,78,.14)!important;background:linear-gradient(180deg,rgba(6,6,6,.98),rgba(6,6,6,.78))!important;}
.praxisCoachPage .rdCoachTop img{width:48px!important;height:48px!important;border-radius:15px!important;}
.praxisCoachPage .rdCoachTop h1{font-size:25px!important;line-height:.95!important;margin:2px 0 3px!important;letter-spacing:.06em!important;color:#fff5df!important;}
.praxisCoachPage .rdCoachTop p{font-size:12.5px!important;margin:0!important;color:rgba(230,220,200,.62)!important;}
.praxisCoachPage .rdCoachChatShell{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0 15px!important;}
.praxisCoachPage .rdCoachChatShell .chatMessages{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:16px 0 10px!important;scroll-padding-top:16px!important;}
.praxisCoachPage .coachOpenText{font-size:19px!important;line-height:1.62!important;color:rgba(245,240,231,.92)!important;}
.praxisCoachPage .chatBubble.user{font-size:16px!important;line-height:1.42!important;}
.praxisCoachPage .rdComposerWrap{flex:0 0 auto!important;margin:0!important;padding:9px 0 max(11px,env(safe-area-inset-bottom))!important;background:linear-gradient(180deg,rgba(4,4,4,0),rgba(4,4,4,.98) 34%)!important;min-height:68px!important;}
.praxisCoachPage .rdCleanComposer{height:50px!important;min-height:50px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 50px!important;gap:9px!important;align-items:center!important;width:100%!important;margin:0 auto!important;}
.praxisCoachPage .rdCleanInputShell{height:50px!important;min-height:50px!important;max-height:50px!important;border-radius:17px!important;display:flex!important;align-items:center!important;padding:0 50px 0 17px!important;}
.praxisCoachPage #praxisInput{height:50px!important;line-height:50px!important;font-size:15px!important;display:block!important;}
.praxisCoachPage .rdSendBtn{width:50px!important;height:50px!important;min-width:50px!important;border-radius:17px!important;}
.praxisCoachPage .rdVoiceBtn{width:35px!important;height:35px!important;right:7px!important;border-radius:12px!important;}

/* =========================================================
   RESET DISCIPLINE — V35 CHAT / TODO POLISH
   ========================================================= */
.praxisCoachPage.rdCoachVFinalPage{
  height:100dvh!important; max-height:100dvh!important; overflow:hidden!important;
  padding:0!important; background:#030303!important;
}
.praxisCoachPage .rdCoachVFinal{
  height:100dvh!important; max-height:100dvh!important; overflow:hidden!important;
  display:flex!important; flex-direction:column!important;
  padding-top:calc(env(safe-area-inset-top,0px) + 54px)!important;
  background:radial-gradient(circle at 50% 0%,rgba(151,104,43,.15),transparent 32%),#040404!important;
}
.praxisCoachPage .topbar.rdGlobalTopbar,.praxisCoachPage .topNav{
  z-index:50!important;
}
.praxisCoachPage .rdCoachTop{
  flex:0 0 auto!important;
  margin:0!important; padding:18px 34px 18px!important;
  display:grid!important; grid-template-columns:58px 1fr!important; gap:14px!important;
  border-bottom:1px solid rgba(214,165,88,.13)!important;
  background:linear-gradient(180deg,rgba(4,4,4,.92),rgba(4,4,4,.78))!important;
}
.praxisCoachPage .rdCoachTop img{width:58px!important;height:58px!important;border-radius:18px!important;align-self:center!important;}
.praxisCoachPage .rdCoachTop .miniLabel{font-size:10px!important;letter-spacing:.21em!important;line-height:1.1!important;color:#d3a55f!important;}
.praxisCoachPage .rdCoachTop h1{font-size:clamp(25px,7vw,36px)!important;line-height:.94!important;letter-spacing:.105em!important;margin:3px 0 0!important;}
.praxisCoachPage .rdCoachTop p{font-size:12.5px!important;line-height:1.25!important;margin:6px 0 0!important;color:rgba(238,231,218,.62)!important;}
.praxisCoachPage .rdCoachChatShell{
  flex:1 1 auto!important; min-height:0!important; overflow:hidden!important;
  display:flex!important; flex-direction:column!important;
  padding:0 34px!important;
}
.praxisCoachPage .rdCoachChatShell .chatMessages{
  flex:1 1 auto!important; min-height:0!important; overflow-y:auto!important; -webkit-overflow-scrolling:touch!important;
  padding:22px 0 4px!important; scroll-padding-top:24px!important;
}
.praxisCoachPage .coachOpenText,
.praxisCoachPage .coachMsgRow .coachOpenText,
.praxisCoachPage .chatBubble.coach:not(.actionBubble),
.praxisCoachPage .coachMsgRow.coachOpenRow .coachOpenText{
  font-size:clamp(22px,6.2vw,28px)!important;
  line-height:1.53!important;
  letter-spacing:.012em!important;
  color:rgba(245,241,234,.92)!important;
}
.praxisCoachPage .chatBubble.user{
  font-size:clamp(18px,5.1vw,22px)!important;
  line-height:1.42!important;
  padding:17px 22px!important;
  max-width:min(82%,620px)!important;
  border-radius:22px!important;
}
.praxisCoachPage .coachMsgRow{margin:18px 0!important;}
.praxisCoachPage .coachMsgRow.coachOpenRow{margin:22px 0!important;}
.praxisCoachPage .actionRow{margin:20px 0!important;}
.praxisCoachPage .rdInlineCheckCard{
  width:min(100%,590px)!important; min-height:58px!important;
  padding:10px 16px!important; border-radius:22px!important;
  display:grid!important; grid-template-columns:1fr auto!important; gap:13px!important; align-items:center!important;
}
.praxisCoachPage .rdInlineCheckText{font-size:14px!important;letter-spacing:.08em!important;white-space:nowrap!important;}
.praxisCoachPage .inlineCoachAction{height:42px!important;min-height:34px!important;border-radius:19px!important;font-size:13px!important;letter-spacing:.16em!important;padding:0 20px!important;}
.praxisCoachPage .coachBottomActionHost{margin:8px 0 0!important;}
.praxisCoachPage .coachBottomActionHost .card,
.praxisCoachPage .coachStartActionCard{
  font-size:14px!important; border-radius:20px!important;
}
.praxisCoachPage .rdComposerWrap{
  flex:0 0 auto!important;
  margin:0!important;
  padding:6px 0 max(5px,env(safe-area-inset-bottom))!important;
  min-height:58px!important;
  background:linear-gradient(180deg,rgba(4,4,4,0),rgba(4,4,4,.98) 28%)!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow.rdCleanComposer{
  height:46px!important; min-height:46px!important; max-height:46px!important;
  display:grid!important; grid-template-columns:minmax(0,1fr) 46px!important; gap:9px!important; align-items:center!important;
  width:100%!important; max-width:760px!important; margin:0 auto!important;
}
.praxisCoachPage .rdCleanInputShell{
  height:46px!important; min-height:46px!important; border-radius:19px!important;
  display:flex!important; align-items:center!important;
  padding:0 9px 0 18px!important;
}
.praxisCoachPage #praxisInput{
  height:46px!important; min-height:46px!important; line-height:46px!important;
  font-size:17px!important; padding:0 44px 0 0!important; display:block!important;
}
.praxisCoachPage #praxisInput::placeholder{font-size:17px!important;line-height:46px!important;}
.praxisCoachPage .rdVoiceBtn{width:36px!important;height:36px!important;border-radius:15px!important;right:5px!important;}
.praxisCoachPage .rdSendBtn,
.praxisCoachPage .rdCleanComposer > .rdSendBtn{
  width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;border-radius:18px!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important; right:50px!important; height:24px!important; align-items:center!important; gap:3px!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:3px!important; min-height:5px!important; border-radius:8px!important;
  background:linear-gradient(180deg,rgba(230,196,126,.95),rgba(166,113,45,.60))!important;
  transform:scaleY(calc(.35 + var(--rdVoiceLevel,.25) * (0.35 + (var(--i) % 7) * .08)))!important;
  animation:rdVoicePulseV35 .72s ease-in-out infinite alternate!important;
  animation-delay:calc(var(--i) * -32ms)!important;
}
@keyframes rdVoicePulseV35{from{opacity:.35;transform:scaleY(calc(.25 + var(--rdVoiceLevel,.25) * .7));}to{opacity:.95;transform:scaleY(calc(.55 + var(--rdVoiceLevel,.25) * 1.65));}}
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  border-color:rgba(222,172,91,.58)!important; box-shadow:0 0 0 1px rgba(222,172,91,.14),0 0 28px rgba(205,143,61,.14)!important;
}
.rdCoachTodoModal{max-width:410px!important;width:calc(100vw - 52px)!important;padding:28px 24px!important;}
.rdCoachTodoModal h2{font-size:18px!important;line-height:1.12!important;margin:18px 0 20px!important;}
.rdCoachTodoModal ol{font-size:15.5px!important;line-height:1.48!important;padding-left:22px!important;}
.rdCoachTodoModal li{margin:0 0 8px!important;}
.rdTodoHint{font-size:12.5px!important;line-height:1.45!important;margin-top:18px!important;}
.rdTodoModalActions{gap:12px!important;margin-top:22px!important;}
.rdTodoModalActions .btn{height:52px!important;font-size:12.5px!important;letter-spacing:.18em!important;}
.rdTodoFolderPage .rdSimpleTitle{padding-top:calc(env(safe-area-inset-top,0px) + 70px)!important;}
.rdTodoFolder{border-radius:24px!important;padding:18px 16px!important;}
.rdFolderHead h2{font-size:18px!important;}
.rdFolderHead small{font-size:12px!important;}
.rdCoachTodoItem b{font-size:14px!important;line-height:1.25!important;}
.rdTodoBadge{display:inline-grid!important;place-items:center!important;min-width:18px!important;height:18px!important;border-radius:999px!important;background:#d6a24f!important;color:#070605!important;font-size:11px!important;margin-left:6px!important;vertical-align:middle!important;}
@media (max-width:430px){
  .praxisCoachPage .rdCoachVFinal{padding-top:calc(env(safe-area-inset-top,0px) + 50px)!important;}
  .praxisCoachPage .rdCoachTop{padding:16px 34px 16px!important;grid-template-columns:54px 1fr!important;gap:12px!important;}
  .praxisCoachPage .rdCoachTop img{width:54px!important;height:54px!important;}
  .praxisCoachPage .rdCoachTop h1{font-size:30px!important;}
  .praxisCoachPage .rdCoachTop p{font-size:12px!important;}
  .praxisCoachPage .coachOpenText,.praxisCoachPage .coachMsgRow .coachOpenText,.praxisCoachPage .chatBubble.coach:not(.actionBubble){font-size:24px!important;line-height:1.5!important;}
  .praxisCoachPage .rdCoachChatShell{padding:0 34px!important;}
}

/* =========================================================
   RESET DISCIPLINE — V36 FINAL DAILY CHAT POLISH
   Compact chat typography, larger message area, lower composer.
   ========================================================= */
.praxisCoachPage .rdCoachVFinal{padding-top:calc(env(safe-area-inset-top,0px) + 48px)!important;}
.praxisCoachPage .rdCoachTop{padding:14px 34px 13px!important;grid-template-columns:52px 1fr!important;gap:12px!important;}
.praxisCoachPage .rdCoachTop img{width:52px!important;height:52px!important;border-radius:16px!important;}
.praxisCoachPage .rdCoachTop .miniLabel{font-size:9.5px!important;letter-spacing:.2em!important;line-height:1.05!important;}
.praxisCoachPage .rdCoachTop h1{font-size:clamp(24px,6.4vw,32px)!important;line-height:.95!important;letter-spacing:.105em!important;margin:2px 0 0!important;}
.praxisCoachPage .rdCoachTop p{font-size:12px!important;line-height:1.2!important;margin:5px 0 0!important;}
.praxisCoachPage .rdCoachChatShell{padding:0 34px!important;}
.praxisCoachPage .rdCoachChatShell .chatMessages{padding:15px 0 2px!important;}
.praxisCoachPage .coachOpenText,
.praxisCoachPage .coachMsgRow .coachOpenText,
.praxisCoachPage .chatBubble.coach:not(.actionBubble),
.praxisCoachPage .coachMsgRow.coachOpenRow .coachOpenText{
  font-size:16.5px!important;
  line-height:1.48!important;
  letter-spacing:.005em!important;
  color:rgba(245,241,234,.91)!important;
}
.praxisCoachPage .chatBubble.user{
  font-size:16.5px!important;
  line-height:1.42!important;
  padding:13px 16px!important;
  max-width:min(84%,620px)!important;
  border-radius:18px!important;
}
.praxisCoachPage .coachMsgRow{margin:12px 0!important;}
.praxisCoachPage .coachMsgRow.coachOpenRow{margin:13px 0!important;}
.praxisCoachPage .actionRow{margin:14px 0!important;}
.praxisCoachPage .rdInlineCheckCard{min-height:52px!important;padding:8px 14px!important;border-radius:19px!important;}
.praxisCoachPage .rdInlineCheckText{font-size:12px!important;letter-spacing:.08em!important;}
.praxisCoachPage .inlineCoachAction{height:38px!important;min-height:38px!important;font-size:12px!important;padding:0 18px!important;border-radius:17px!important;}
.praxisCoachPage .rdComposerWrap{
  padding:5px 0 max(3px,env(safe-area-inset-bottom))!important;
  min-height:53px!important;
  border-top:1px solid rgba(255,255,255,.075)!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow.rdCleanComposer{height:44px!important;min-height:44px!important;max-height:44px!important;grid-template-columns:minmax(0,1fr) 44px!important;gap:8px!important;}
.praxisCoachPage .rdCleanInputShell{height:44px!important;min-height:44px!important;border-radius:17px!important;padding:0 7px 0 16px!important;}
.praxisCoachPage #praxisInput{height:44px!important;line-height:44px!important;font-size:16px!important;padding:0 42px 0 0!important;}
.praxisCoachPage #praxisInput::placeholder{font-size:16px!important;line-height:44px!important;}
.praxisCoachPage .rdVoiceBtn{width:34px!important;height:34px!important;right:5px!important;border-radius:14px!important;}
.praxisCoachPage .rdSendBtn,.praxisCoachPage .rdCleanComposer>.rdSendBtn{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:17px!important;}
.praxisCoachPage .rdInputVoiceWaves{left:16px!important;right:48px!important;height:24px!important;display:none!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves,.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves{display:flex!important;}
.praxisCoachPage .rdInputVoiceWaves span{width:3px!important;min-width:3px!important;background:linear-gradient(180deg,rgba(230,196,126,.96),rgba(166,113,45,.62))!important;animation:rdVoicePulseV36 .58s ease-in-out infinite alternate!important;animation-delay:calc(var(--i) * -34ms)!important;height:calc(6px + (var(--rdVoiceLevel,.35) * 24px))!important;}
@keyframes rdVoicePulseV36{from{opacity:.32;transform:scaleY(calc(.26 + var(--rdVoiceLevel,.25) * .55));}to{opacity:.96;transform:scaleY(calc(.62 + var(--rdVoiceLevel,.25) * 1.7));}}
.rdCoachTodoModal ol{font-size:15px!important;line-height:1.43!important;}
@media(max-width:430px){
  .praxisCoachPage .rdCoachVFinal{padding-top:calc(env(safe-area-inset-top,0px) + 46px)!important;}
  .praxisCoachPage .rdCoachTop{padding:13px 34px 12px!important;}
  .praxisCoachPage .rdCoachTop h1{font-size:30px!important;}
  .praxisCoachPage .coachOpenText,.praxisCoachPage .coachMsgRow .coachOpenText,.praxisCoachPage .chatBubble.coach:not(.actionBubble){font-size:16.5px!important;line-height:1.48!important;}
  .praxisCoachPage .chatBubble.user{font-size:16.5px!important;}
}

/* ── v37 FINAL: Input bar lower + voice waveform guaranteed ── */
.praxisCoachPage .rdComposerWrap {
  padding-bottom: max(20px, env(safe-area-inset-bottom, 20px)) !important;
  background: linear-gradient(180deg, rgba(4,4,4,0) 0%, rgba(4,4,4,.99) 28%) !important;
}
.praxisCoachPage .rdCleanComposer {
  margin-bottom: 6px !important;
}
/* Voice waveform: guaranteed visible when recording */
.praxisCoachPage .rdInputVoiceWaves {
  display: none !important;
  position: absolute !important;
  left: 14px !important;
  right: 44px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  height: 28px !important;
  align-items: center !important;
  gap: 2.5px !important;
  pointer-events: none !important;
  overflow: hidden !important;
}
.praxisCoachPage .rdCleanInputShell { position: relative !important; }
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves,
.praxisCoachPage #rdChatInputRow.voiceActive .rdInputVoiceWaves {
  display: flex !important;
}
/* Hide text input while recording, show waveform */
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput,
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput,
.praxisCoachPage #rdChatInputRow.voiceActive #praxisInput {
  color: transparent !important;
  caret-color: transparent !important;
}
.praxisCoachPage .rdInputVoiceWaves span {
  flex-shrink: 0 !important;
  width: 3px !important;
  min-width: 3px !important;
  border-radius: 3px !important;
  background: linear-gradient(180deg, rgba(230,196,126,.96), rgba(166,113,45,.62)) !important;
  height: calc(5px + (var(--rdVoiceLevel, .3) * 26px)) !important;
  animation: rdVoicePulseF 0.55s ease-in-out infinite alternate !important;
  animation-delay: calc(var(--i, 0) * -30ms) !important;
}
@keyframes rdVoicePulseF {
  from { opacity: .3; transform: scaleY(calc(.2 + var(--rdVoiceLevel, .25) * .5)); }
  to   { opacity: .95; transform: scaleY(calc(.6 + var(--rdVoiceLevel, .25) * 1.6)); }
}

/* ── v39 INPUT BAR BOTTOM FIX ── */
.praxisCoachPage .rdComposerWrap,
.rdCoachVFinalPage .rdComposerWrap {
  padding-bottom: max(24px, calc(env(safe-area-inset-bottom, 0px) + 16px)) !important;
  position: sticky !important;
  bottom: 0 !important;
  background: rgba(6,6,6,0.98) !important;
  border-top: 1px solid rgba(201,168,76,0.15) !important;
}
.praxisCoachPage .rdCleanComposer,
.rdCoachVFinalPage .rdCleanComposer {
  padding-bottom: 0 !important;
}

/* Voice waveform guaranteed visible when voiceActive */
.rdComposerWrap.voiceActive .rdInputVoiceWaves,
.rdCleanComposer.voiceActive .rdInputVoiceWaves,
#rdChatInputRow.voiceActive .rdInputVoiceWaves {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
}


/* ══ v47 FINAL FIXES ══ */

/* Input bar: always at bottom with safe area */
.praxisCoachPage .rdComposerWrap,
.rdCoachVFinalPage .rdComposerWrap {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 100 !important;
  padding-bottom: max(16px, env(safe-area-inset-bottom, 16px)) !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  padding-top: 10px !important;
  background: rgba(6,6,6,0.97) !important;
  border-top: 1px solid rgba(201,168,76,0.15) !important;
  backdrop-filter: blur(10px) !important;
}

/* Chat messages: padding at bottom so content not hidden by fixed input bar */
.praxisCoachPage .chatMessages,
.rdCoachVFinalPage .chatMessages {
  padding-bottom: 90px !important;
}

/* Voice recording UI: clean WhatsApp style */
.praxisCoachPage .rdCleanInputShell {
  position: relative !important;
}
.praxisCoachPage #praxisInput,
.rdCoachVFinalPage #praxisInput {
  padding-right: 44px !important;
  height: 44px !important;
  border-radius: 22px !important;
  font-size: 15px !important;
  background: rgba(28,28,28,0.98) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  color: rgba(240,237,232,0.95) !important;
  width: 100% !important;
  outline: none !important;
}
.praxisCoachPage #praxisInput:focus {
  border-color: rgba(201,168,76,0.40) !important;
}

/* Voice active: hide text, show waveform inside input */
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput,
.rdComposerWrap.voiceActive #praxisInput {
  color: transparent !important;
  caret-color: transparent !important;
}
.praxisCoachPage .rdInputVoiceWaves,
.rdCoachVFinalPage .rdInputVoiceWaves {
  display: none !important;
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  height: 26px !important;
  align-items: center !important;
  gap: 2px !important;
  pointer-events: none !important;
}
.rdComposerWrap.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves {
  display: flex !important;
}
.rdInputVoiceWaves span {
  width: 3px !important;
  border-radius: 2px !important;
  background: linear-gradient(180deg, #e8c96a, #b98232) !important;
  animation: rdVoicePulseF 0.5s ease-in-out infinite alternate !important;
}
@keyframes rdVoicePulseF {
  from { height: 4px; opacity: 0.4; }
  to   { height: calc(4px + var(--rdVoiceLevel, 0.3) * 22px); opacity: 0.95; }
}

/* Send button */
.praxisCoachPage .rdCleanSendBtn,
.rdCoachVFinalPage .rdCleanSendBtn {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgba(201,168,76,0.9), rgba(140,108,28,0.95)) !important;
  border: none !important;
  color: #080808 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 10px rgba(201,168,76,0.25) !important;
  flex-shrink: 0 !important;
}

/* Mic button inside input */
.praxisCoachPage .rdVoiceBtn,
.rdCoachVFinalPage .rdVoiceBtn {
  position: absolute !important;
  right: 10px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: transparent !important;
  border: none !important;
  color: rgba(130,122,110,0.70) !important;
  padding: 0 !important;
  width: 28px !important;
  height: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Chat header fix: don't bleed background */
.praxisCoachPage .coachPageHeader,
.rdCoachVFinalPage .coachPageHeader {
  background: rgba(6,6,6,0.95) !important;
  backdrop-filter: blur(8px) !important;
  z-index: 50 !important;
}


/* Ensure chat messages scroll smoothly */
#praxisChatMessages,
.chatMessages {
  scroll-behavior: smooth !important;
}

/* ── Sticky topbar for scrollable tool screens ── */
.aiPraxisScreen .topbar,
.rdPraxisToolPage .topbar,
.databaseScreen .topbar,
.rdMasterPraxisPage .topbar {
  position: sticky;
  top: 0;
  z-index: 150;
  background: rgba(8,8,8,0.96);
  backdrop-filter: blur(8px);
}

/* ══════════════════════════════════════════
   v51 FINAL — COACH LAYOUT COMPLETE FIX
   ══════════════════════════════════════════ */

/* Full coach screen layout — flex column, no scroll shift */
.rdCoachVFinal {
  display: flex !important;
  flex-direction: column !important;
  height: 100dvh !important;         /* dynamic viewport — handles keyboard */
  height: 100vh !important;
  overflow: hidden !important;
  background: #080808 !important;
}

/* Header: solid background, no image bleed */
.rdCoachTop {
  flex: 0 0 auto !important;
  background: rgba(6,6,6,0.98) !important;
  border-bottom: 1px solid rgba(201,168,76,0.12) !important;
  position: relative !important;
  z-index: 10 !important;
}

/* Chat shell: fills remaining space */
.rdCoachChatShell {
  flex: 1 1 0 !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

/* Messages: scrollable, padding for composer */
.chatMessages#praxisChatMessages {
  flex: 1 1 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 16px 16px 20px !important;
  min-height: 0 !important;
}

/* Composer: always at bottom, never moves */
.rdComposerWrap {
  flex: 0 0 auto !important;
  position: relative !important;    /* NOT fixed — flex handles it */
  bottom: auto !important;
  background: rgba(6,6,6,0.98) !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
  padding: 10px 12px !important;
  padding-bottom: max(10px, env(safe-area-inset-bottom, 10px)) !important;
  z-index: 20 !important;
}

/* Composer row: input + send button side by side */
.rdCleanComposer {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  border: none !important;           /* REMOVE outer border (was causing double ring) */
  padding: 0 !important;
}

/* Input shell: the pill — ONE border only here */
.rdCleanInputShell {
  flex: 1 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  background: rgba(24,24,24,0.98) !important;
  border: 1.5px solid rgba(255,255,255,0.10) !important;
  border-radius: 24px !important;
  height: 46px !important;
  overflow: hidden !important;
}
.rdCleanInputShell:focus-within {
  border-color: rgba(201,168,76,0.40) !important;
}

/* Input text */
#praxisInput {
  flex: 1 !important;
  height: 100% !important;
  background: transparent !important;
  border: none !important;           /* no border — shell has it */
  outline: none !important;
  color: rgba(240,237,232,0.95) !important;
  font-size: 15px !important;
  font-family: inherit !important;
  padding: 0 44px 0 16px !important; /* right space for mic */
  -webkit-appearance: none !important;
}
#praxisInput::placeholder {
  color: rgba(150,142,130,0.55) !important;
}

/* Mic button: inside the pill, right side */
.rdVoiceBtn {
  position: absolute !important;
  right: 8px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  background: transparent !important;
  border: none !important;
  color: rgba(150,142,130,0.65) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  cursor: pointer !important;
  z-index: 2 !important;
}
.rdVoiceBtn.voiceActive,
.voiceActive .rdVoiceBtn {
  color: rgba(201,168,76,0.9) !important;
}

/* Send button: round gold circle */
.rdSendBtn {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  flex-shrink: 0 !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgba(201,168,76,0.92), rgba(140,108,28,0.96)) !important;
  border: none !important;
  color: #080808 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 2px 10px rgba(201,168,76,0.28) !important;
  transition: transform 0.1s ease, opacity 0.1s ease !important;
}
.rdSendBtn:active {
  transform: scale(0.92) !important;
  opacity: 0.85 !important;
}

/* Voice waveform bars inside the pill */
.rdInputVoiceWaves {
  display: none !important;
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  height: 24px !important;
  align-items: center !important;
  gap: 2px !important;
  pointer-events: none !important;
  right: 46px !important;
}
.rdComposerWrap.voiceActive .rdInputVoiceWaves,
.rdCleanComposer.voiceActive .rdInputVoiceWaves {
  display: flex !important;
}
.rdComposerWrap.voiceActive #praxisInput,
.rdCleanComposer.voiceActive #praxisInput {
  color: transparent !important;
  caret-color: transparent !important;
}
.rdInputVoiceWaves span {
  width: 3px !important;
  border-radius: 2px !important;
  background: linear-gradient(180deg, #e8c96a, #b98232) !important;
  animation: rdVoiceWaveF 0.6s ease-in-out infinite alternate !important;
  transform-origin: bottom !important;
}
@keyframes rdVoiceWaveF {
  from { height: 4px; opacity: 0.45; }
  to   { height: calc(5px + var(--rdVoiceLevel, 0.3) * 20px); opacity: 0.96; }
}

/* Topbar: solid black so no hero image bleeds */
.praxisCoachPage .topbar,
.rdCoachVFinalPage .topbar {
  background: #080808 !important;
  z-index: 30 !important;
}


/* =========================================================
   RESET DISCIPLINE — V53 CHAT OPTICAL FIX
   Stable bottom composer, single input ring, clean mic placement,
   black top area, no covered last message.
   ========================================================= */
.praxisCoachPage,
.rdCoachVFinalPage,
.rdCoachVFinalPage body{
  background:#030303!important;
}
.praxisCoachPage .app,
.praxisCoachPage #app,
.rdCoachVFinalPage .app,
.rdCoachVFinalPage #app{
  background:#030303!important;
}
.praxisCoachPage .topbar,
.rdCoachVFinalPage .topbar{
  background:#030303!important;
  background-image:none!important;
  box-shadow:none!important;
  border-bottom:0!important;
  z-index:1000!important;
}
.praxisCoachPage .topbar::before,
.rdCoachVFinalPage .topbar::before{
  content:""!important;
  position:absolute!important;
  inset:-80px 0 0 0!important;
  background:#030303!important;
  z-index:-1!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdCoachVFinal{
  height:100dvh!important;
  min-height:100dvh!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  background:#030303!important;
  padding-bottom:0!important;
}
.praxisCoachPage .rdCoachTop{
  flex:0 0 auto!important;
  background:linear-gradient(180deg,#050505 0%,#030303 100%)!important;
  border-bottom:1px solid rgba(201,168,76,.16)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.35)!important;
  z-index:50!important;
}
.praxisCoachPage #praxisChatShell{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
  background:#030303!important;
}
.praxisCoachPage #praxisChatMessages{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  padding:18px 22px calc(104px + env(safe-area-inset-bottom,0px)) 22px!important;
  scroll-padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important;
}
.praxisCoachPage .coachOpenText,
.praxisCoachPage .chatBubble.user{
  font-size:21px!important;
  line-height:1.55!important;
}
.praxisCoachPage .rdStatusLine{
  color:rgba(242,238,228,.88)!important;
  font-size:20px!important;
  line-height:1.35!important;
  margin:18px 0 22px 8px!important;
}
.praxisCoachPage .rdComposerWrap{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:999!important;
  display:block!important;
  background:linear-gradient(180deg,rgba(3,3,3,.62) 0%,rgba(3,3,3,.98) 32%,#030303 100%)!important;
  border-top:1px solid rgba(201,168,76,.16)!important;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px)) 16px!important;
  margin:0!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 54px!important;
  gap:12px!important;
  align-items:center!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanInputShell{
  height:52px!important;
  min-width:0!important;
  width:100%!important;
  border-radius:28px!important;
  background:rgba(25,25,25,.96)!important;
  border:1.25px solid rgba(201,168,76,.42)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 14px rgba(201,168,76,.10)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdCleanInputShell::before,
.praxisCoachPage .rdCleanInputShell::after,
.praxisCoachPage .rdCleanComposer::before,
.praxisCoachPage .rdCleanComposer::after{
  display:none!important;
  content:none!important;
}
.praxisCoachPage #praxisInput{
  height:52px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0 48px 0 18px!important;
  font-size:20px!important;
  line-height:52px!important;
  color:rgba(242,238,228,.96)!important;
}
.praxisCoachPage #praxisInput::placeholder{color:rgba(170,162,150,.55)!important;}
.praxisCoachPage .rdVoiceBtn{
  right:11px!important;
  top:50%!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  transform:translateY(-50%)!important;
  color:rgba(169,160,146,.70)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdSendBtn{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  border-radius:20px!important;
  color:#fff!important;
  background:linear-gradient(180deg,rgba(44,44,46,.98),rgba(22,22,24,.98))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.46)!important;
}
.praxisCoachPage .coachBottomActionHost{display:none!important;}
.praxisCoachPage .dashboardReviewBtn,
.praxisCoachPage .rdChatBackHidden{display:none!important;}
@supports (-webkit-touch-callout:none){
  .praxisCoachPage .rdComposerWrap{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;}
}

/* =========================================================
   RESET DISCIPLINE — V54 FINAL CHAT UI FIX
   User bubble typography/color, lower stable composer, grey input system,
   stronger bottom padding, cleaner voice waveform, solid black top.
   ========================================================= */
.praxisCoachPage,
.rdCoachVFinalPage{
  background:#000!important;
  overflow:hidden!important;
}
.praxisCoachPage .topbar,
.rdCoachVFinalPage .topbar,
.praxisCoachPage .topbar::before,
.rdCoachVFinalPage .topbar::before{
  background:#000!important;
  background-image:none!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdCoachTop{
  background:linear-gradient(180deg,#000 0%,#050505 100%)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.55)!important;
}
.praxisCoachPage #praxisChatShell{
  background:#000!important;
  min-height:0!important;
  overflow:hidden!important;
}
.praxisCoachPage #praxisChatMessages,
.praxisCoachPage .chatMessages{
  padding:18px 22px calc(118px + env(safe-area-inset-bottom,0px)) 22px!important;
  scroll-padding-bottom:calc(118px + env(safe-area-inset-bottom,0px))!important;
  background:#000!important;
}
.praxisCoachPage .coachMsgRow{
  margin:6px 0 18px!important;
}
.praxisCoachPage .coachOpenText,
.praxisCoachPage .chatBubble.coach,
.praxisCoachPage .chatBubble.user{
  font-size:19px!important;
  line-height:1.46!important;
  letter-spacing:.005em!important;
}
.praxisCoachPage .coachOpenText{
  color:rgba(242,242,242,.92)!important;
  max-width:94%!important;
}
.praxisCoachPage .chatBubble.user{
  max-width:82%!important;
  margin-left:auto!important;
  padding:16px 18px!important;
  color:rgba(245,245,245,.96)!important;
  background:linear-gradient(180deg,rgba(37,37,40,.96),rgba(25,25,28,.96))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:22px 10px 22px 22px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 12px 28px rgba(0,0,0,.34)!important;
}
.praxisCoachPage .chatBubble.coach,
.praxisCoachPage .actionBubble{
  background:rgba(16,16,18,.88)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:10px 22px 22px 22px!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdComposerWrap{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:9999!important;
  padding:8px 14px calc(8px + env(safe-area-inset-bottom,0px)) 14px!important;
  margin:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.88) 26%,#000 100%)!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
  transform:none!important;
  will-change:auto!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 52px!important;
  gap:10px!important;
  align-items:center!important;
  width:100%!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
}
.praxisCoachPage .rdCleanInputShell{
  height:50px!important;
  min-height:50px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(31,31,33,.98),rgba(20,20,22,.98))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 10px 22px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdCleanInputShell::before,
.praxisCoachPage .rdCleanInputShell::after,
.praxisCoachPage .rdCleanComposer::before,
.praxisCoachPage .rdCleanComposer::after{
  display:none!important;
  content:none!important;
}
.praxisCoachPage #praxisInput{
  height:50px!important;
  min-height:50px!important;
  line-height:50px!important;
  padding:0 46px 0 16px!important;
  font-size:17px!important;
  letter-spacing:.005em!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:rgba(245,245,245,.96)!important;
}
.praxisCoachPage #praxisInput::placeholder{
  color:rgba(190,190,190,.52)!important;
}
.praxisCoachPage .rdVoiceBtn{
  right:9px!important;
  top:50%!important;
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  transform:translateY(-50%)!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(210,210,210,.64)!important;
}
.praxisCoachPage .rdSendBtn{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(48,48,51,.98),rgba(24,24,27,.98))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:rgba(255,255,255,.96)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 10px 22px rgba(0,0,0,.42)!important;
}
.praxisCoachPage .rdSendBtn:active,
.praxisCoachPage .rdVoiceBtn:active{
  transform:scale(.96)!important;
}
.praxisCoachPage .rdVoiceBtn:active{transform:translateY(-50%) scale(.96)!important;}
.praxisCoachPage .rdInputVoiceWaves{
  position:absolute!important;
  left:16px!important;
  right:46px!important;
  top:50%!important;
  height:28px!important;
  transform:translateY(-50%)!important;
  display:none!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:3px!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves{
  display:flex!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:3px!important;
  min-height:4px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(240,240,240,.92),rgba(145,145,145,.78))!important;
  box-shadow:0 0 10px rgba(255,255,255,.08)!important;
  animation:rdV54Wave 760ms ease-in-out infinite alternate!important;
  transform-origin:center!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){animation-duration:620ms!important;opacity:.78!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){animation-duration:920ms!important;opacity:.64!important;}
@keyframes rdV54Wave{
  from{height:5px;opacity:.42;}
  to{height:calc(8px + var(--rdVoiceLevel, .25) * 26px);opacity:.95;}
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  border-color:rgba(255,255,255,.18)!important;
  background:linear-gradient(180deg,rgba(34,34,36,.98),rgba(16,16,18,.98))!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput,
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput{
  color:transparent!important;
  caret-color:transparent!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdMicIcon{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdStopIcon{
  display:block!important;
  width:13px!important;
  height:13px!important;
  border-radius:4px!important;
  background:rgba(245,245,245,.92)!important;
}
@supports (-webkit-touch-callout:none){
  .praxisCoachPage .rdComposerWrap{padding-bottom:calc(7px + env(safe-area-inset-bottom,0px))!important;}
}

/* =========================================================
   RESET DISCIPLINE — V55 CHAT + DASHBOARD POLISH
   Requested pass: smaller transparent user bubble, lower composer,
   cleaner top navigation, voice timer/wave spacing, black start button,
   centered borderless level badge.
   ========================================================= */

/* Coach chat: tighter top navigation, no clipped home icon */
.praxisCoachPage .topbar.rdGlobalTopbar,
.rdCoachVFinalPage .topbar.rdGlobalTopbar,
.praxisCoachPage .topbar,
.rdCoachVFinalPage .topbar{
  position:fixed!important;
  top:calc(env(safe-area-inset-top,0px) + 6px)!important;
  left:0!important;
  right:0!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 26px!important;
  overflow:visible!important;
  background:#000!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  z-index:10000!important;
}
.praxisCoachPage .topbar.rdGlobalTopbar .iconBtn,
.rdCoachVFinalPage .topbar.rdGlobalTopbar .iconBtn,
.praxisCoachPage .topbar .iconBtn,
.rdCoachVFinalPage .topbar .iconBtn{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .topbar.rdGlobalTopbar .iconBtn svg,
.rdCoachVFinalPage .topbar.rdGlobalTopbar .iconBtn svg,
.praxisCoachPage .topbar .iconBtn svg,
.rdCoachVFinalPage .topbar .iconBtn svg{
  width:24px!important;
  height:24px!important;
  overflow:visible!important;
  display:block!important;
}
.praxisCoachPage .rdCoachTop{
  padding:calc(env(safe-area-inset-top,0px) + 52px) 34px 12px!important;
  background:linear-gradient(180deg,#000 0%,#030303 100%)!important;
}

/* Chat content: use more screen, but keep last answer readable above composer */
.praxisCoachPage #praxisChatMessages,
.praxisCoachPage .chatMessages{
  padding:14px 22px calc(84px + env(safe-area-inset-bottom,0px)) 22px!important;
  scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))!important;
}
.praxisCoachPage .coachMsgRow{margin:5px 0 13px!important;}
.praxisCoachPage .coachOpenText,
.praxisCoachPage .chatBubble.coach{
  font-size:18px!important;
  line-height:1.44!important;
  letter-spacing:.002em!important;
}

/* User bubble: smaller, lighter, more premium and less dominant */
.praxisCoachPage .chatBubble.user{
  max-width:76%!important;
  margin:5px 0 12px auto!important;
  padding:12px 14px!important;
  font-size:17px!important;
  line-height:1.38!important;
  letter-spacing:.002em!important;
  color:rgba(246,246,246,.94)!important;
  background:linear-gradient(180deg,rgba(43,43,48,.74),rgba(25,25,29,.66))!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:18px 8px 18px 18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
@media(max-width:390px){
  .praxisCoachPage .chatBubble.user{max-width:79%!important;font-size:16.5px!important;padding:11px 13px!important;}
}

/* Composer: lower, less dead bottom space, still iPhone-safe */
.praxisCoachPage .rdComposerWrap{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:9999!important;
  padding:6px 14px max(6px, calc(env(safe-area-inset-bottom,0px) - 26px)) 14px!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.86) 25%,#000 100%)!important;
  border-top:1px solid rgba(255,255,255,.065)!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow{
  grid-template-columns:minmax(0,1fr) 50px!important;
  gap:10px!important;
  height:50px!important;
  min-height:50px!important;
}
.praxisCoachPage .rdCleanInputShell{
  height:49px!important;
  min-height:49px!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,rgba(30,30,32,.96),rgba(18,18,20,.96))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 8px 18px rgba(0,0,0,.34)!important;
}
.praxisCoachPage #praxisInput{
  height:49px!important;
  min-height:49px!important;
  line-height:49px!important;
  font-size:16.5px!important;
  padding:0 45px 0 16px!important;
}
.praxisCoachPage .rdSendBtn{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  border-radius:17px!important;
}

/* Voice recording: keep waveform inside shell and add timer slot */
.praxisCoachPage .rdInputVoiceWaves{
  left:15px!important;
  right:88px!important;
  height:26px!important;
  gap:3px!important;
  max-width:calc(100% - 110px)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdVoiceTimer{
  display:none;
  position:absolute!important;
  right:48px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:3!important;
  min-width:36px!important;
  text-align:right!important;
  font-size:12px!important;
  line-height:1!important;
  color:rgba(220,220,220,.68)!important;
  font-variant-numeric:tabular-nums!important;
  letter-spacing:.02em!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceTimer,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceTimer{display:block!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  border-color:rgba(255,255,255,.17)!important;
  background:linear-gradient(180deg,rgba(32,32,35,.98),rgba(14,14,16,.98))!important;
}

/* Praxis home: black/transparent start button, no grey block */
.rdMasterPraxisPage .rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn{
  background:linear-gradient(180deg,rgba(0,0,0,.54),rgba(0,0,0,.88))!important;
  border:1px solid rgba(213,172,86,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 12px 30px rgba(0,0,0,.42)!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
}
.rdMasterPraxisPage .rdMasterSoloStartBtn strong,
.rdPraxisFinal22 .rdMasterSoloStartBtn strong{color:#fff!important;}

/* Praxis home level badge: centered, borderless, over the face area */
.rdPraxisFinal22 .rdPraxisLevelBadge,
.rdMasterPraxisPage .rdPraxisLevelBadge{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:132px!important;
  transform:translateX(-50%)!important;
  width:164px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:10px!important;
  z-index:6!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge strong,
.rdMasterPraxisPage .rdPraxisLevelBadge strong{
  font-size:18px!important;
  line-height:1!important;
  letter-spacing:.26em!important;
  color:#efc76e!important;
  text-shadow:0 2px 14px rgba(0,0,0,.75)!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span,
.rdMasterPraxisPage .rdPraxisLevelBadge span{
  width:112px!important;
  height:4px!important;
  margin:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.16)!important;
  overflow:hidden!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span i,
.rdMasterPraxisPage .rdPraxisLevelBadge span i{
  height:100%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,#edc66d,#c89545)!important;
  display:block!important;
}
@media(max-height:760px){
  .rdPraxisFinal22 .rdPraxisLevelBadge,
  .rdMasterPraxisPage .rdPraxisLevelBadge{top:118px!important;}
}


/* =========================================================
   RESET DISCIPLINE — V56 CHAT / VOICE / HOME CORRECTION
   Fixes v55 regressions: header too low, composer edge overflow,
   missing voice timer, oversized active voice bar, level badge background.
   ========================================================= */

/* Coach screen: remove the added dead black area above the coach header */
.praxisCoachPage.rdCoachVFinalPage,
.praxisCoachPage .rdCoachVFinal{
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  background:#030303!important;
}
.praxisCoachPage .rdCoachVFinal{
  padding-top:calc(env(safe-area-inset-top,0px) + 42px)!important;
}
.praxisCoachPage .rdCoachTop{
  padding:12px 34px 12px!important;
  margin:0!important;
  grid-template-columns:52px 1fr!important;
  gap:12px!important;
  background:linear-gradient(180deg,rgba(4,4,4,.96),rgba(4,4,4,.82))!important;
  border-bottom:1px solid rgba(214,165,88,.13)!important;
}
.praxisCoachPage .rdCoachTop img{width:52px!important;height:52px!important;border-radius:16px!important;}
.praxisCoachPage .rdCoachTop h1{font-size:clamp(24px,6.3vw,32px)!important;line-height:.95!important;margin:2px 0 0!important;}
.praxisCoachPage .rdCoachTop p{font-size:12px!important;line-height:1.2!important;margin:5px 0 0!important;}
.praxisCoachPage .rdCoachChatShell{
  padding-left:34px!important;
  padding-right:34px!important;
}
.praxisCoachPage .rdCoachChatShell .chatMessages,
.praxisCoachPage #praxisChatMessages{
  padding-top:12px!important;
  padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))!important;
  scroll-padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
}

/* Composer: fixed inside screen, not touching edges, same position idle/voice */
.praxisCoachPage .rdComposerWrap{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:9999!important;
  min-height:64px!important;
  padding:7px 28px max(8px,calc(env(safe-area-inset-bottom,0px) - 14px)) 28px!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.92) 34%,#000 100%)!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
  box-sizing:border-box!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow.rdCleanComposer{
  width:100%!important;
  max-width:760px!important;
  margin:0 auto!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:10px!important;
  align-items:center!important;
  box-sizing:border-box!important;
}
.praxisCoachPage .rdCleanInputShell{
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  border-radius:18px!important;
  padding:0 48px 0 16px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(31,31,34,.96),rgba(17,17,19,.98))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.38)!important;
  box-sizing:border-box!important;
}
.praxisCoachPage #praxisInput{
  height:48px!important;
  line-height:48px!important;
  font-size:16px!important;
  padding:0!important;
}
.praxisCoachPage #praxisInput::placeholder{font-size:16px!important;line-height:48px!important;}
.praxisCoachPage .rdSendBtn,
.praxisCoachPage .rdCleanComposer > .rdSendBtn{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,rgba(43,43,46,.98),rgba(22,22,24,.98))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 20px rgba(0,0,0,.34)!important;
}
.praxisCoachPage .rdVoiceBtn{
  width:35px!important;
  height:35px!important;
  right:7px!important;
  border-radius:13px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.04)!important;
  color:rgba(235,235,235,.70)!important;
}

/* Voice recording: bounded left/right, timer visible, no full-width overflow */
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  padding:0 88px 0 17px!important;
  border-color:rgba(255,255,255,.15)!important;
  background:linear-gradient(180deg,rgba(33,33,37,.98),rgba(15,15,18,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 22px rgba(0,0,0,.40)!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;
  right:94px!important;
  max-width:none!important;
  height:25px!important;
  gap:3px!important;
  overflow:hidden!important;
  opacity:.96!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:3px!important;
  min-width:3px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(235,235,235,.88),rgba(145,145,145,.52))!important;
}
.praxisCoachPage .rdVoiceTimer{
  display:none!important;
  position:absolute!important;
  right:50px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:5!important;
  width:40px!important;
  text-align:right!important;
  font-size:12px!important;
  line-height:1!important;
  color:rgba(230,230,230,.66)!important;
  font-variant-numeric:tabular-nums!important;
  letter-spacing:.015em!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceTimer,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceTimer{
  display:block!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn{
  background:rgba(255,255,255,.09)!important;
  color:#f4f4f4!important;
}

/* User bubble: keep v55 direction, but calmer and less heavy */
.praxisCoachPage .chatBubble.user{
  max-width:74%!important;
  padding:11px 14px!important;
  font-size:16.5px!important;
  line-height:1.36!important;
  border-radius:17px 8px 17px 17px!important;
  background:linear-gradient(180deg,rgba(43,43,48,.62),rgba(24,24,29,.54))!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 7px 18px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}

/* Praxis home: black start button remains, but level badge becomes true text-only */
.rdPraxisFinal22 .rdMasterSoloStartBtn,
.rdMasterPraxisPage .rdMasterSoloStartBtn{
  background:linear-gradient(180deg,rgba(0,0,0,.34),rgba(0,0,0,.78))!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge,
.rdMasterPraxisPage .rdPraxisLevelBadge{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:116px!important;
  transform:translateX(-50%)!important;
  width:132px!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  z-index:7!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge::before,
.rdPraxisFinal22 .rdPraxisLevelBadge::after,
.rdMasterPraxisPage .rdPraxisLevelBadge::before,
.rdMasterPraxisPage .rdPraxisLevelBadge::after{
  display:none!important;
  content:none!important;
  background:none!important;
  box-shadow:none!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge strong,
.rdMasterPraxisPage .rdPraxisLevelBadge strong{
  font-size:15px!important;
  letter-spacing:.24em!important;
  line-height:1!important;
  color:#efc76e!important;
  text-shadow:0 2px 13px rgba(0,0,0,.86)!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span,
.rdMasterPraxisPage .rdPraxisLevelBadge span{
  width:92px!important;
  height:4px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span i,
.rdMasterPraxisPage .rdPraxisLevelBadge span i{
  height:100%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,#efc76e,#c99548)!important;
  display:block!important;
}
@media(max-height:760px){
  .rdPraxisFinal22 .rdPraxisLevelBadge,
  .rdMasterPraxisPage .rdPraxisLevelBadge{top:106px!important;width:124px!important;}
  .rdPraxisFinal22 .rdPraxisLevelBadge strong,
  .rdMasterPraxisPage .rdPraxisLevelBadge strong{font-size:14px!important;}
}
@media(max-width:390px){
  .praxisCoachPage .rdComposerWrap{padding-left:24px!important;padding-right:24px!important;}
  .praxisCoachPage .rdCoachChatShell{padding-left:30px!important;padding-right:30px!important;}
  .praxisCoachPage .chatBubble.user{max-width:78%!important;font-size:16px!important;}
}

/* =========================================================
   RESET DISCIPLINE — V57 MICRO POLISH ONLY
   Scope: level position, mic icon ring, voice wave/timer spacing.
   ========================================================= */

/* Home level: move down directly above "Hallo, Manuel", keep text-only and smaller */
.rdPraxisFinal22 .rdPraxisLevelBadge,
.rdMasterPraxisPage .rdPraxisLevelBadge{
  top:228px!important;
  width:118px!important;
  gap:6px!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge strong,
.rdMasterPraxisPage .rdPraxisLevelBadge strong{
  font-size:13px!important;
  letter-spacing:.22em!important;
}
.rdPraxisFinal22 .rdPraxisLevelBadge span,
.rdMasterPraxisPage .rdPraxisLevelBadge span{
  width:82px!important;
  height:3px!important;
}
@media(max-height:760px){
  .rdPraxisFinal22 .rdPraxisLevelBadge,
  .rdMasterPraxisPage .rdPraxisLevelBadge{top:210px!important;width:112px!important;}
}

/* Chat input mic: icon only, no extra button ring inside the input */
.praxisCoachPage .rdVoiceBtn{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
}
.praxisCoachPage .rdVoiceBtn::before,
.praxisCoachPage .rdVoiceBtn::after{
  display:none!important;
  content:none!important;
}
.praxisCoachPage .rdVoiceBtn:hover,
.praxisCoachPage .rdVoiceBtn:focus,
.praxisCoachPage .rdVoiceBtn:active{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
}

/* Voice mode: give timer clean room, reduce wave width so 0:00 is not squeezed */
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  padding:0 112px 0 17px!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;
  right:132px!important;
  gap:2.5px!important;
}
.praxisCoachPage .rdVoiceTimer{
  right:62px!important;
  width:46px!important;
  font-size:12px!important;
  text-align:right!important;
}

/* =========================================================
   RESET DISCIPLINE — V58 TARGETED VISUAL FIXES
   Scope: Morning modal button, voice timer/mic ring, dashboard vertical balance.
   ========================================================= */

/* Morning Check modal: save button lower and cleaner inside the card */
#morningCheckModal .rdMorningDialog{
  padding-bottom:34px!important;
}
#morningCheckModal .rdMorningDialog .praxisPrimary,
#morningCheckModal .rdMorningDialog .btn.praxisPrimary{
  margin-top:24px!important;
  margin-bottom:8px!important;
  height:66px!important;
  min-height:66px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:5!important;
}

/* Composer mic icon: keep icon, remove inner circular button/ring completely */
.praxisCoachPage .rdVoiceBtn,
.praxisCoachPage .rdCleanComposer .rdVoiceBtn,
.praxisCoachPage .rdCleanInputShell .rdVoiceBtn{
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.praxisCoachPage .rdVoiceBtn::before,
.praxisCoachPage .rdVoiceBtn::after{
  display:none!important;
  content:none!important;
}
.praxisCoachPage .rdVoiceBtn .rdMicIcon{
  opacity:.76!important;
}

/* Voice recording: give timer real room and keep the wave readable */
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  padding-left:17px!important;
  padding-right:120px!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;
  right:122px!important;
  gap:2.4px!important;
}
.praxisCoachPage .rdVoiceTimer{
  right:64px!important;
  width:48px!important;
  min-width:48px!important;
  text-align:right!important;
  font-size:12px!important;
  opacity:.88!important;
}

/* Praxis dashboard: move the hero information and lower sections slightly down, keep fullscreen balance */
.rdMasterPraxisPage .rdPraxisLevelBadge,
.rdPraxisFinal22 .rdPraxisLevelBadge{
  top:246px!important;
}
.rdMasterPraxisPage .rdMasterGreeting,
.rdPraxisFinal22 .rdMasterGreeting{
  bottom:102px!important;
}
.rdMasterPraxisPage .rdMasterMetrics,
.rdPraxisFinal22 .rdMasterMetrics{
  bottom:8px!important;
}
.rdMasterPraxisPage .rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn{
  margin-top:12px!important;
}
.rdMasterPraxisPage .rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterProgressCard{
  margin-top:4px!important;
}
@media(max-height:760px){
  .rdMasterPraxisPage .rdPraxisLevelBadge,
  .rdPraxisFinal22 .rdPraxisLevelBadge{top:228px!important;}
  .rdMasterPraxisPage .rdMasterGreeting,
  .rdPraxisFinal22 .rdMasterGreeting{bottom:96px!important;}
  .rdMasterPraxisPage .rdMasterMetrics,
  .rdPraxisFinal22 .rdMasterMetrics{bottom:4px!important;}
  .rdMasterPraxisPage .rdMasterSoloStartBtn,
  .rdPraxisFinal22 .rdMasterSoloStartBtn{margin-top:8px!important;}
}

/* =========================================================
   RESET DISCIPLINE — V59 FINAL TARGETED FIXES
   Scope only: praxis dashboard vertical balance + active voice bar stability.
   ========================================================= */

/* Dashboard: move the whole hero information down, but keep Level clearly above greeting */
.rdMasterPraxisPage .rdPraxisLevelBadge,
.rdPraxisFinal22 .rdPraxisLevelBadge{
  top:212px!important;
  width:112px!important;
  gap:5px!important;
  z-index:8!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge strong,
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:12.5px!important;
  letter-spacing:.22em!important;
  line-height:1!important;
  text-shadow:0 2px 10px rgba(0,0,0,.88)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span,
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:76px!important;
  height:3px!important;
  background:rgba(255,255,255,.15)!important;
}
.rdMasterPraxisPage .rdMasterGreeting,
.rdPraxisFinal22 .rdMasterGreeting{
  bottom:82px!important;
}
.rdMasterPraxisPage .rdMasterMetrics,
.rdPraxisFinal22 .rdMasterMetrics{
  bottom:-7px!important;
}
.rdMasterPraxisPage .rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn{
  margin-top:18px!important;
}
.rdMasterPraxisPage .rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterProgressCard{
  margin-top:10px!important;
}
@media(max-height:760px){
  .rdMasterPraxisPage .rdPraxisLevelBadge,
  .rdPraxisFinal22 .rdPraxisLevelBadge{top:198px!important;}
  .rdMasterPraxisPage .rdMasterGreeting,
  .rdPraxisFinal22 .rdMasterGreeting{bottom:78px!important;}
  .rdMasterPraxisPage .rdMasterMetrics,
  .rdPraxisFinal22 .rdMasterMetrics{bottom:-9px!important;}
}

/* Chat composer: recording mode must keep the exact same outer geometry as idle mode */
.praxisCoachPage .rdComposerWrap.voiceActive{
  left:0!important;
  right:0!important;
  bottom:0!important;
  padding:7px 28px max(8px,calc(env(safe-area-inset-bottom,0px) - 14px)) 28px!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive,
.praxisCoachPage #rdChatInputRow.rdCleanComposer.voiceActive{
  width:100%!important;
  max-width:760px!important;
  margin:0 auto!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:10px!important;
  align-items:center!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  border-radius:18px!important;
  padding:0 94px 0 16px!important;
  background:linear-gradient(180deg,rgba(31,31,34,.96),rgba(17,17,19,.98))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;
  right:104px!important;
  height:22px!important;
  gap:2px!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:2.5px!important;
  min-width:2.5px!important;
  max-width:2.5px!important;
}
.praxisCoachPage .rdVoiceTimer{
  right:49px!important;
  width:42px!important;
  min-width:42px!important;
  font-size:12px!important;
  text-align:right!important;
  font-variant-numeric:tabular-nums!important;
  color:rgba(230,230,230,.74)!important;
}
.praxisCoachPage .rdVoiceBtn,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn{
  width:34px!important;
  height:34px!important;
  right:7px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdMicIcon,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdMicIcon{
  display:none!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdStopIcon,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdStopIcon{
  display:block!important;
  width:10px!important;
  height:10px!important;
  border-radius:3px!important;
  background:rgba(245,245,245,.92)!important;
  box-shadow:none!important;
}
@media(max-width:390px){
  .praxisCoachPage .rdComposerWrap.voiceActive{padding-left:24px!important;padding-right:24px!important;}
  .praxisCoachPage .rdInputVoiceWaves{right:104px!important;gap:1.8px!important;}
  .praxisCoachPage .rdInputVoiceWaves span{width:2.2px!important;min-width:2.2px!important;max-width:2.2px!important;}
}

/* =========================================================
   RESET DISCIPLINE — V61 RECOVERY FIX
   Restore the near-final V59 layout, remove V60 clipping, fix level spacing,
   and keep voice composer geometry identical while reserving timer space.
   ========================================================= */

/* Do NOT hard-lock the dashboard viewport: browser UI can shrink the visual viewport.
   This prevents cut-off progress cards while preserving the premium one-screen layout in standalone/PWA. */
.rdMasterPraxisPage{
  min-height:100dvh!important;
  height:auto!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdMasterPraxisDash.rdPraxisFinal22{
  min-height:100dvh!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  gap:14px!important;
  padding-bottom:max(16px,env(safe-area-inset-bottom,0px))!important;
}

/* Dashboard level: above greeting, no collision, slightly larger, subtle glow. */
.rdMasterPraxisPage .rdPraxisLevelBadge,
.rdPraxisFinal22 .rdPraxisLevelBadge{
  top:184px!important;
  width:122px!important;
  min-width:122px!important;
  height:auto!important;
  gap:6px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  z-index:9!important;
  pointer-events:auto!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge strong,
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:13.6px!important;
  letter-spacing:.24em!important;
  line-height:1!important;
  color:#e8c06b!important;
  text-shadow:0 0 8px rgba(232,192,107,.34),0 2px 12px rgba(0,0,0,.95)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span,
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:86px!important;
  height:3.5px!important;
  margin-top:0!important;
  background:rgba(255,255,255,.14)!important;
  box-shadow:0 0 8px rgba(232,192,107,.18)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span i,
.rdPraxisFinal22 .rdPraxisLevelBadge span i{
  box-shadow:0 0 9px rgba(232,192,107,.42)!important;
}

/* Keep greeting and metrics in their previously-good V59 balance. */
.rdMasterPraxisPage .rdMasterGreeting,
.rdPraxisFinal22 .rdMasterGreeting{bottom:82px!important;}
.rdMasterPraxisPage .rdMasterMetrics,
.rdPraxisFinal22 .rdMasterMetrics{bottom:-7px!important;}
.rdMasterPraxisPage .rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn{margin-top:18px!important;}
.rdMasterPraxisPage .rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterProgressCard{margin-top:10px!important;}

@media(max-height:760px){
  .rdMasterPraxisPage .rdPraxisLevelBadge,
  .rdPraxisFinal22 .rdPraxisLevelBadge{top:172px!important;width:118px!important;min-width:118px!important;}
  .rdMasterPraxisPage .rdPraxisLevelBadge strong,
  .rdPraxisFinal22 .rdPraxisLevelBadge strong{font-size:13px!important;}
  .rdMasterPraxisPage .rdPraxisLevelBadge span,
  .rdPraxisFinal22 .rdPraxisLevelBadge span{width:82px!important;}
  .rdMasterPraxisPage .rdMasterGreeting,
  .rdPraxisFinal22 .rdMasterGreeting{bottom:78px!important;}
  .rdMasterPraxisPage .rdMasterMetrics,
  .rdPraxisFinal22 .rdMasterMetrics{bottom:-9px!important;}
}

/* Voice composer: active mode must keep the exact idle geometry.
   Wave has a hard right limit so it never enters the timer. */
.praxisCoachPage .rdComposerWrap.voiceActive{
  left:0!important;
  right:0!important;
  bottom:0!important;
  padding:7px 28px max(8px,calc(env(safe-area-inset-bottom,0px) - 14px)) 28px!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive,
.praxisCoachPage #rdChatInputRow.rdCleanComposer.voiceActive{
  width:100%!important;
  max-width:760px!important;
  margin:0 auto!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:10px!important;
  align-items:center!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  border-radius:18px!important;
  padding:0 112px 0 16px!important;
  background:linear-gradient(180deg,rgba(31,31,34,.96),rgba(17,17,19,.98))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;
  right:142px!important;
  max-width:calc(100% - 160px)!important;
  height:22px!important;
  gap:2.2px!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:2.4px!important;
  min-width:2.4px!important;
  max-width:2.4px!important;
  opacity:.82!important;
}
.praxisCoachPage .rdVoiceTimer{
  right:55px!important;
  width:58px!important;
  min-width:58px!important;
  max-width:58px!important;
  font-size:12px!important;
  text-align:center!important;
  font-variant-numeric:tabular-nums!important;
  color:rgba(230,230,230,.78)!important;
  z-index:5!important;
}
.praxisCoachPage .rdVoiceBtn,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn{
  width:34px!important;
  height:34px!important;
  right:7px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.praxisCoachPage .rdVoiceBtn::before,
.praxisCoachPage .rdVoiceBtn::after{display:none!important;content:none!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdMicIcon,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdMicIcon{display:none!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdStopIcon,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdStopIcon{
  display:block!important;
  width:10px!important;
  height:10px!important;
  border-radius:3px!important;
  background:rgba(245,245,245,.92)!important;
  box-shadow:none!important;
}
@media(max-width:390px){
  .praxisCoachPage .rdComposerWrap.voiceActive{padding-left:24px!important;padding-right:24px!important;}
  .praxisCoachPage .rdInputVoiceWaves{right:138px!important;gap:1.9px!important;}
  .praxisCoachPage .rdInputVoiceWaves span{width:2.2px!important;min-width:2.2px!important;max-width:2.2px!important;}
  .praxisCoachPage .rdVoiceTimer{right:52px!important;width:56px!important;min-width:56px!important;}
}

/* =========================================================
   RESET DISCIPLINE — V62 CLEAN LAYOUT + VOICE CONSOLIDATION
   Purpose: replace the accumulated v55-v61 dashboard/voice conflicts with
   one final geometry. No timer in voice mode. Praxis dashboard fits viewport.
   ========================================================= */

/* Praxis dashboard: one-screen master geometry, aligned with 30-day home visual language */
body:has(.rdMasterPraxisPage){
  overflow:hidden!important;
  background:#000!important;
}
.rdMasterPraxisPage{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  overscroll-behavior:none!important;
  background:#000!important;
}
.rdMasterPraxisDash.rdPraxisFinal22,
.rdMasterPraxisDash{
  width:100%!important;
  max-width:430px!important;
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  margin:0 auto!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:11px!important;
  padding:0 16px max(12px,env(safe-area-inset-bottom,0px))!important;
  box-sizing:border-box!important;
}
.rdMasterHero{
  flex:0 0 clamp(318px,43dvh,374px)!important;
  height:clamp(318px,43dvh,374px)!important;
  min-height:0!important;
  max-height:374px!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  background-position:center top!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge,
.rdPraxisFinal22 .rdPraxisLevelBadge{
  top:44%!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:124px!important;
  min-width:124px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  z-index:9!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge strong,
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:14px!important;
  letter-spacing:.25em!important;
  line-height:1!important;
  color:#e8c06b!important;
  text-shadow:0 0 9px rgba(232,192,107,.38),0 2px 12px rgba(0,0,0,.95)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span,
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:90px!important;
  height:3.5px!important;
  background:rgba(255,255,255,.15)!important;
  box-shadow:0 0 8px rgba(232,192,107,.18)!important;
}
.rdMasterPraxisPage .rdMasterGreeting,
.rdPraxisFinal22 .rdMasterGreeting{
  bottom:104px!important;
  left:12px!important;
  right:12px!important;
  text-align:center!important;
}
.rdMasterPraxisPage .rdMasterGreeting h1,
.rdPraxisFinal22 .rdMasterGreeting h1{
  font-size:clamp(28px,7.25vw,34px)!important;
  line-height:.92!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}
.rdMasterPraxisPage .rdMasterGreeting p,
.rdPraxisFinal22 .rdMasterGreeting p{
  margin-top:8px!important;
  font-size:clamp(12.5px,3.25vw,15px)!important;
  line-height:1.12!important;
  white-space:nowrap!important;
}
.rdMasterPraxisPage .rdMasterMetrics,
.rdPraxisFinal22 .rdMasterMetrics{
  bottom:17px!important;
  left:14px!important;
  right:14px!important;
  gap:7px!important;
}
.rdMasterMetric{grid-template-columns:38px minmax(0,1fr)!important;gap:7px!important;}
.rdMasterMetricIcon{width:34px!important;height:34px!important;flex-basis:34px!important;}
.rdMasterMetric strong{font-size:clamp(25px,6.2vw,30px)!important;}
.rdMasterMetric small{font-size:7.5px!important;}
.rdMasterMetric b{font-size:9.5px!important;}
.rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex:0 0 68px!important;
  height:68px!important;
  min-height:68px!important;
  margin:0!important;
  border-radius:22px!important;
}
.rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterProgressCard{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:13px 16px 12px!important;
  border-radius:23px!important;
  display:flex!important;
  flex-direction:column!important;
}
.rdMasterProgressCard h3{height:15px!important;flex:0 0 15px!important;margin:0 0 8px!important;font-size:12.5px!important;}
.rdMasterProgressRow{grid-template-columns:38px minmax(0,1fr) 44px!important;gap:9px!important;min-height:0!important;}
.rdMasterProgressIcon{width:32px!important;height:32px!important;}
.rdMasterProgressMain strong{font-size:clamp(12px,3.05vw,14px)!important;margin-bottom:6px!important;}
.rdMasterProgressMain i{height:5px!important;}
.rdMasterProgressCount{font-size:clamp(18px,4.8vw,22px)!important;}

@media(max-height:760px){
  .rdMasterHero{flex-basis:304px!important;height:304px!important;max-height:304px!important;}
  .rdMasterPraxisPage .rdPraxisLevelBadge,.rdPraxisFinal22 .rdPraxisLevelBadge{top:43%!important;width:116px!important;min-width:116px!important;}
  .rdMasterPraxisPage .rdPraxisLevelBadge strong,.rdPraxisFinal22 .rdPraxisLevelBadge strong{font-size:13px!important;}
  .rdMasterPraxisPage .rdMasterGreeting,.rdPraxisFinal22 .rdMasterGreeting{bottom:94px!important;}
  .rdMasterPraxisPage .rdMasterGreeting h1,.rdPraxisFinal22 .rdMasterGreeting h1{font-size:25px!important;}
  .rdMasterPraxisPage .rdMasterGreeting p,.rdPraxisFinal22 .rdMasterGreeting p{font-size:12px!important;margin-top:6px!important;}
  .rdMasterPraxisPage .rdMasterMetrics,.rdPraxisFinal22 .rdMasterMetrics{bottom:13px!important;}
  .rdMasterMetric{grid-template-columns:32px minmax(0,1fr)!important;gap:5px!important;}
  .rdMasterMetricIcon{width:30px!important;height:30px!important;}
  .rdMasterMetric strong{font-size:24px!important;}
  .rdMasterMetric small{font-size:7px!important;}
  .rdMasterMetric b{font-size:9px!important;}
  .rdMasterSoloStartBtn,.rdPraxisFinal22 .rdMasterSoloStartBtn{height:62px!important;min-height:62px!important;flex-basis:62px!important;}
  .rdMasterProgressCard,.rdPraxisFinal22 .rdMasterProgressCard{padding:11px 14px 10px!important;}
  .rdMasterProgressRow{grid-template-columns:34px minmax(0,1fr) 40px!important;gap:8px!important;}
  .rdMasterProgressIcon{width:29px!important;height:29px!important;}
  .rdMasterProgressMain strong{font-size:11.5px!important;}
  .rdMasterProgressCount{font-size:18px!important;}
}

/* Voice composer: no timer, no geometry jump, pure waveform inside the normal input field */
.praxisCoachPage .rdVoiceTimer{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive{
  left:0!important;right:0!important;bottom:0!important;
  padding:7px 28px max(8px,calc(env(safe-area-inset-bottom,0px) - 14px)) 28px!important;
  transform:none!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive,
.praxisCoachPage #rdChatInputRow.rdCleanComposer.voiceActive{
  width:100%!important;max-width:760px!important;margin:0 auto!important;
  height:48px!important;min-height:48px!important;max-height:48px!important;
  grid-template-columns:minmax(0,1fr) 48px!important;gap:10px!important;align-items:center!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  height:48px!important;min-height:48px!important;max-height:48px!important;
  border-radius:18px!important;padding:0 56px 0 16px!important;
  background:linear-gradient(180deg,rgba(31,31,34,.96),rgba(17,17,19,.98))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive input{opacity:0!important;pointer-events:none!important;}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;right:58px!important;max-width:none!important;height:25px!important;
  gap:2.5px!important;overflow:hidden!important;display:none!important;align-items:center!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves{display:flex!important;}
.praxisCoachPage .rdInputVoiceWaves span{
  display:block!important;width:2.7px!important;min-width:2.7px!important;max-width:2.7px!important;
  border-radius:999px!important;background:rgba(232,232,232,.58)!important;
  height:calc(6px + (var(--rdVoiceLevel,.32) * 22px))!important;
  animation:rdV62VoiceWave .72s ease-in-out infinite alternate!important;
  animation-delay:calc(var(--i) * -34ms)!important;transform-origin:center!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){height:calc(8px + (var(--rdVoiceLevel,.32) * 16px))!important;opacity:.82!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){height:calc(5px + (var(--rdVoiceLevel,.32) * 26px))!important;opacity:.68!important;}
@keyframes rdV62VoiceWave{from{opacity:.28;transform:scaleY(.45)}to{opacity:.96;transform:scaleY(calc(.95 + var(--rdVoiceLevel,.32) * .9))}}
.praxisCoachPage .rdVoiceBtn,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn{
  width:34px!important;height:34px!important;right:7px!important;top:50%!important;transform:translateY(-50%)!important;
  border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;
}
.praxisCoachPage .rdVoiceBtn::before,.praxisCoachPage .rdVoiceBtn::after{display:none!important;content:none!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdMicIcon,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdMicIcon{display:none!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdStopIcon,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdStopIcon{
  display:block!important;width:10px!important;height:10px!important;border-radius:3px!important;background:rgba(245,245,245,.92)!important;box-shadow:none!important;
}

/* =========================================================
   RESET DISCIPLINE — V63 TARGETED FINAL FIX
   Scope only: browser bottom spacing, level glow, voice timer removed.
   ========================================================= */
.rdMasterPraxisPage .rdPraxisLevelBadge strong,
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  text-shadow:0 0 12px rgba(232,192,107,.52),0 0 22px rgba(232,192,107,.20),0 2px 14px rgba(0,0,0,.98)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span i,
.rdPraxisFinal22 .rdPraxisLevelBadge span i{
  box-shadow:0 0 11px rgba(232,192,107,.62),0 0 18px rgba(232,192,107,.22)!important;
}
/* Browser URL bars can cover the bottom: guarantee breathing room for Praxistage. */
@media(display-mode:browser){
  .rdMasterPraxisPage{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;}
  .rdMasterPraxisDash.rdPraxisFinal22,
  .rdMasterPraxisDash{
    padding-bottom:max(96px,calc(env(safe-area-inset-bottom,0px) + 86px))!important;
  }
  .rdMasterProgressCard,
  .rdPraxisFinal22 .rdMasterProgressCard{
    margin-bottom:16px!important;
    padding-bottom:18px!important;
  }
  .rdMasterProgressRow:last-child{padding-bottom:8px!important;}
}
/* Voice: no seconds counter anymore, clean wave only. */
.praxisCoachPage .rdVoiceTimer,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceTimer,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceTimer{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  left:18px!important;
  right:58px!important;
  height:26px!important;
  gap:2.7px!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:2.8px!important;
  min-width:2.8px!important;
  max-width:2.8px!important;
  background:rgba(238,238,238,.62)!important;
}

/* =========================================================
   RESET DISCIPLINE — V64 TARGETED BROWSER + VOICE FIX
   Scope: browser dashboard fit only + final clean voice field.
   ========================================================= */
body.rdBrowserMode:has(.rdMasterPraxisPage){
  overflow:hidden!important;
}
body.rdBrowserMode .rdMasterPraxisPage{
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  height:calc(100dvh - 104px)!important;
  min-height:0!important;
  max-height:calc(100dvh - 104px)!important;
  overflow:hidden!important;
  padding:0 16px 10px!important;
  gap:8px!important;
}
body.rdBrowserMode .rdMasterHero{
  flex:0 0 clamp(286px,39dvh,332px)!important;
  height:clamp(286px,39dvh,332px)!important;
  max-height:332px!important;
  min-height:0!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{
  top:42%!important;
  width:116px!important;
  min-width:116px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge strong,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:13px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:82px!important;
  height:3px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{
  bottom:91px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting h1,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting h1{
  font-size:clamp(25px,6.4vw,30px)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting p,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting p{
  font-size:clamp(11px,2.9vw,13px)!important;
  margin-top:6px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{
  bottom:10px!important;
}
body.rdBrowserMode .rdMasterMetric{
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:5px!important;
}
body.rdBrowserMode .rdMasterMetricIcon{
  width:28px!important;
  height:28px!important;
}
body.rdBrowserMode .rdMasterMetric strong{
  font-size:22px!important;
}
body.rdBrowserMode .rdMasterMetric small{font-size:6.6px!important;}
body.rdBrowserMode .rdMasterMetric b{font-size:8.5px!important;}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex:0 0 56px!important;
  height:56px!important;
  min-height:56px!important;
  border-radius:20px!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn span,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn span{
  font-size:15px!important;
  letter-spacing:.16em!important;
}
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  flex:1 1 auto!important;
  min-height:0!important;
  margin:0!important;
  padding:10px 14px 12px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
body.rdBrowserMode .rdMasterProgressCard h3{
  height:13px!important;
  flex:0 0 13px!important;
  margin:0 0 6px!important;
  font-size:11px!important;
}
body.rdBrowserMode .rdMasterProgressRow{
  grid-template-columns:31px minmax(0,1fr) 38px!important;
  gap:7px!important;
  padding:6px 0!important;
  min-height:0!important;
}
body.rdBrowserMode .rdMasterProgressIcon{
  width:27px!important;
  height:27px!important;
}
body.rdBrowserMode .rdMasterProgressMain strong{
  font-size:10.8px!important;
  margin-bottom:5px!important;
  letter-spacing:.11em!important;
}
body.rdBrowserMode .rdMasterProgressMain i{
  height:4px!important;
}
body.rdBrowserMode .rdMasterProgressCount{
  font-size:16.5px!important;
}

/* Voice field: no timer, wave only, stable across unlimited recordings. */
.praxisCoachPage .rdVoiceTimer{display:none!important;width:0!important;min-width:0!important;max-width:0!important;opacity:0!important;visibility:hidden!important;}
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves{
  display:flex!important;
  left:18px!important;
  right:62px!important;
  height:28px!important;
  gap:3px!important;
  align-items:center!important;
  overflow:hidden!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  width:3px!important;min-width:3px!important;max-width:3px!important;
  background:rgba(235,235,235,.64)!important;
  animation:rdV64VoicePulse .62s ease-in-out infinite alternate!important;
  animation-delay:calc(var(--i) * -42ms)!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){animation-duration:.74s!important;opacity:.86!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){animation-duration:.56s!important;opacity:.7!important;}
@keyframes rdV64VoicePulse{
  from{height:7px;opacity:.35;transform:scaleY(.55)}
  to{height:25px;opacity:.95;transform:scaleY(1)}
}

/* =========================================================
   RESET DISCIPLINE — V65 BROWSER DASHBOARD MICRO-FIX
   Scope: browser/PWA-preview only. PWA/app layout remains untouched.
   ========================================================= */
body.rdBrowserMode:has(.rdMasterPraxisPage){
  overflow:hidden!important;
}
body.rdBrowserMode .rdMasterPraxisPage{
  height:var(--rd-vvh,100dvh)!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  height:calc(var(--rd-vvh,100dvh) - 92px)!important;
  max-height:calc(var(--rd-vvh,100dvh) - 92px)!important;
  overflow:hidden!important;
  padding:22px 16px 12px!important;
  gap:8px!important;
}
body.rdBrowserMode .rdMasterHero{
  flex:0 0 clamp(268px,36.5dvh,316px)!important;
  height:clamp(268px,36.5dvh,316px)!important;
  max-height:316px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{
  top:41%!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{
  bottom:86px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{
  bottom:8px!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex:0 0 54px!important;
  height:54px!important;
  min-height:54px!important;
}
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  flex:1 1 auto!important;
  min-height:242px!important;
  max-height:270px!important;
  margin:0!important;
  padding:10px 14px 14px!important;
  overflow:hidden!important;
}
body.rdBrowserMode .rdMasterProgressRow{
  padding:6px 0!important;
}
@supports(height:100svh){
  body.rdBrowserMode .rdMasterPraxisPage{height:var(--rd-vvh,100svh)!important;max-height:var(--rd-vvh,100svh)!important;}
}

/* =========================================================
   RESET DISCIPLINE — V66 BROWSER DASHBOARD FINAL FIT
   Scope: browser-only dashboard geometry. App/PWA remains untouched.
   Goal: full Praxis dashboard visible in Safari browser, no clipped rows.
   ========================================================= */
body.rdBrowserMode:has(.rdMasterPraxisPage){
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisPage{
  height:var(--rd-vvh,100dvh)!important;
  min-height:0!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  height:var(--rd-vvh,100dvh)!important;
  min-height:0!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  padding:0 16px max(6px,env(safe-area-inset-bottom,0px))!important;
  box-sizing:border-box!important;
}
body.rdBrowserMode .rdMasterHero{
  flex:0 0 clamp(292px,44.5%,342px)!important;
  height:clamp(292px,44.5%,342px)!important;
  max-height:342px!important;
  min-height:0!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  background-position:center top!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{
  top:42.5%!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
  width:116px!important;
  min-width:116px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge strong,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:13px!important;
  text-shadow:0 0 15px rgba(232,192,107,.60),0 0 28px rgba(232,192,107,.25),0 2px 14px rgba(0,0,0,1)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:84px!important;
  height:3px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span i,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span i{
  box-shadow:0 0 12px rgba(232,192,107,.62),0 0 22px rgba(232,192,107,.28)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{
  bottom:84px!important;
  left:10px!important;
  right:10px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting h1,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting h1{
  font-size:clamp(26px,6.7vw,31px)!important;
  line-height:.92!important;
  white-space:nowrap!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting p,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting p{
  font-size:clamp(11.8px,3vw,13.2px)!important;
  margin-top:6px!important;
  white-space:nowrap!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{
  bottom:8px!important;
  left:12px!important;
  right:12px!important;
  gap:6px!important;
}
body.rdBrowserMode .rdMasterMetric{grid-template-columns:30px minmax(0,1fr)!important;gap:5px!important;}
body.rdBrowserMode .rdMasterMetricIcon{width:28px!important;height:28px!important;}
body.rdBrowserMode .rdMasterMetric strong{font-size:22px!important;line-height:.95!important;}
body.rdBrowserMode .rdMasterMetric small{font-size:6.6px!important;}
body.rdBrowserMode .rdMasterMetric b{font-size:8.5px!important;}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex:0 0 56px!important;
  height:56px!important;
  min-height:56px!important;
  margin:0!important;
  border-radius:20px!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn span,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn span{
  font-size:15px!important;
  letter-spacing:.16em!important;
}
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:10px 14px 10px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
body.rdBrowserMode .rdMasterProgressCard h3{
  flex:0 0 13px!important;
  height:13px!important;
  margin:0 0 6px!important;
  font-size:11px!important;
  line-height:1!important;
}
body.rdBrowserMode .rdMasterProgressRow{
  flex:1 1 0!important;
  min-height:0!important;
  padding:4px 0!important;
  grid-template-columns:31px minmax(0,1fr) 38px!important;
  gap:7px!important;
  align-items:center!important;
}
body.rdBrowserMode .rdMasterProgressRow + .rdMasterProgressRow{border-top:1px solid rgba(255,255,255,.07)!important;}
body.rdBrowserMode .rdMasterProgressIcon{width:27px!important;height:27px!important;}
body.rdBrowserMode .rdMasterProgressMain strong{
  font-size:10.8px!important;
  line-height:1!important;
  margin-bottom:5px!important;
  letter-spacing:.11em!important;
}
body.rdBrowserMode .rdMasterProgressMain i{height:4px!important;}
body.rdBrowserMode .rdMasterProgressCount{font-size:16.5px!important;line-height:1!important;}
@media(max-height:700px){
  body.rdBrowserMode .rdMasterHero{flex-basis:278px!important;height:278px!important;}
  body.rdBrowserMode .rdMasterSoloStartBtn,body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{flex-basis:52px!important;height:52px!important;min-height:52px!important;}
  body.rdBrowserMode .rdMasterProgressRow{padding:3px 0!important;}
  body.rdBrowserMode .rdMasterProgressIcon{width:25px!important;height:25px!important;}
  body.rdBrowserMode .rdMasterProgressMain strong{font-size:10.2px!important;}
  body.rdBrowserMode .rdMasterProgressCount{font-size:15.5px!important;}
}

/* ═══════════════════════════════════════════════════════════════
   RD DAY CLOSING SCREEN — Premium feedback screen after day close
   ═══════════════════════════════════════════════════════════════ */
.rdDayClosingPage { background: #0d0d0d !important; }
.rdDayClosingScreen {
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  padding: 0 20px 32px;
  gap: 0;
  background: #0d0d0d;
}
.rdClosingTop {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 52px 0 32px;
  gap: 10px;
  border-bottom: 1px solid rgba(226,196,110,.12);
  margin-bottom: 28px;
}
.rdClosingCheckmark {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: 2px solid rgba(226,196,110,.6);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: #e2c46e;
  margin-bottom: 8px;
}
.rdClosingTag {
  font-family: var(--font-display, 'Barlow Condensed', sans-serif);
  font-size: 11px;
  letter-spacing: .22em;
  color: rgba(226,196,110,.6);
  text-transform: uppercase;
}
.rdClosingPerf {
  font-family: var(--font-display, 'Barlow Condensed', sans-serif);
  font-size: 36px;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1;
}
.rdClosingFocus {
  font-size: 13px;
  color: rgba(255,255,255,.45);
  text-align: center;
  margin: 0;
  font-style: italic;
  max-width: 280px;
}
.rdClosingCoachBlock {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rdClosingCoachLabel {
  font-family: var(--font-display, 'Barlow Condensed', sans-serif);
  font-size: 10px;
  letter-spacing: .2em;
  color: rgba(226,196,110,.5);
  text-transform: uppercase;
}
.rdClosingFeedbackText {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(226,196,110,.1);
  border-radius: 14px;
  padding: 18px 20px;
}
.rdClosingFeedbackLine {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 1.55;
  color: rgba(255,255,255,.88);
}
.rdClosingFeedbackLine:last-child { margin-bottom: 0; }
.rdClosingActions {
  padding-top: 24px;
}
.rdClosingDashBtn {
  width: 100%;
  padding: 17px 0;
  background: #e2c46e;
  color: #0d0d0d;
  border: none;
  border-radius: 12px;
  font-family: var(--font-display, 'Barlow Condensed', sans-serif);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  cursor: pointer;
}

/* ═══════════════════════════════════════════════════════════════
   RD NIGHT MODE DIVIDER — Moon divider, visually distinct from day
   ═══════════════════════════════════════════════════════════════ */
.praxisCoachPage .coachSessionDivider.rdNightDivider,
.rdCoachVFinalPage .coachSessionDivider.rdNightDivider {
  color: rgba(180,160,220,.75) !important;
  margin: 20px 0 14px !important;
  font-size: 11px !important;
}
.praxisCoachPage .coachSessionDivider.rdNightDivider:before,
.praxisCoachPage .coachSessionDivider.rdNightDivider:after,
.rdCoachVFinalPage .coachSessionDivider.rdNightDivider:before,
.rdCoachVFinalPage .coachSessionDivider.rdNightDivider:after {
  background: rgba(180,160,220,.18) !important;
}

/* Night mode coach bubbles — slightly softer */
.praxisCoachPage .rdNightMsg .coachOpenText,
.rdCoachVFinalPage .rdNightMsg .coachOpenText {
  color: rgba(255,255,255,.8) !important;
}

/* ═══════════════════════════════════════════════════════════════
   RD PREMIUM CHAT LAYOUT v10 — Wider content, natural bubble width
   ═══════════════════════════════════════════════════════════════ */

/* Shell: less side padding so text gets more width */
.praxisCoachPage #praxisChatShell,
.praxisCoachPage .coachPageShell,
.rdCoachVFinalPage #praxisChatShell,
.rdCoachVFinalPage .coachPageShell {
  padding-left: 6px !important;
  padding-right: 6px !important;
}

/* Coach bubble: max-width up, natural inline width */
.praxisCoachPage .chatBubble.coach,
.rdCoachVFinalPage .chatBubble.coach {
  max-width: 92% !important;
  width: fit-content !important;
  padding: 14px 17px !important;
  font-size: 16.5px !important;
  line-height: 1.52 !important;
  border-radius: 4px 18px 18px 18px !important;
}

/* User bubble: only as wide as the text, aligned right */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user {
  max-width: 78% !important;
  width: fit-content !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  line-height: 1.48 !important;
  border-radius: 18px 4px 18px 18px !important;
}

/* Row spacing */
.praxisCoachPage .coachMsgRow,
.rdCoachVFinalPage .coachMsgRow {
  margin: 6px 0 !important;
  gap: 8px !important;
  align-items: flex-start !important;
}

/* Action bubbles match coach width */
.praxisCoachPage .actionBubble,
.rdCoachVFinalPage .actionBubble {
  max-width: 92% !important;
  width: fit-content !important;
}

/* ═══════════════════════════════════════════════════════════════
   RD CHAT BUBBLE PREMIUM LAYOUT v9c
   - Coach bubbles: full width, no unnecessary padding
   - User bubbles: fit-content, right-aligned, natural width
   - More text per line, less wasted space
   ═══════════════════════════════════════════════════════════════ */

/* Shell: edge-to-edge with minimal side padding */
.praxisCoachPage #praxisChatShell,
.praxisCoachPage .coachPageShell,
.rdCoachVFinalPage #praxisChatShell {
  padding-left: 6px !important;
  padding-right: 6px !important;
}

/* Message row: tighter gap between avatar and bubble */
.praxisCoachPage .coachMsgRow,
.rdCoachVFinalPage .coachMsgRow {
  margin: 6px 0 !important;
  gap: 6px !important;
  align-items: flex-start !important;
}

/* COACH bubble: nearly full width, starts at avatar edge */
.praxisCoachPage .chatBubble.coach,
.rdCoachVFinalPage .chatBubble.coach,
.praxisCoachPage .coachOpenText,
.rdCoachVFinalPage .coachOpenText {
  max-width: 97% !important;
  width: auto !important;
  padding: 13px 15px !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  border-radius: 4px 18px 18px 18px !important;
}

/* USER bubble: only as wide as content, right side */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user {
  max-width: 78% !important;
  width: fit-content !important;
  min-width: 48px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  padding: 11px 15px !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  border-radius: 18px 4px 18px 18px !important;
}

/* No-avatar coach rows (system messages, dividers) */
.praxisCoachPage .coachMsgRow.noAvatarCoach,
.rdCoachVFinalPage .coachMsgRow.noAvatarCoach {
  padding-left: 0 !important;
}
.praxisCoachPage .coachOpenRow .coachOpenText,
.rdCoachVFinalPage .coachOpenRow .coachOpenText {
  max-width: 97% !important;
  width: auto !important;
  padding: 13px 15px !important;
}

/* Action bubbles: same edge treatment */
.praxisCoachPage .actionBubble,
.rdCoachVFinalPage .actionBubble {
  max-width: 94% !important;
  padding: 11px 13px !important;
}

/* Check summary compact */
.praxisCoachPage .compactCheckSummary,
.rdCoachVFinalPage .compactCheckSummary {
  max-width: 94% !important;
  margin-left: 6px !important;
}

/* =========================================================
   RESET DISCIPLINE — TARGETED COACH CHAT VISUAL PATCH 2026-05-30
   Scope: coach avatar + chat text/bubble spacing only.
   ========================================================= */

.praxisCoachPage.rdCoachVFinalPage .rdCoachChatShell,
.praxisCoachPage.rdCoachVFinalPage #praxisChatShell,
.praxisCoachPage.rdCoachVFinalPage .coachPageShell,
.rdCoachVFinalPage #praxisChatShell,
.rdCoachVFinalPage .coachPageShell{
  padding-left:24px!important;
  padding-right:24px!important;
  box-sizing:border-box!important;
}

.praxisCoachPage.rdCoachVFinalPage #praxisChatMessages,
.praxisCoachPage.rdCoachVFinalPage .chatMessages,
.rdCoachVFinalPage #praxisChatMessages,
.rdCoachVFinalPage .chatMessages{
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

.praxisCoachPage.rdCoachVFinalPage .coachMsgRow.noAvatarCoach,
.rdCoachVFinalPage .coachMsgRow.noAvatarCoach{
  padding-left:0!important;
  padding-right:0!important;
  margin-left:0!important;
  margin-right:0!important;
}

.praxisCoachPage.rdCoachVFinalPage .coachOpenRow .coachOpenText,
.praxisCoachPage.rdCoachVFinalPage .coachOpenText,
.rdCoachVFinalPage .coachOpenRow .coachOpenText,
.rdCoachVFinalPage .coachOpenText{
  padding-left:0!important;
  padding-right:0!important;
  margin-left:0!important;
  margin-right:0!important;
  max-width:100%!important;
  width:auto!important;
}

.praxisCoachPage.rdCoachVFinalPage .coachMsgRow.user,
.rdCoachVFinalPage .coachMsgRow.user{
  padding-left:0!important;
  padding-right:0!important;
  margin-left:0!important;
  margin-right:0!important;
  display:flex!important;
  justify-content:flex-end!important;
}

.praxisCoachPage.rdCoachVFinalPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user{
  max-width:78%!important;
  width:fit-content!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:0!important;
  padding:9px 11px 9px 12px!important;
  box-sizing:border-box!important;
  line-height:1.42!important;
}

/* =========================================================
   RD PREMIUM CARD UNITY PATCH v65 — SAFE RESET VERSION
   Scope: visual card/radius/border/glow harmonisation only.
   IMPORTANT: no hero images, no hero positioning, no layout movement.
   Restores the original course-selection visual world by not touching backgrounds.
   ========================================================= */
:root{
  --rd-card-radius-main:16px;
  --rd-card-radius-inner:14px;
  --rd-card-radius-icon:11px;
  --rd-card-border:rgba(214,178,92,.42);
  --rd-card-border-soft:rgba(214,178,92,.31);
  --rd-card-gold:#d6b25c;
  --rd-card-bg:linear-gradient(180deg,rgba(17,16,12,.72) 0%,rgba(4,4,4,.94) 100%);
  --rd-card-bg-soft:linear-gradient(180deg,rgba(18,17,13,.66) 0%,rgba(3,3,3,.93) 100%);
  --rd-card-shadow:0 0 0 1px rgba(255,232,160,.035) inset,0 10px 24px rgba(0,0,0,.36),0 0 10px rgba(214,178,92,.075);
  --rd-card-shadow-soft:0 0 0 1px rgba(255,232,160,.03) inset,0 8px 20px rgba(0,0,0,.32),0 0 8px rgba(214,178,92,.055);
}

/* Course-selection cards: keep original forest image + positions, only card surface. */
.mainHomeBg.rdCourseSelectScreen .rdCourseCard{
  border-radius:var(--rd-card-radius-main)!important;
  border:1px solid var(--rd-card-border)!important;
  background:
    radial-gradient(ellipse at 50% 0%,rgba(214,178,92,.13) 0%,rgba(214,178,92,.055) 38%,rgba(0,0,0,0) 72%),
    var(--rd-card-bg)!important;
  box-shadow:var(--rd-card-shadow)!important;
  overflow:hidden!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard.isLocked{
  opacity:.96!important;
  filter:none!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{
  text-shadow:0 3px 14px rgba(0,0,0,.88)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLabel{
  color:var(--rd-card-gold)!important;
}

/* 30-Day course home: outer dashboard frame and all cards use one geometry. */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  border-radius:var(--rd-card-radius-main)!important;
  border:1px solid var(--rd-card-border)!important;
  background:linear-gradient(180deg,rgba(8,8,7,.66) 0%,rgba(2,2,2,.92) 100%)!important;
  box-shadow:var(--rd-card-shadow)!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .pathImageBtn,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathImageBtn,
.courseHomeBg.thirtyCourseHome .tile,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile{
  border-radius:var(--rd-card-radius-inner)!important;
  border:1px solid var(--rd-card-border-soft)!important;
  background-color:rgba(6,6,5,.72)!important;
  box-shadow:var(--rd-card-shadow-soft)!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .pathImageBtn::before,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathImageBtn::before,
.courseHomeBg.thirtyCourseHome .tile::before,
.courseHomeBg.thirtyCourseHome .premiumUtilityTile::before{
  border-radius:inherit!important;
}
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom,
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
  border-radius:var(--rd-card-radius-inner)!important;
  border:1px solid var(--rd-card-border-soft)!important;
  background:linear-gradient(90deg,rgba(8,8,7,.90),rgba(15,13,9,.76),rgba(3,3,3,.94))!important;
  box-shadow:var(--rd-card-shadow-soft)!important;
  overflow:hidden!important;
}
.courseHomeBg.thirtyCourseHome .premiumTileIcon,
.courseHomeBg.thirtyCourseHome .databaseIcon,
.courseHomeBg.thirtyCourseHome .courseHeroKicker{
  color:var(--rd-card-gold)!important;
}

/* Praxis dashboard: only action/progress surfaces, no hero movement or image changes. */
.rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn,
.rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterProgressCard{
  border-radius:var(--rd-card-radius-main)!important;
  border:1px solid var(--rd-card-border)!important;
  background:linear-gradient(180deg,rgba(5,5,4,.86) 0%,rgba(0,0,0,.96) 100%)!important;
  box-shadow:var(--rd-card-shadow)!important;
  overflow:hidden!important;
}
.rdMasterProgressIcon,
.rdMasterMetricIcon,
.rdPraxisFinal22 .rdMasterProgressIcon,
.rdPraxisFinal22 .rdMasterMetricIcon{
  border-radius:var(--rd-card-radius-icon)!important;
  border:1px solid var(--rd-card-border-soft)!important;
  background:rgba(0,0,0,.25)!important;
  box-shadow:0 0 8px rgba(214,178,92,.06)!important;
}
.rdMasterProgressCard h3,
.rdMasterProgressCount,
.rdMasterMetric b,
.rdMasterMetricIcon,
.rdPraxisLevelBadge strong,
.rdPraxisLevelBadge span{
  color:var(--rd-card-gold)!important;
}
.rdMasterProgressRow + .rdMasterProgressRow{
  border-top-color:rgba(255,255,255,.065)!important;
}
.rdMasterProgressMain i em,
.rdMasterProgressBar span,
.rdPraxisLevelBadge span i{
  background:linear-gradient(90deg,#bb8f3d,#d6b25c,#e5c071)!important;
  box-shadow:0 0 7px rgba(214,178,92,.16)!important;
}

/* Browser cache / desktop parity: prevent old too-round values from winning. */
body.rdBrowserMode .mainHomeBg.rdCourseSelectScreen .rdCourseCard,
body.rdBrowserMode .courseHomeBg.thirtyCourseHome .dashboardControlFrame,
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard,
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  border-radius:var(--rd-card-radius-main)!important;
  border:1px solid var(--rd-card-border)!important;
  box-shadow:var(--rd-card-shadow)!important;
}
body.rdBrowserMode .courseHomeBg.thirtyCourseHome .pathImageBtn,
body.rdBrowserMode .courseHomeBg.thirtyCourseHome .tile,
body.rdBrowserMode .courseHomeBg.thirtyCourseHome .journalDatabaseBtn{
  border-radius:var(--rd-card-radius-inner)!important;
  border:1px solid var(--rd-card-border-soft)!important;
  box-shadow:var(--rd-card-shadow-soft)!important;
}

@media(max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard,
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame,
  .rdMasterProgressCard,
  .rdMasterSoloStartBtn{border-radius:15px!important;}
  .courseHomeBg.thirtyCourseHome .pathImageBtn,
  .courseHomeBg.thirtyCourseHome .tile,
  .courseHomeBg.thirtyCourseHome .journalDatabaseBtn{border-radius:13px!important;}
}

/* =========================================================
   RD FINAL PATCH — Browser-only praxis vertical shift + level glow
   Scope: browser dashboard position only; PWA/home-screen layout stays untouched.
   ========================================================= */

/* Safari/browser version only: move the fixed one-screen dashboard lower without enabling scroll. */
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  height:var(--rd-vvh,100dvh)!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  padding-top:28px!important;
  padding-left:16px!important;
  padding-right:16px!important;
  padding-bottom:max(4px,env(safe-area-inset-bottom,0px))!important;
  box-sizing:border-box!important;
}

/* Browser-only compensation so the lowered dashboard still remains one fixed screen. */
body.rdBrowserMode .rdMasterHero{
  flex-basis:clamp(278px,41.5%,326px)!important;
  height:clamp(278px,41.5%,326px)!important;
  max-height:326px!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex-basis:54px!important;
  height:54px!important;
  min-height:54px!important;
}
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
}

/* Level: slightly bigger, stronger premium light, no position/layout change. */
.rdMasterPraxisPage .rdPraxisLevelBadge strong,
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:14px!important;
  letter-spacing:.23em!important;
  color:#f0c873!important;
  text-shadow:
    0 0 8px rgba(240,200,115,.56),
    0 0 18px rgba(240,200,115,.36),
    0 0 34px rgba(240,200,115,.18),
    0 2px 14px rgba(0,0,0,.96)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span,
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:84px!important;
  height:4px!important;
  background:rgba(255,255,255,.16)!important;
  box-shadow:0 0 10px rgba(240,200,115,.12)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span i,
.rdPraxisFinal22 .rdPraxisLevelBadge span i{
  background:linear-gradient(90deg,#f0c873,#d6a553,#9a6a2c)!important;
  box-shadow:
    0 0 10px rgba(240,200,115,.68),
    0 0 22px rgba(240,200,115,.34)!important;
}

/* Keep the browser compact variant readable after the larger level text. */
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge strong,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:14px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:86px!important;
  height:4px!important;
}

@media(max-height:700px){
  body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
  body.rdBrowserMode .rdMasterPraxisDash{padding-top:22px!important;gap:6px!important;}
  body.rdBrowserMode .rdMasterHero{flex-basis:266px!important;height:266px!important;}
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{flex-basis:50px!important;height:50px!important;min-height:50px!important;}
}

/* =========================================================
   RD FINAL USER PATCH 2026-05-30
   Scope:
   1) Course selection visual balance only.
   2) Safari browser Praxis dashboard bottom-anchored only.
   No PWA/standalone praxis movement, no image replacement.
   ========================================================= */

/* 1) Course selection: calmer hierarchy, buttons up, slightly more premium spacing. */
.mainHomeBg.rdCourseSelectScreen{
  overflow:hidden!important;
}
.mainHomeBg.rdCourseSelectScreen::before{
  background-image:
    linear-gradient(180deg,
      rgba(0,0,0,.00) 0%,
      rgba(0,0,0,.09) 31%,
      rgba(0,0,0,.38) 46%,
      rgba(0,0,0,.72) 61%,
      #030303 100%),
    url('assets/img/course-selection-hero.jpg')!important;
  background-size:cover!important;
  background-position:center top!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader{
  top:45.2svh!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{
  font-size:clamp(36px,9.35vw,49px)!important;
  line-height:.91!important;
  letter-spacing:.03em!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{
  margin-top:clamp(24px,3.35svh,34px)!important;
  font-size:clamp(13px,3.25vw,16px)!important;
  letter-spacing:.42em!important;
  text-indent:.42em!important;
  color:rgba(238,238,238,.82)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCards{
  top:58.9svh!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 34px)!important;
  gap:clamp(20px,2.55svh,26px)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard{
  border-radius:14px!important;
  border-color:rgba(214,178,92,.42)!important;
  background:
    radial-gradient(ellipse at 50% 0%,rgba(214,178,92,.13) 0%,rgba(214,178,92,.055) 38%,rgba(0,0,0,0) 72%),
    linear-gradient(180deg,rgba(17,16,12,.72) 0%,rgba(4,4,4,.94) 100%)!important;
  box-shadow:
    0 0 0 1px rgba(255,232,160,.035) inset,
    0 10px 24px rgba(0,0,0,.36),
    0 0 10px rgba(214,178,92,.075)!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{
  font-size:clamp(20px,5.55vw,27px)!important;
  letter-spacing:.035em!important;
}
.mainHomeBg.rdCourseSelectScreen .rdCardLabel{
  font-size:clamp(10px,2.7vw,13px)!important;
  letter-spacing:.42em!important;
  text-indent:.42em!important;
}
@media(max-height:760px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:44.2svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{font-size:clamp(33px,8.65vw,45px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:clamp(21px,3.0svh,29px)!important;font-size:clamp(12px,3.0vw,14px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:57.9svh!important;bottom:calc(env(safe-area-inset-bottom,0px) + 42px)!important;gap:clamp(18px,2.2svh,22px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCard h3{font-size:clamp(18px,5.05vw,24px)!important;}
}
@media(max-height:700px){
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader{top:43.4svh!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader h1{font-size:clamp(31px,8.05vw,41px)!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseHeader p{margin-top:20px!important;}
  .mainHomeBg.rdCourseSelectScreen .rdCourseCards{top:56.9svh!important;bottom:calc(env(safe-area-inset-bottom,0px) + 38px)!important;gap:16px!important;}
}

/* 2) Browser-only Praxis dashboard: bottom anchored, fixed, no scroll. */
body.rdBrowserMode .rdMasterPraxisPage{
  height:var(--rd-vvh,100dvh)!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  height:var(--rd-vvh,100dvh)!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding:0 16px max(0px,env(safe-area-inset-bottom,0px))!important;
  box-sizing:border-box!important;
}
body.rdBrowserMode .rdMasterHero{
  flex:0 0 clamp(322px,48%,374px)!important;
  height:clamp(322px,48%,374px)!important;
  max-height:374px!important;
  min-height:0!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  background-position:center top!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex:0 0 56px!important;
  height:56px!important;
  min-height:56px!important;
  margin:0!important;
}
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  flex:0 0 clamp(298px,39%,346px)!important;
  height:clamp(298px,39%,346px)!important;
  max-height:346px!important;
  min-height:0!important;
  margin:0!important;
  overflow:hidden!important;
}
@media(max-height:760px){
  body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
  body.rdBrowserMode .rdMasterPraxisDash{gap:7px!important;}
  body.rdBrowserMode .rdMasterHero{flex-basis:318px!important;height:318px!important;max-height:318px!important;}
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{flex-basis:54px!important;height:54px!important;min-height:54px!important;}
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{flex-basis:292px!important;height:292px!important;max-height:292px!important;}
}
@media(max-height:700px){
  body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
  body.rdBrowserMode .rdMasterPraxisDash{gap:6px!important;}
  body.rdBrowserMode .rdMasterHero{flex-basis:290px!important;height:290px!important;max-height:290px!important;}
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{flex-basis:50px!important;height:50px!important;min-height:50px!important;}
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{flex-basis:270px!important;height:270px!important;max-height:270px!important;}
}

/* =========================================================
   RESET DISCIPLINE — SAFE ROLLBACK PRECISION PATCH
   Basis: previous working image version. Scope only:
   1) Praxis greeting one tick smaller.
   2) Course dashboard AI-SYSTEM slightly larger + premium glow.
   3) Browser-only Praxis dashboard anchored from bottom with no dead gap.
   No hero image replacement, no background-image override.
   ========================================================= */

/* 1) Praxis headline: only one tick smaller. */
.rdMasterPraxisPage .rdMasterGreeting h1,
.rdPraxisFinal22 .rdMasterGreeting h1{
  font-size:clamp(27px,6.9vw,32px)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting h1,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting h1{
  font-size:clamp(25px,6.45vw,30px)!important;
}

/* 2) Build Your Discipline: AI-SYSTEM larger, clearer and softly glowing. */
.courseHomeBg.sevenCourseHome .courseHeroKicker,
.courseHomeBg.thirtyCourseHome .courseHeroKicker,
.courseHeroKicker{
  font-size:clamp(14px,3.35vw,17px)!important;
  letter-spacing:.28em!important;
  color:#f0c873!important;
  text-shadow:
    0 0 8px rgba(240,200,115,.58),
    0 0 18px rgba(240,200,115,.30),
    0 2px 14px rgba(0,0,0,.95)!important;
  filter:drop-shadow(0 0 8px rgba(240,200,115,.22))!important;
}

/* 3) Browser-only Praxis dashboard: keep original hero, but build the screen from the bottom up. */
body.rdBrowserMode:has(.rdMasterPraxisPage){
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisPage{
  height:var(--rd-vvh,100dvh)!important;
  min-height:0!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  height:var(--rd-vvh,100dvh)!important;
  min-height:0!important;
  max-height:var(--rd-vvh,100dvh)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  gap:7px!important;
  padding:0 16px 0!important;
  box-sizing:border-box!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterHero{
  flex:0 0 clamp(286px,42.5%,334px)!important;
  height:clamp(286px,42.5%,334px)!important;
  max-height:334px!important;
  min-height:0!important;
  width:calc(100% + 32px)!important;
  margin:0 -16px!important;
  background-position:center top!important;
  background-size:cover!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{
  top:42.5%!important;
  width:118px!important;
  min-width:118px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge strong,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:13.5px!important;
  text-shadow:
    0 0 14px rgba(240,200,115,.62),
    0 0 28px rgba(240,200,115,.28),
    0 2px 14px rgba(0,0,0,1)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span i,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span i{
  box-shadow:0 0 12px rgba(240,200,115,.68),0 0 24px rgba(240,200,115,.30)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{
  bottom:84px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting p,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting p{
  font-size:clamp(11.5px,2.95vw,13px)!important;
  margin-top:6px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{
  bottom:8px!important;
  left:12px!important;
  right:12px!important;
  gap:6px!important;
}
body.rdBrowserMode .rdMasterMetric{
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:5px!important;
}
body.rdBrowserMode .rdMasterMetricIcon{width:28px!important;height:28px!important;}
body.rdBrowserMode .rdMasterMetric strong{font-size:22px!important;line-height:.95!important;}
body.rdBrowserMode .rdMasterMetric small{font-size:6.6px!important;}
body.rdBrowserMode .rdMasterMetric b{font-size:8.5px!important;}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  flex:0 0 54px!important;
  height:54px!important;
  min-height:54px!important;
  margin:0!important;
  border-radius:18px!important;
}
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  flex:0 0 clamp(288px,39.5%,338px)!important;
  height:clamp(288px,39.5%,338px)!important;
  max-height:338px!important;
  min-height:0!important;
  margin:0!important;
  padding:10px 14px 10px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
body.rdBrowserMode .rdMasterProgressCard h3{
  flex:0 0 13px!important;
  height:13px!important;
  margin:0 0 6px!important;
  font-size:11px!important;
  line-height:1!important;
}
body.rdBrowserMode .rdMasterProgressRow{
  flex:1 1 0!important;
  min-height:0!important;
  padding:4px 0!important;
  grid-template-columns:31px minmax(0,1fr) 38px!important;
  gap:7px!important;
  align-items:center!important;
}
body.rdBrowserMode .rdMasterProgressIcon{width:27px!important;height:27px!important;}
body.rdBrowserMode .rdMasterProgressMain strong{
  font-size:10.8px!important;
  line-height:1!important;
  margin-bottom:5px!important;
  letter-spacing:.11em!important;
}
body.rdBrowserMode .rdMasterProgressMain i{height:4px!important;}
body.rdBrowserMode .rdMasterProgressCount{font-size:16.5px!important;line-height:1!important;}
@media(max-height:700px){
  body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
  body.rdBrowserMode .rdMasterPraxisDash{gap:6px!important;}
  body.rdBrowserMode .rdMasterHero{flex-basis:274px!important;height:274px!important;max-height:274px!important;}
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{flex-basis:50px!important;height:50px!important;min-height:50px!important;}
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{flex-basis:268px!important;height:268px!important;max-height:268px!important;}
  body.rdBrowserMode .rdMasterProgressRow{padding:3px 0!important;}
  body.rdBrowserMode .rdMasterProgressIcon{width:25px!important;height:25px!important;}
  body.rdBrowserMode .rdMasterProgressMain strong{font-size:10.1px!important;}
  body.rdBrowserMode .rdMasterProgressCount{font-size:15.5px!important;}
}

/* =========================================================
   RESET DISCIPLINE — FINAL BROWSER-ONLY PRAXIS POSITION FIX
   Scope only: Safari/browser Praxis dashboard vertical placement + level glow.
   PWA/home-screen layout is intentionally untouched.
   ========================================================= */

/* Stronger premium glow for Level 8 label and progress line, all modes. */
.rdMasterPraxisPage .rdPraxisLevelBadge strong,
.rdPraxisFinal22 .rdPraxisLevelBadge strong{
  color:#f4cc79!important;
  text-shadow:
    0 0 10px rgba(244,204,121,.70),
    0 0 22px rgba(244,204,121,.42),
    0 0 42px rgba(244,204,121,.22),
    0 2px 14px rgba(0,0,0,1)!important;
  filter:drop-shadow(0 0 8px rgba(244,204,121,.30))!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span,
.rdPraxisFinal22 .rdPraxisLevelBadge span{
  box-shadow:
    0 0 12px rgba(244,204,121,.20),
    0 0 28px rgba(244,204,121,.10)!important;
}
.rdMasterPraxisPage .rdPraxisLevelBadge span i,
.rdPraxisFinal22 .rdPraxisLevelBadge span i{
  box-shadow:
    0 0 12px rgba(244,204,121,.78),
    0 0 26px rgba(244,204,121,.42),
    0 0 44px rgba(244,204,121,.20)!important;
}

/* Browser-only: stop fighting flex/viewport conflicts by pinning the three sections absolutely. */
body.rdBrowserMode:has(.rdMasterPraxisPage),
body.rdBrowserMode .rdMasterPraxisPage{
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisPage{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:430px!important;
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  margin:0 auto!important;
  padding:0 16px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:#000!important;
}

/* Bottom section begins at the bottom of the browser viewport. */
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  position:absolute!important;
  left:16px!important;
  right:16px!important;
  bottom:0!important;
  height:342px!important;
  min-height:342px!important;
  max-height:342px!important;
  margin:0!important;
  padding:11px 14px 10px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  z-index:4!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  position:absolute!important;
  left:16px!important;
  right:16px!important;
  bottom:352px!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0!important;
  z-index:5!important;
}

/* Hero fills the remaining browser height above the bottom-anchored stack. */
body.rdBrowserMode .rdMasterHero{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  bottom:414px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  background-position:center top!important;
  background-size:cover!important;
  z-index:1!important;
}

/* Keep hero text/metrics inside the fixed hero, just as before — only the whole hero moved down by bottom anchoring. */
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{
  top:43%!important;
  width:120px!important;
  min-width:120px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge strong,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:14px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:88px!important;
  height:4px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{
  bottom:82px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{
  bottom:7px!important;
}

/* Compact browser heights: keep fixed screen, no scrolling, no bottom dead area. */
@media(max-height:760px){
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
    height:318px!important;
    min-height:318px!important;
    max-height:318px!important;
  }
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
    bottom:328px!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
  }
  body.rdBrowserMode .rdMasterHero{
    bottom:388px!important;
  }
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{bottom:76px!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{bottom:5px!important;}
}
@media(max-height:700px){
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
    height:292px!important;
    min-height:292px!important;
    max-height:292px!important;
  }
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
    bottom:301px!important;
    height:49px!important;
    min-height:49px!important;
    max-height:49px!important;
  }
  body.rdBrowserMode .rdMasterHero{
    bottom:358px!important;
  }
  body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
  body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{top:41.5%!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{bottom:70px!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{bottom:3px!important;}
}

/* =========================================================
   RESET DISCIPLINE — BROWSER-ONLY PRAXIS SPACING REPAIR
   Scope: Safari/browser Praxis dashboard only.
   PWA/home-screen layout, images, cards, colors and course pages untouched.
   Fixes: equal left/right spacing, no content bleeding over hero image, level closer to greeting, stronger level glow.
   ========================================================= */
body.rdBrowserMode .rdMasterPraxisPage{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  background:#000!important;
}
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22,
body.rdBrowserMode .rdMasterPraxisDash{
  position:relative!important;
  display:block!important;
  width:100vw!important;
  max-width:100vw!important;
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  margin:0!important;
  padding:0 16px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:#000!important;
}

/* Bottom stack: anchored inside the browser viewport with the same left/right gutters. */
body.rdBrowserMode .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  position:absolute!important;
  left:16px!important;
  right:16px!important;
  width:auto!important;
  max-width:none!important;
  box-sizing:border-box!important;
  bottom:8px!important;
  height:330px!important;
  min-height:330px!important;
  max-height:330px!important;
  margin:0!important;
  padding:12px 14px 10px!important;
  overflow:hidden!important;
  z-index:4!important;
}
body.rdBrowserMode .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
  position:absolute!important;
  left:16px!important;
  right:16px!important;
  width:auto!important;
  max-width:none!important;
  box-sizing:border-box!important;
  bottom:350px!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0!important;
  z-index:5!important;
}

/* Hero ends before the button stack starts, so Tag Start / Progress sit on clean black, not over the image. */
body.rdBrowserMode .rdMasterHero{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  bottom:418px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  background-size:cover!important;
  background-position:center top!important;
  z-index:1!important;
}

/* Level closer to greeting + stronger premium glow. */
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{
  top:48%!important;
  width:122px!important;
  min-width:122px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge strong,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge strong{
  font-size:14.2px!important;
  color:#f6cf7c!important;
  text-shadow:
    0 0 12px rgba(246,207,124,.78),
    0 0 26px rgba(246,207,124,.48),
    0 0 52px rgba(246,207,124,.24),
    0 2px 16px rgba(0,0,0,1)!important;
  filter:drop-shadow(0 0 10px rgba(246,207,124,.34))!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span{
  width:88px!important;
  height:4px!important;
  box-shadow:0 0 14px rgba(246,207,124,.22),0 0 28px rgba(246,207,124,.12)!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge span i,
body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge span i{
  box-shadow:0 0 14px rgba(246,207,124,.82),0 0 30px rgba(246,207,124,.46),0 0 50px rgba(246,207,124,.22)!important;
}

/* Keep greeting and metrics within the hero without changing PWA layout. */
body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{
  bottom:84px!important;
}
body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{
  left:14px!important;
  right:14px!important;
  bottom:8px!important;
}

@media(max-height:760px){
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
    bottom:8px!important;
    height:312px!important;
    min-height:312px!important;
    max-height:312px!important;
  }
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
    bottom:330px!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
  }
  body.rdBrowserMode .rdMasterHero{bottom:396px!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
  body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{top:47.5%!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{bottom:78px!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{bottom:6px!important;}
}
@media(max-height:700px){
  body.rdBrowserMode .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
    height:288px!important;
    min-height:288px!important;
    max-height:288px!important;
  }
  body.rdBrowserMode .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn{
    bottom:305px!important;
    height:49px!important;
    min-height:49px!important;
    max-height:49px!important;
  }
  body.rdBrowserMode .rdMasterHero{bottom:368px!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdPraxisLevelBadge,
  body.rdBrowserMode .rdPraxisFinal22 .rdPraxisLevelBadge{top:46.8%!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterGreeting,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterGreeting{bottom:70px!important;}
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterMetrics,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterMetrics{bottom:4px!important;}
}


/* REVIEW FLOW CLEANUP PATCH */
.rdCompactActionBubble{
  width:auto !important;
  max-width:max-content !important;
  padding:14px 18px !important;
  border-radius:22px !important;
  margin-left:0 !important;
}
.rdCompactActionBubble .inlineCoachAction{
  min-width:0 !important;
  padding:12px 22px !important;
}
.rdInlineCheckCard.done,
.rdCompactActionBubble.done{
  border-color:rgba(224,190,111,.55) !important;
  box-shadow:0 0 18px rgba(224,190,111,.12) !important;
}
.inlineCoachAction.done{
  opacity:.95 !important;
  color:#e8d293 !important;
  border-color:rgba(224,190,111,.55) !important;
  background:rgba(224,190,111,.10) !important;
}
.rdClosingFeedbackText{
  line-height:1.58 !important;
}
.rdClosingFeedbackLine{
  margin-bottom:18px !important;
}


/* RD FINAL PATCH — dashboard background + clean inline action buttons */
.courseHomeBg.thirtyCourseHome .courseHero,
.thirtyCourseHome .courseHero{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.30) 48%,rgba(0,0,0,.82) 100%),
    url('assets/img/course-selection-hero.jpg')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.thirtyCourseHome .courseHero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.00) 0%,rgba(0,0,0,.16) 40%,rgba(0,0,0,.70) 82%,#050505 100%)!important;
}

/* Coach action cards: remove the extra speech-bubble/card shell. Keep only the clean gold button. */
.coachMsgRow.actionRow.noAvatarAction,
.actionRow.noAvatarAction{
  align-items:flex-start!important;
  justify-content:flex-start!important;
  padding-left:0!important;
}
.coachMsgRow.actionRow.noAvatarAction > .chatBubble.coach.actionBubble,
.actionRow.noAvatarAction > .chatBubble.coach.actionBubble,
.coachMsgRow.actionRow.noAvatarAction .rdInlineCheckCard,
.coachMsgRow.actionRow.noAvatarAction .rdCompactActionBubble{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  padding:0!important;
  margin:0!important;
  width:auto!important;
  max-width:100%!important;
  min-height:0!important;
  border-radius:0!important;
}
.coachMsgRow.actionRow.noAvatarAction .rdInlineCheckText{
  margin:0 0 10px 0!important;
  padding:0!important;
  color:rgba(242,238,230,.76)!important;
  font-size:16px!important;
  line-height:1.35!important;
}
.coachMsgRow.actionRow.noAvatarAction .inlineCoachAction,
.actionRow.noAvatarAction .inlineCoachAction{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:124px!important;
  max-width:calc(100vw - 96px)!important;
  height:52px!important;
  padding:0 26px!important;
  border-radius:999px!important;
  border:1.2px solid rgba(232,194,84,.70)!important;
  background:linear-gradient(180deg,rgba(232,194,84,.13),rgba(232,194,84,.06))!important;
  color:rgba(247,233,190,.96)!important;
  box-shadow:0 0 0 1px rgba(255,235,170,.08) inset,0 0 18px rgba(232,194,84,.14)!important;
  font-family:var(--font-c),'Arial Narrow',Arial,sans-serif!important;
  font-size:18px!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
.coachMsgRow.actionRow.noAvatarAction .inlineCoachAction.done,
.actionRow.noAvatarAction .inlineCoachAction.done{
  color:rgba(247,233,190,.98)!important;
  border-color:rgba(232,194,84,.78)!important;
  background:linear-gradient(180deg,rgba(232,194,84,.20),rgba(232,194,84,.08))!important;
  box-shadow:0 0 0 1px rgba(255,235,170,.12) inset,0 0 22px rgba(232,194,84,.20)!important;
}

/* === RD FIX 2026-05-30: GLOBAL FIXED TOP NAV ONLY ===
   Scope: ONLY back/home/menu navigation.
   Keeps the three nav icons fixed on every scrollable screen and prevents
   transformed screen containers from turning position:fixed into scrolling content.
*/
.screen{
  transform:none!important;
}
.topbar.rdGlobalTopbar,
.mainHomeBg .topbar.rdGlobalTopbar,
.courseHomeBg .topbar.rdGlobalTopbar,
.aiPraxisScreen .topbar.rdGlobalTopbar,
.rdPraxisDashboard .topbar.rdGlobalTopbar,
.praxisDashboardOnly .topbar.rdGlobalTopbar,
.rdPraxisToolPage .topbar.rdGlobalTopbar,
.moduleDashboardScreen .topbar.rdGlobalTopbar,
.goalScreen .topbar.rdGlobalTopbar,
.introArticleScreen .topbar.rdGlobalTopbar,
.introVideoScreen .topbar.rdGlobalTopbar,
.dayIntroScreen .topbar.rdGlobalTopbar,
.lockStartScreen .topbar.rdGlobalTopbar,
.dayCourseTextScreen .topbar.rdGlobalTopbar,
.sevenCourseTextScreen .topbar.rdGlobalTopbar,
.dayCompleteScreen .topbar.rdGlobalTopbar,
.praxisCoachPage .topbar.rdGlobalTopbar,
.rdCoachVFinalPage .topbar.rdGlobalTopbar,
.rdCleanPraxisPage .topbar.rdGlobalTopbar,
main.rdCleanPraxisPage .topbar.rdGlobalTopbar{
  position:fixed!important;
  top:calc(env(safe-area-inset-top,0px) + 14px)!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:0 max(18px,calc(env(safe-area-inset-left,0px) + 18px)) 0 max(18px,calc(env(safe-area-inset-right,0px) + 18px))!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  z-index:2147483000!important;
  pointer-events:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transform:none!important;
  will-change:auto!important;
  contain:none!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn{
  position:relative!important;
  pointer-events:auto!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:rgba(255,255,255,.98)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transform:none!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg{
  width:22px!important;
  height:22px!important;
  stroke:currentColor!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.68))!important;
}

/* === RD FIX 2026-05-31: NAV SCROLL FADE ONLY ===
   Scope: top navigation only. Fixed nav stays in the same position;
   it fades/slides away on downward scroll and returns on upward scroll.
*/
.topbar.rdGlobalTopbar{
  transition: opacity .22s ease, transform .22s ease!important;
}
.topbar.rdGlobalTopbar.rdNavHidden{
  opacity:0!important;
  transform:translateY(-18px)!important;
  pointer-events:none!important;
}
.topbar.rdGlobalTopbar.rdNavVisible{
  opacity:1!important;
  transform:translateY(0)!important;
}


/* RESET DISCIPLINE — V70 COMPACT CHAT ACTION BUTTONS */
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction,
.rdCoachVFinalPage .coachMsgRow.actionRow.noAvatarAction{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  padding:6px 0 10px!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction > .chatBubble.coach.actionBubble,
.rdCoachVFinalPage .coachMsgRow.actionRow.noAvatarAction > .chatBubble.coach.actionBubble,
.praxisCoachPage .actionBubble,
.rdCoachVFinalPage .actionBubble,
.praxisCoachPage .rdInlineCheckCard,
.rdCoachVFinalPage .rdInlineCheckCard,
.praxisCoachPage .rdCompactActionBubble,
.rdCoachVFinalPage .rdCompactActionBubble{
  display:contents!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.praxisCoachPage .rdInlineCheckText,
.rdCoachVFinalPage .rdInlineCheckText,
.praxisCoachPage .actionBubble span,
.rdCoachVFinalPage .actionBubble span{
  display:none!important;
}
.praxisCoachPage .rdMiniChatAction,
.rdCoachVFinalPage .rdMiniChatAction,
.praxisCoachPage .inlineCoachAction,
.rdCoachVFinalPage .inlineCoachAction{
  width:auto!important;
  min-width:0!important;
  max-width:fit-content!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  border:1px solid rgba(224,185,105,.72)!important;
  background:linear-gradient(180deg, rgba(224,185,105,.14), rgba(20,17,10,.58))!important;
  color:#f3d28b!important;
  font-family:var(--font-display)!important;
  font-size:12px!important;
  line-height:1!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
  box-shadow:0 0 14px rgba(224,185,105,.14), inset 0 0 18px rgba(224,185,105,.06)!important;
  white-space:nowrap!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.praxisCoachPage .rdMiniChatAction.done,
.rdCoachVFinalPage .rdMiniChatAction.done,
.praxisCoachPage .inlineCoachAction.done,
.rdCoachVFinalPage .inlineCoachAction.done{
  background:linear-gradient(180deg, rgba(224,185,105,.18), rgba(35,30,14,.62))!important;
  border-color:rgba(224,185,105,.88)!important;
  color:#ffe0a0!important;
  opacity:.96!important;
}
@media (max-width:430px){
  .praxisCoachPage .rdMiniChatAction,
  .rdCoachVFinalPage .rdMiniChatAction,
  .praxisCoachPage .inlineCoachAction,
  .rdCoachVFinalPage .inlineCoachAction{
    height:31px!important;
    min-height:31px!important;
    padding:0 14px!important;
    font-size:10.5px!important;
    letter-spacing:.18em!important;
  }
}

/* =========================================================
   RD FINAL USER MESSAGE VISIBILITY SAFETY PATCH
   Scope: Chat UI only. Does not touch Worker, Supabase URL,
   Nightmode logic, message sending, or coach intelligence.
   ========================================================= */
.praxisCoachPage .chatMessages,
.rdCoachVFinalPage .chatMessages{
  display:block !important;
}
.praxisCoachPage .coachMsgRow.user,
.rdCoachVFinalPage .coachMsgRow.user{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:flex-start !important;
  width:100% !important;
  opacity:1 !important;
  visibility:visible !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
  margin:8px 0 10px !important;
  padding:0 10px 0 28px !important;
  pointer-events:auto !important;
}
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  position:relative !important;
  width:auto !important;
  max-width:82% !important;
  min-width:0 !important;
  height:auto !important;
  color:#f7f1e6 !important;
  background:linear-gradient(180deg, rgba(42,34,20,.96), rgba(16,15,14,.96)) !important;
  border:1px solid rgba(211,174,91,.44) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.34), 0 0 18px rgba(211,174,91,.08) !important;
  border-radius:18px 18px 5px 18px !important;
  padding:11px 14px !important;
  font-size:16px !important;
  line-height:1.42 !important;
  letter-spacing:.01em !important;
  white-space:pre-wrap !important;
  word-break:break-word !important;
  transform:none !important;
}
.praxisCoachPage .chatBubble.user *,
.rdCoachVFinalPage .chatBubble.user *{
  color:inherit !important;
  opacity:1 !important;
  visibility:visible !important;
}


/* ═══════════════════════════════════════════════
   FINAL VISUAL PATCH
   - User bubble: dark grey, grey border (no gold)
   - Coach avatar: grey border (no gold)
   ═══════════════════════════════════════════════ */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user {
  background: linear-gradient(180deg, rgba(52,52,52,0.97), rgba(30,30,30,0.97)) !important;
  border: 1px solid rgba(130,130,130,0.50) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.38) !important;
  color: #f0ece4 !important;
}
.praxisCoachPage .coachMsgRow.user,
.rdCoachVFinalPage .coachMsgRow.user {
  display: flex !important;
  justify-content: flex-end !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.rdCoachTop img,
.praxisCoachPage .rdCoachTop img,
.rdCoachVFinalPage .rdCoachTop img {
  border: 1.5px solid rgba(120,120,120,0.55) !important;
}


/* ═══════════════════════════════════════════════════════════
   FINAL PATCH: Voice input bar stays identical size
   during recording — only the wave animation appears inside.
   Send button stays same size. Grid stays same size.
   ═══════════════════════════════════════════════════════════ */
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage .rdComposerWrap .rdCleanComposer,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanComposer {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 48px !important;
  gap: 10px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  align-items: center !important;
  width: 100% !important;
}
.praxisCoachPage .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell {
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  border-radius: 20px !important;
}
.praxisCoachPage .rdSendBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdSendBtn {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  border-radius: 20px !important;
}
/* Grey user bubble - no gold */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user {
  background: linear-gradient(180deg, rgba(52,52,52,0.97), rgba(30,30,30,0.97)) !important;
  border: 1px solid rgba(130,130,130,0.50) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.38) !important;
  color: #f0ece4 !important;
}
/* Coach avatar grey border */
.rdCoachTop img,
.praxisCoachPage .rdCoachTop img,
.rdCoachVFinalPage .rdCoachTop img {
  border: 1.5px solid rgba(120,120,120,0.55) !important;
}

/* =========================================================
   RESET DISCIPLINE — V16 TARGETED MICRO PATCH 2026-05-31
   Scope only: Praxis coach composer voice-state geometry + own message bubble.
   No layout, flow, microphone, worker or app logic changed.
   ========================================================= */
.praxisCoachPage .rdComposerWrap,
.praxisCoachPage .rdComposerWrap.voiceActive{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:9999!important;
  width:100%!important;
  min-height:64px!important;
  padding:7px 28px max(8px,calc(env(safe-area-inset-bottom,0px) - 14px)) 28px!important;
  margin:0!important;
  box-sizing:border-box!important;
  transform:none!important;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.92) 34%,#000 100%)!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
}
.praxisCoachPage .rdCleanComposer,
.praxisCoachPage #rdChatInputRow.rdCleanComposer,
.praxisCoachPage .rdCleanComposer.voiceActive,
.praxisCoachPage #rdChatInputRow.rdCleanComposer.voiceActive,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanComposer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  gap:10px!important;
  width:100%!important;
  max-width:760px!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  margin:0 auto!important;
  align-items:center!important;
  box-sizing:border-box!important;
}
.praxisCoachPage .rdCleanInputShell,
.praxisCoachPage .rdCleanComposer.voiceActive .rdCleanInputShell,
.praxisCoachPage .rdComposerWrap.voiceActive .rdCleanInputShell{
  position:relative!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  padding:0 48px 0 16px!important;
  border-radius:20px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(31,31,34,.96),rgba(17,17,19,.98))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 8px 20px rgba(0,0,0,.38)!important;
}
.praxisCoachPage #praxisInput,
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput,
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput{
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  line-height:48px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:16px!important;
  box-sizing:border-box!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive #praxisInput,
.praxisCoachPage .rdComposerWrap.voiceActive #praxisInput{
  opacity:0!important;
  color:transparent!important;
  caret-color:transparent!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdInputVoiceWaves{
  display:none!important;
}
.praxisCoachPage .rdCleanComposer.voiceActive .rdInputVoiceWaves,
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves{
  display:flex!important;
  position:absolute!important;
  left:18px!important;
  right:58px!important;
  top:50%!important;
  height:28px!important;
  transform:translateY(-50%)!important;
  align-items:center!important;
  gap:3px!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdInputVoiceWaves span{
  flex:0 0 3px!important;
  width:3px!important;
  min-width:3px!important;
  max-width:3px!important;
  border-radius:999px!important;
  background:rgba(236,236,236,.66)!important;
  animation:rdV16StableVoicePulse .62s ease-in-out infinite alternate!important;
  animation-delay:calc(var(--i,1) * -42ms)!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(2n){animation-duration:.74s!important;opacity:.86!important;}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(3n){animation-duration:.56s!important;opacity:.72!important;}
@keyframes rdV16StableVoicePulse{
  from{height:7px;opacity:.35;transform:scaleY(.55)}
  to{height:25px;opacity:.96;transform:scaleY(1)}
}
.praxisCoachPage .rdVoiceTimer,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceTimer,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceTimer{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdVoiceBtn,
.praxisCoachPage .rdCleanComposer .rdVoiceBtn,
.praxisCoachPage .rdCleanInputShell .rdVoiceBtn,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn{
  position:absolute!important;
  right:7px!important;
  top:50%!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.praxisCoachPage .rdVoiceBtn::before,
.praxisCoachPage .rdVoiceBtn::after{display:none!important;content:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdMicIcon,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdMicIcon{display:none!important;}
.praxisCoachPage .rdComposerWrap.voiceActive .rdVoiceBtn .rdStopIcon,
.praxisCoachPage .rdCleanComposer.voiceActive .rdVoiceBtn .rdStopIcon{
  display:block!important;
  width:10px!important;
  height:10px!important;
  border-radius:3px!important;
  background:rgba(245,245,245,.94)!important;
  box-shadow:none!important;
}
.praxisCoachPage .rdSendBtn,
.praxisCoachPage .rdCleanComposer > .rdSendBtn,
.praxisCoachPage .rdComposerWrap.voiceActive .rdSendBtn{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  border-radius:20px!important;
  box-sizing:border-box!important;
}
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user{
  background:linear-gradient(180deg,rgba(28,28,30,.98),rgba(11,11,12,.98))!important;
  border:1px solid rgba(155,155,155,.42)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.035)!important;
  color:#f2eee7!important;
}

/* =========================================================
   RD TARGETED MICRO PATCH 2026-05-31 B
   Scope only:
   1) own chat bubble border slightly darker
   2) 7-day module dashboard START button surface
   3) praxis database day detail top spacing
   No microphone, coach, routing, Supabase or course logic changed.
   ========================================================= */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user{
  border-color:rgba(112,112,112,.36)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.026)!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn,
.moduleDashboardScreen .courseIntroStartBtn,
.courseIntroStartBtn{
  border:1px solid rgba(214,178,92,.42)!important;
  background:linear-gradient(180deg,rgba(5,5,4,.84) 0%,rgba(0,0,0,.95) 100%)!important;
  color:#fff!important;
  border-radius:18px!important;
  box-shadow:0 0 0 1px rgba(255,232,160,.035) inset,0 10px 24px rgba(0,0,0,.36),0 0 10px rgba(214,178,92,.075)!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  width:calc(100% - 48px)!important;
  max-width:760px!important;
  margin:22px auto 0!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn:hover,
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn:active{
  background:linear-gradient(180deg,rgba(7,7,6,.88) 0%,rgba(0,0,0,.98) 100%)!important;
  border-color:rgba(214,178,92,.50)!important;
}
.archiveDetailScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 102px)!important;
}
.archiveDetailScreen > .tag:first-of-type{
  margin-top:0!important;
}
.archiveDetailScreen > h1:first-of-type{
  margin-top:10px!important;
}
@media(max-width:430px){
  .archiveDetailScreen{
    padding-top:calc(env(safe-area-inset-top,0px) + 108px)!important;
  }
  .moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn,
  .moduleDashboardScreen .courseIntroStartBtn,
  .courseIntroStartBtn{
    height:62px!important;
    min-height:62px!important;
    max-height:62px!important;
    width:calc(100% - 62px)!important;
    border-radius:18px!important;
  }
}

/* =========================================================
   RD EXACT TARGETED FIX 2026-05-31 C
   Scope only:
   1) 7-day course dashboard START button: keep layout size, tile-style surface.
   2) Course dashboard DATENBANK button: same dark/grey tile design, wide shape preserved.
   3) Praxis database day detail: safe top spacing now applies because app.js passes archiveDetailScreen.
   4) Own chat bubble border: one tick darker.
   No voice/microphone logic, routing, Supabase or course progress logic changed.
   ========================================================= */

/* 1) 7-Tage Kurs START: same broad layout, only visual surface like dashboard tiles */
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn,
.moduleDashboardScreen .courseIntroStartBtn{
  width:calc(100% - 64px)!important;
  max-width:760px!important;
  min-width:0!important;
  height:70px!important;
  min-height:70px!important;
  max-height:70px!important;
  margin:22px auto 0!important;
  border-radius:24px!important;
  border:1px solid rgba(198,156,78,.50)!important;
  background:radial-gradient(circle at 50% 0%,rgba(198,156,78,.075),rgba(18,18,16,.58) 42%,rgba(0,0,0,.88) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.025) inset,0 10px 24px rgba(0,0,0,.44),0 0 10px rgba(198,156,78,.06)!important;
  backdrop-filter:blur(1.5px)!important;
  -webkit-backdrop-filter:blur(1.5px)!important;
  color:#fff!important;
  letter-spacing:.16em!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn:active,
.moduleDashboardScreen .courseIntroStartBtn:active{
  transform:scale(.992)!important;
  border-color:rgba(198,156,78,.56)!important;
  background:radial-gradient(circle at 50% 0%,rgba(198,156,78,.09),rgba(16,16,14,.62) 42%,rgba(0,0,0,.90) 100%)!important;
}
@media(max-width:430px){
  .moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn,
  .moduleDashboardScreen .courseIntroStartBtn{
    width:calc(100% - 64px)!important;
    height:70px!important;
    min-height:70px!important;
    max-height:70px!important;
    border-radius:24px!important;
  }
}

/* 2) Datenbank button: same dark/grey tile style as the six small dashboard buttons, wide shape preserved */
.courseHomeBg.sevenCourseHome .journalDatabaseBtn,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom{
  background-image:radial-gradient(circle at 50% 0%,rgba(198,156,78,.075),rgba(18,18,16,.58) 42%,rgba(0,0,0,.88) 100%)!important;
  background-color:rgba(0,0,0,.88)!important;
  border:1px solid rgba(198,156,78,.50)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.025) inset,0 10px 24px rgba(0,0,0,.44),0 0 10px rgba(198,156,78,.06)!important;
  backdrop-filter:blur(1.5px)!important;
  -webkit-backdrop-filter:blur(1.5px)!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn::after,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn::after,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom::after,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom::after{
  display:none!important;
  content:none!important;
}
.courseHomeBg.sevenCourseHome .journalDatabaseBtn .databaseGroup,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn .databaseGroup,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom .databaseGroup,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom .databaseGroup{
  position:relative!important;
  z-index:3!important;
}

/* 3) Praxis Tage Detail: avoid iOS status/topbar collision only on this detail screen */
.archiveDetailScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 132px)!important;
  overflow-y:auto!important;
  min-height:100dvh!important;
  box-sizing:border-box!important;
}
.archiveDetailScreen > .tag:first-child{
  margin-top:0!important;
}
.archiveDetailScreen > h1:first-of-type{
  margin-top:12px!important;
}
@media(max-width:430px){
  .archiveDetailScreen{
    padding-top:calc(env(safe-area-inset-top,0px) + 138px)!important;
  }
}

/* 4) Own message bubble: darker border only, background stays dark */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user{
  border-color:rgba(86,86,86,.34)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.02)!important;
}


/* =========================================================
   RD FINAL CORRECTION 2026-05-31 D
   Only fixes the three confirmed issues:
   - 7-day START button: keep original broad size/position, tile-style visual surface.
   - DATENBANK button: same visual language as the six dashboard tiles, no archive image overlay.
   - Praxis archive day detail: remove excessive black top space, keep content safely below fixed topbar.
   Also keeps the user's own chat bubble border one tick darker.
   ========================================================= */

/* shared tile surface copied from the approved dashboard utility tiles */
.rdMatchTileSurface,
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn.rdMatchTileSurface,
.moduleDashboardScreen .courseIntroStartBtn.rdMatchTileSurface,
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.sevenCourseHome .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn.rdMatchTileSurface{
  border:1.05px solid rgba(198,156,78,.60)!important;
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  background-image:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 9px 22px rgba(0,0,0,.40),0 0 13px rgba(198,156,78,.11)!important;
  color:rgba(247,244,237,.96)!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* 7-day START: restore the broad original footprint; change only the surface */
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn.rdMatchTileSurface,
.moduleDashboardScreen .courseIntroStartBtn.rdMatchTileSurface{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:calc(100% - 32px)!important;
  max-width:none!important;
  min-width:0!important;
  height:70px!important;
  min-height:70px!important;
  max-height:70px!important;
  margin:22px 16px 0!important;
  padding:0 20px!important;
  border-radius:24px!important;
  font-family:var(--font-c)!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn.rdMatchTileSurface::before,
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn.rdMatchTileSurface::after,
.moduleDashboardScreen .courseIntroStartBtn.rdMatchTileSurface::before,
.moduleDashboardScreen .courseIntroStartBtn.rdMatchTileSurface::after{
  display:none!important;
  content:none!important;
}
.moduleDashboardScreen .moduleDashboardHeroContent .courseIntroStartBtn.rdMatchTileSurface:active,
.moduleDashboardScreen .courseIntroStartBtn.rdMatchTileSurface:active{
  transform:scale(.985)!important;
  border-color:rgba(198,156,78,.68)!important;
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.23),rgba(18,18,14,.78) 45%,rgba(0,0,0,.94) 100%)!important;
  background-image:radial-gradient(circle at 50% 10%,rgba(198,156,78,.23),rgba(18,18,14,.78) 45%,rgba(0,0,0,.94) 100%)!important;
}

/* DATENBANK: same approved tile surface, only wide */
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.sevenCourseHome .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom.rdMatchTileSurface,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom.rdMatchTileSurface{
  height:76px!important;
  min-height:76px!important;
  margin:0!important;
  border-radius:19px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background-size:auto!important;
  background-position:center!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface::before,
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface::after,
.courseHomeBg.sevenCourseHome .journalDatabaseBtn.rdMatchTileSurface::before,
.courseHomeBg.sevenCourseHome .journalDatabaseBtn.rdMatchTileSurface::after,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn.rdMatchTileSurface::before,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn.rdMatchTileSurface::after{
  display:none!important;
  content:none!important;
  background:none!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface .databaseGroup{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  position:relative!important;
  z-index:3!important;
  transform:translateX(-2px)!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface .databaseIcon{
  display:inline-flex!important;
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  color:rgba(211,169,83,.95)!important;
  filter:drop-shadow(0 0 8px rgba(198,156,78,.22))!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface .databaseText{
  font-family:var(--font-d)!important;
  font-size:25px!important;
  line-height:1!important;
  letter-spacing:.16em!important;
  color:rgba(247,244,237,.96)!important;
  text-align:center!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface:active{
  transform:scale(.985)!important;
  border-color:rgba(198,156,78,.68)!important;
}

/* Praxis day detail: safe, but no huge dead black space above TAG-DETAIL */
.archiveDetailScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 82px)!important;
  padding-bottom:calc(env(safe-area-inset-bottom,0px) + 90px)!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  min-height:100dvh!important;
  box-sizing:border-box!important;
}
.archiveDetailScreen > .tag:first-of-type{
  margin-top:0!important;
}
.archiveDetailScreen > h1:first-of-type{
  margin-top:24px!important;
}
@media(max-width:430px){
  .archiveDetailScreen{
    padding-top:calc(env(safe-area-inset-top,0px) + 78px)!important;
  }
}
@media(max-height:760px){
  .archiveDetailScreen{
    padding-top:calc(env(safe-area-inset-top,0px) + 70px)!important;
  }
}

/* User bubble border: darker, still visible grey contrast */
.praxisCoachPage .chatBubble.user,
.rdCoachVFinalPage .chatBubble.user{
  border-color:rgba(72,72,72,.34)!important;
}

/* =========================================================
   RD TARGETED POLISH 2026-05-31 E
   Scope:
   1) Make course DATENBANK button lower/narrower in height for cleaner spacing.
   2) Apply the approved dark-gold tile surface to Praxis TAG STARTEN.
   3) Apply the same surface to Praxis Fortschritt card without changing function/data.
   CSS only. No microphone, chat, routing or storage logic touched.
   ========================================================= */

/* 1) DATENBANK: same tile design, reduced height so surrounding spacing breathes */
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.sevenCourseHome .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.thirtyCourseHome .journalDatabaseBtn.rdMatchTileSurface,
.courseHomeBg.sevenCourseHome .sevenDatabaseBottom.rdMatchTileSurface,
.courseHomeBg.thirtyCourseHome .thirtyDatabaseBottom.rdMatchTileSurface{
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  border-radius:17px!important;
  padding:0 15px!important;
  margin:0!important;
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  background-image:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  border:1.05px solid rgba(198,156,78,.60)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 9px 22px rgba(0,0,0,.40),0 0 13px rgba(198,156,78,.11)!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface .databaseIcon{
  width:30px!important;
  height:30px!important;
  flex-basis:30px!important;
}
.courseHomeBg .journalDatabaseBtn.rdMatchTileSurface .databaseText{
  font-size:23px!important;
}

/* 2) Praxis TAG STARTEN: approved tile surface, function unchanged */
.rdMasterPraxisPage .rdMasterSoloStartBtn,
.rdPraxisFinal22 .rdMasterSoloStartBtn{
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  background-image:radial-gradient(circle at 50% 10%,rgba(198,156,78,.19),rgba(18,18,14,.76) 45%,rgba(0,0,0,.92) 100%)!important;
  border:1.05px solid rgba(198,156,78,.60)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.06) inset,0 9px 22px rgba(0,0,0,.40),0 0 13px rgba(198,156,78,.11)!important;
  border-radius:19px!important;
  color:rgba(247,244,237,.96)!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.rdMasterPraxisPage .rdMasterSoloStartBtn:active,
.rdPraxisFinal22 .rdMasterSoloStartBtn:active{
  transform:scale(.985)!important;
  border-color:rgba(198,156,78,.68)!important;
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.23),rgba(18,18,14,.78) 45%,rgba(0,0,0,.94) 100%)!important;
  background-image:radial-gradient(circle at 50% 10%,rgba(198,156,78,.23),rgba(18,18,14,.78) 45%,rgba(0,0,0,.94) 100%)!important;
}

/* 3) Praxis Fortschritt card: same dark-gold surface, inner rows remain readable */
.rdMasterPraxisPage .rdMasterProgressCard,
.rdPraxisFinal22 .rdMasterProgressCard{
  background:radial-gradient(circle at 50% 10%,rgba(198,156,78,.14),rgba(18,18,14,.72) 42%,rgba(0,0,0,.93) 100%)!important;
  background-image:radial-gradient(circle at 50% 10%,rgba(198,156,78,.14),rgba(18,18,14,.72) 42%,rgba(0,0,0,.93) 100%)!important;
  border:1.05px solid rgba(198,156,78,.60)!important;
  box-shadow:0 0 0 1px rgba(255,226,150,.055) inset,0 10px 25px rgba(0,0,0,.42),0 0 13px rgba(198,156,78,.10)!important;
  border-radius:19px!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.rdMasterPraxisPage .rdMasterProgressRow,
.rdPraxisFinal22 .rdMasterProgressRow{
  background:rgba(0,0,0,.10)!important;
  border-color:rgba(255,226,150,.055)!important;
}

/* ============================================================================
   RD V31 targeted polish: smaller check/action pills + stable voice visuals
============================================================================ */
.praxisCoachPage .rdInlineCheckCard.actionBubble,
.praxisCoachPage .actionBubble.rdInlineCheckCard{
  width:auto!important;
  min-width:0!important;
  max-width:76%!important;
  min-height:0!important;
  padding:7px 10px!important;
  border-radius:15px!important;
  gap:8px!important;
  background:rgba(14,14,15,.78)!important;
  border:1px solid rgba(188,151,78,.36)!important;
  box-shadow:0 0 14px rgba(188,151,78,.10)!important;
}
.praxisCoachPage .rdInlineCheckText{
  font-size:10px!important;
  line-height:1.15!important;
  letter-spacing:.06em!important;
  color:rgba(236,229,211,.62)!important;
  white-space:normal!important;
  max-width:175px!important;
}
.praxisCoachPage .inlineCoachAction,
.praxisCoachPage .rdInlineCheckCard .inlineCoachAction{
  height:30px!important;
  min-height:30px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  font-size:10.5px!important;
  letter-spacing:.14em!important;
  background:rgba(183,144,67,.13)!important;
  border:1px solid rgba(210,171,86,.48)!important;
  color:rgba(255,239,202,.94)!important;
  box-shadow:0 0 10px rgba(198,158,77,.10)!important;
}
.praxisCoachPage .actionRow{margin:8px 0 16px!important;}
.praxisCoachPage .rdTodoActionBubble.actionBubble{max-width:80%!important;padding:8px 11px!important;border-radius:15px!important;}
@media(max-width:520px){
  .praxisCoachPage .rdInlineCheckCard.actionBubble,
  .praxisCoachPage .actionBubble.rdInlineCheckCard{max-width:82%!important;padding:7px 10px!important;}
  .praxisCoachPage .rdInlineCheckText{font-size:9.5px!important;max-width:150px!important;}
  .praxisCoachPage .inlineCoachAction,.praxisCoachPage .rdInlineCheckCard .inlineCoachAction{height:29px!important;min-height:29px!important;font-size:10px!important;padding:0 12px!important;}
}
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves span{animation:rdVoiceBarPulse .72s ease-in-out infinite alternate!important;}


/* RESET DISCIPLINE · V32 evening / night mode polish */
.praxisCoachPage .inlineCoachAction,
.rdCoachVFinalPage .inlineCoachAction,
.praxisCoachPage .rdInlineCheckCard .inlineCoachAction,
.rdCoachVFinalPage .rdInlineCheckCard .inlineCoachAction{
  height:28px!important;
  min-height:28px!important;
  padding:0 12px!important;
  font-size:9.8px!important;
  letter-spacing:.13em!important;
  border-color:rgba(207,168,88,.44)!important;
  background:rgba(178,139,65,.105)!important;
  box-shadow:0 0 9px rgba(198,158,77,.08)!important;
}
.praxisCoachPage .actionRow,
.rdCoachVFinalPage .actionRow{margin:6px 0 12px!important;}
.praxisCoachPage .rdInlineCheckText,
.rdCoachVFinalPage .rdInlineCheckText{font-size:9px!important;color:rgba(236,229,211,.56)!important;}
.praxisCoachPage .coachSessionDivider.rdNightDivider,
.rdCoachVFinalPage .coachSessionDivider.rdNightDivider{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  margin:26px 0 22px!important;
  color:rgba(232,194,116,.86)!important;
  font-family:var(--font-display)!important;
  font-size:12px!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
  opacity:.95!important;
}
.praxisCoachPage .coachSessionDivider.rdNightDivider:before,
.praxisCoachPage .coachSessionDivider.rdNightDivider:after,
.rdCoachVFinalPage .coachSessionDivider.rdNightDivider:before,
.rdCoachVFinalPage .coachSessionDivider.rdNightDivider:after{
  content:""!important;
  display:block!important;
  height:1px!important;
  flex:1!important;
  background:linear-gradient(90deg,transparent,rgba(232,194,116,.32),transparent)!important;
}



/* ================================================================
   FUSION FINAL — Einziger maßgeblicher Override (schlägt alles)
   ================================================================ */

/* 1. DASHBOARD: scrollbar, nicht abgeschnitten */
main.screen.rdMasterPraxisPage {
  overflow-y: auto!important;
  overflow-x: hidden!important;
  height: auto!important;
  min-height: 100dvh!important;
  max-height: none!important;
  -webkit-overflow-scrolling: touch!important;
}
.rdMasterPraxisDash,
.rdMasterPraxisDash.rdPraxisFinal22 {
  height: auto!important;
  min-height: 0!important;
  max-height: none!important;
  overflow: visible!important;
}
/* Browser-Mode Override — schlägt rdBrowserMode Definitionen */
body.rdBrowserMode main.screen.rdMasterPraxisPage {
  overflow-y: auto!important;
  height: auto!important;
  max-height: none!important;
}
body.rdBrowserMode .rdMasterPraxisDash,
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22 {
  height: auto!important;
  min-height: 0!important;
  max-height: none!important;
  overflow: visible!important;
  padding-bottom: max(40px, env(safe-area-inset-bottom, 20px))!important;
}

/* 2. COACH TEXT: plain, kein Bubble */
.praxisCoachPage .coachOpenText,
.praxisCoachPage .rdCoachPlainText,
.rdCoachVFinalPage .coachOpenText,
.rdCoachVFinalPage .rdCoachPlainText {
  background: transparent!important;
  border: none!important;
  box-shadow: none!important;
  border-radius: 0!important;
  padding: 2px 0!important;
  max-width: 100%!important;
  font-size: 17px!important;
  line-height: 1.56!important;
  color: rgba(240,237,232,.93)!important;
}
.praxisCoachPage .coachMsgRow:not(.actionRow),
.rdCoachVFinalPage .coachMsgRow:not(.actionRow) {
  margin: 4px 0 14px!important;
  padding: 0!important;
}

/* 3. ACTION BUTTONS: kompakt, goldener Rahmen, gleiche Schriftgröße wie Chat */
.praxisCoachPage .rdInlineCheckCard,
.rdCoachVFinalPage .rdInlineCheckCard,
.praxisCoachPage .chatBubble.coach.actionBubble.rdInlineCheckCard,
.rdCoachVFinalPage .chatBubble.coach.actionBubble.rdInlineCheckCard {
  width: auto!important;
  min-width: 0!important;
  max-width: min(220px, 82%)!important;
  min-height: 0!important;
  height: auto!important;
  padding: 5px 6px 5px 14px!important;
  border-radius: 999px!important;
  display: inline-flex!important;
  flex-direction: row!important;
  align-items: center!important;
  gap: 8px!important;
  grid-template-columns: unset!important;
  background: transparent!important;
  border: 1px solid rgba(212,174,84,.45)!important;
  box-shadow: none!important;
}
.praxisCoachPage .inlineCoachAction,
.rdCoachVFinalPage .inlineCoachAction,
.praxisCoachPage .chatBubble.coach.actionBubble.rdInlineCheckCard button,
.rdCoachVFinalPage .chatBubble.coach.actionBubble.rdInlineCheckCard button {
  all: unset!important;
  height: auto!important;
  min-height: 0!important;
  padding: 4px 0!important;
  font-size: 13px!important;
  line-height: 1.3!important;
  letter-spacing: .06em!important;
  color: rgba(212,174,84,.95)!important;
  white-space: nowrap!important;
  font-weight: 600!important;
  cursor: pointer!important;
}
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction,
.rdCoachVFinalPage .coachMsgRow.actionRow.noAvatarAction {
  margin: 3px 0 10px!important;
  padding: 0!important;
  display: block!important;
}

/* 4. TYPING INDICATOR */
.rdTypingRow { margin: 4px 0 10px!important; }
.rdTypingDots {
  display: inline-flex!important;
  gap: 5px!important;
  align-items: center!important;
  padding: 8px 2px!important;
}
.rdTypingDots span {
  width: 7px!important;
  height: 7px!important;
  border-radius: 50%!important;
  background: rgba(180,180,180,.70)!important;
  animation: rdTypePulse 1.2s infinite ease-in-out!important;
}
.rdTypingDots span:nth-child(2){animation-delay:.2s!important;}
.rdTypingDots span:nth-child(3){animation-delay:.4s!important;}
@keyframes rdTypePulse {
  0%,80%,100%{opacity:.25;transform:scale(.8);}
  40%{opacity:1;transform:scale(1);}
}

/* 5. VOICE WAVEFORM: WhatsApp/ChatGPT Style */
.praxisCoachPage .rdInputVoiceWaves,
.rdCoachVFinalPage .rdInputVoiceWaves { display:none!important; }
.praxisCoachPage .rdComposerWrap.voiceActive .rdInputVoiceWaves,
.rdCoachVFinalPage .rdComposerWrap.voiceActive .rdInputVoiceWaves {
  display:flex!important;
  position:absolute!important;
  left:14px!important; right:54px!important;
  top:50%!important; height:28px!important;
  transform:translateY(-50%)!important;
  align-items:center!important;
  gap:2px!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.praxisCoachPage .rdInputVoiceWaves span,
.rdCoachVFinalPage .rdInputVoiceWaves span {
  flex:0 0 3px!important;
  width:3px!important;
  border-radius:2px!important;
  background:rgba(255,255,255,.75)!important;
  animation:rdVoiceScan calc(.4s + calc(var(--i,0) * .007s)) ease-in-out infinite alternate!important;
  animation-delay:calc(var(--i,0) * -15ms)!important;
  transform-origin:center center!important;
  height:calc(3px + (var(--rdVoiceLevel,.25) * 24px))!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(4n),
.rdCoachVFinalPage .rdInputVoiceWaves span:nth-child(4n) {
  background:rgba(255,255,255,.50)!important;
  animation-duration:.55s!important;
}
.praxisCoachPage .rdInputVoiceWaves span:nth-child(7n),
.rdCoachVFinalPage .rdInputVoiceWaves span:nth-child(7n) {
  background:rgba(255,255,255,.30)!important;
  animation-duration:.35s!important;
}
@keyframes rdVoiceScan {
  0%   { transform:scaleY(.15); opacity:.20; }
  50%  { transform:scaleY(1.0); opacity:.90; }
  100% { transform:scaleY(.22); opacity:.25; }
}

/* 6. SESSION DIVIDER */
.rdSessionDivider {
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:18px 0 14px!important;
  width:100%!important;
}
.rdSessionDividerLine {
  flex:1!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent 0%,rgba(212,174,84,.22) 15%,rgba(212,174,84,.55) 50%,rgba(212,174,84,.22) 85%,transparent 100%)!important;
  display:block!important;
}
.rdSessionDividerTime {
  flex:0 0 auto!important;
  font-size:10.5px!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
  color:rgba(212,174,84,.60)!important;
  white-space:nowrap!important;
}

/* === v34 targeted browser-only spacing fix · 30-day course dashboard ===
   Cause: the previous safety shift pulls the whole control frame upward for the
   home-screen/PWA viewport. In normal browser mode the visible viewport is already
   shortened by the browser chrome, so the DATENBANK area sits optically too high.
   Scope: browser display-mode only, 30-day dashboard only. No routes/functions touched. */
@media (display-mode: browser) and (max-width: 600px){
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    transform:translateY(-4px)!important;
  }
}

/* === v35 ROOT FIX · browser-only bottom clearance for dashboard chrome ===
   Scope: normal browser mode only. PWA/home-screen remains untouched.
   Cause: the mobile browser bottom toolbar overlays/shortens the visual viewport;
   the app layout used the same bottom anchoring as standalone mode, so the last
   dashboard block sat too close to / behind the browser bar.
   Fix: add a small visual lift only to the bottom dashboard stacks. */
body.rdBrowserMode .rdMasterPraxisPage .rdMasterSoloStartBtn,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn,
body.rdBrowserMode .rdMasterPraxisPage .rdMasterProgressCard,
body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
  transform:translateY(-24px)!important;
}

body.rdBrowserMode .rdMasterPraxisDash,
body.rdBrowserMode .rdMasterPraxisDash.rdPraxisFinal22{
  padding-bottom:max(72px, calc(env(safe-area-inset-bottom,0px) + 64px))!important;
}

body.rdBrowserMode .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  transform:translateY(-28px)!important;
}

body.rdBrowserMode .courseHomeBg.thirtyCourseHome{
  padding-bottom:max(72px, calc(env(safe-area-inset-bottom,0px) + 64px))!important;
}

@media(max-height:740px){
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterSoloStartBtn,
  body.rdBrowserMode .rdMasterPraxisPage .rdMasterProgressCard,
  body.rdBrowserMode .rdPraxisFinal22 .rdMasterProgressCard{
    transform:translateY(-20px)!important;
  }
  body.rdBrowserMode .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    transform:translateY(-24px)!important;
  }
}

/* RESET DISCIPLINE v11 — Coach readable prose polish */
.praxisCoachPage .coachOpenText,
.praxisCoachPage .rdCoachPlainText,
.rdCoachVFinalPage .coachOpenText,
.rdCoachVFinalPage .rdCoachPlainText{
  white-space: normal!important;
  word-break: normal!important;
  overflow-wrap: anywhere!important;
}
.praxisCoachPage .coachOpenRow,
.rdCoachVFinalPage .coachOpenRow{
  margin-bottom: 18px!important;
}
.praxisCoachPage .coachOpenText br + br,
.rdCoachVFinalPage .coachOpenText br + br{
  line-height: 1.95!important;
}

/* === RD V12 · Evening Review flexible close + clean action buttons === */
.checkDialog.eveningReviewDialog.rdEveningV12{
  max-height:calc(100vh - 74px)!important;
  overflow:auto!important;
  padding-bottom:26px!important;
}
.rdEveningV12 .rdReviewPrompt{
  margin:16px 0 8px!important;
  font-size:14px!important;
  line-height:1.45!important;
  color:rgba(255,244,220,.78)!important;
  letter-spacing:.02em!important;
}
.rdEveningV12 .rdReviewInputWrap{
  position:relative!important;
  display:flex!important;
  align-items:stretch!important;
  gap:8px!important;
  width:100%!important;
  margin-bottom:10px!important;
}
.rdEveningV12 .rdReviewTextarea{
  width:100%!important;
  min-height:112px!important;
  resize:vertical!important;
  padding-right:54px!important;
  line-height:1.45!important;
}
.rdEveningV12 .rdReviewMicBtn{
  position:absolute!important;
  right:12px!important;
  bottom:12px!important;
  width:36px!important;
  height:36px!important;
  border-radius:999px!important;
  border:1px solid rgba(212,174,84,.42)!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,241,201,.95)!important;
  font-size:17px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.rdEveningV12 .rdReviewVoiceHint{
  min-height:18px!important;
  font-size:12px!important;
  color:rgba(212,174,84,.86)!important;
  margin:0 0 10px!important;
}
.praxisCoachPage .rdInlineCheckCard.actionBubble,
.praxisCoachPage .chatBubble.coach.actionBubble.rdInlineCheckCard{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:6px 0!important;
  width:100%!important;
  max-width:100%!important;
}
.praxisCoachPage .rdInlineCheckCard .inlineCoachAction,
.praxisCoachPage .inlineCoachAction.start{
  min-width:124px!important;
  height:42px!important;
  padding:0 15px!important;
  border-radius:14px!important;
  border:1px solid rgba(212,174,84,.58)!important;
  background:rgba(212,174,84,.08)!important;
  color:rgba(235,198,110,.98)!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:none!important;
  box-shadow:0 0 16px rgba(212,174,84,.08)!important;
}
.praxisCoachPage .rdInlineCheckCard.done .inlineCoachAction,
.praxisCoachPage .inlineCoachAction.done{
  border-color:rgba(230,190,94,.86)!important;
  background:rgba(212,174,84,.13)!important;
  color:rgba(255,231,166,.98)!important;
}
.praxisCoachPage .rdCheckSummaryText{
  color:rgba(235,198,110,.98)!important;
  font-weight:620!important;
}

/* === RD V13 · Final action button + evening icon position polish === */
.praxisCoachPage .rdInlineCheckCard.actionBubble,
.rdCoachVFinalPage .rdInlineCheckCard.actionBubble,
.praxisCoachPage .chatBubble.coach.actionBubble.rdInlineCheckCard,
.rdCoachVFinalPage .chatBubble.coach.actionBubble.rdInlineCheckCard{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 0!important;
  width:100%!important;
  max-width:100%!important;
  display:flex!important;
  justify-content:flex-start!important;
}
.praxisCoachPage .rdInlineCheckCard .inlineCoachAction,
.rdCoachVFinalPage .rdInlineCheckCard .inlineCoachAction,
.praxisCoachPage .inlineCoachAction.start,
.rdCoachVFinalPage .inlineCoachAction.start,
.praxisCoachPage button.inlineCoachAction,
.rdCoachVFinalPage button.inlineCoachAction {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 180px !important;
  max-width: 280px !important;
  height: 42px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  border: 1.5px solid rgba(212, 174, 84, 0.80) !important;
  background: transparent !important;
  color: rgba(255, 241, 201, 0.96) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: none !important;
}
.praxisCoachPage .rdInlineCheckCard.done .inlineCoachAction,
.rdCoachVFinalPage .rdInlineCheckCard.done .inlineCoachAction,
.praxisCoachPage .inlineCoachAction.done,
.rdCoachVFinalPage .inlineCoachAction.done{
  border-color:rgba(230,190,94,.92)!important;
  background:rgba(212,174,84,.07)!important;
  color:rgba(255,231,166,.99)!important;
}
.coachSessionDivider.rdNightDivider,
.rdSessionDivider .rdSessionDividerTime{
  transform:translateY(-4px)!important;
}
.rdEveningV12 .dayStatusPill{
  transform:translateY(-6px)!important;
  margin-bottom:4px!important;
}



/* ═══════════════════════════════════════════════════════════════════════
   RESET DISCIPLINE — CHAT ACTION BUTTONS — EINZIGE WAHRE DEFINITION
   Alle anderen inlineCoachAction Styles werden durch diesen Block
   überschrieben. !important + direkter Selektor = maximale Priorität.
   Für alle Buttons: Morning Check, Tag starten, Abend-Review, 
   Tag abschließen, To-do, Dashboard.
═══════════════════════════════════════════════════════════════════════ */

/* Wrapper: kein eigener Hintergrund, kein Border - nur der Button zählt */
.praxisCoachPage .chatBubble.coach.actionBubble,
.praxisCoachPage .chatBubble.coach.actionBubble.rdInlineCheckCard,
.rdCoachVFinalPage .chatBubble.coach.actionBubble {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 2px 0 6px 0 !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
}

/* DER BUTTON — sauber, einheitlich, mit Umrandung in Goldton */
.praxisCoachPage button.inlineCoachAction,
.rdCoachVFinalPage button.inlineCoachAction {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 180px !important;
  max-width: 280px !important;
  height: 42px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  background: transparent !important;
  border: 1.5px solid rgba(212, 174, 84, 0.80) !important;
  color: rgba(255, 241, 201, 0.96) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: background 0.15s ease, border-color 0.15s ease !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Hover */
.praxisCoachPage button.inlineCoachAction:hover,
.rdCoachVFinalPage button.inlineCoachAction:hover {
  background: rgba(212, 174, 84, 0.10) !important;
  border-color: rgba(212, 174, 84, 1.0) !important;
}

/* Erledigt-Zustand */
.praxisCoachPage button.inlineCoachAction.done,
.rdCoachVFinalPage button.inlineCoachAction.done {
  border-color: rgba(129, 160, 91, 0.60) !important;
  color: rgba(180, 210, 140, 0.85) !important;
  background: rgba(34, 48, 24, 0.40) !important;
}

/* Mobile */
@media (max-width: 390px) {
  .praxisCoachPage button.inlineCoachAction,
  .rdCoachVFinalPage button.inlineCoachAction {
    min-width: 150px !important;
    height: 38px !important;
    font-size: 12px !important;
  }
}
/* ═══════════════════════════════════════════════════════════════════════ */


/* === RD FINAL CHAT QA PATCH 2026-06-04: hard action button frame + scrollable coach todos === */
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction .chatBubble.coach.actionBubble.rdInlineCheckCard,
.rdCoachVFinalPage .coachMsgRow.actionRow.noAvatarAction .chatBubble.coach.actionBubble.rdInlineCheckCard{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:3px 0 7px!important;
  margin:0!important;
  width:auto!important;
  max-width:100%!important;
  display:block!important;
}
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction button.inlineCoachAction,
.rdCoachVFinalPage .coachMsgRow.actionRow.noAvatarAction button.inlineCoachAction,
.praxisCoachPage .chatBubble.coach.actionBubble.rdInlineCheckCard > button.inlineCoachAction,
.rdCoachVFinalPage .chatBubble.coach.actionBubble.rdInlineCheckCard > button.inlineCoachAction{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:124px!important;
  max-width:calc(100vw - 92px)!important;
  min-height:34px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  border:1px solid rgba(190,150,70,.58)!important;
  background:rgba(212,174,84,.045)!important;
  color:rgba(255,241,201,.96)!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:620!important;
  line-height:1!important;
  letter-spacing:.045em!important;
  text-transform:none!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.praxisCoachPage .coachMsgRow.actionRow.noAvatarAction button.inlineCoachAction.done,
.rdCoachVFinalPage .coachMsgRow.actionRow.noAvatarAction button.inlineCoachAction.done{
  border-color:rgba(190,150,70,.64)!important;
  background:rgba(212,174,84,.07)!important;
  color:rgba(255,232,171,.98)!important;
}
.rdCoachTodoModal{
  max-height:min(78vh,720px)!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.rdCoachTodoModal ol{
  max-height:min(48vh,440px)!important;
  overflow:auto!important;
  padding-right:8px!important;
  -webkit-overflow-scrolling:touch!important;
}


/* === RD V13 SCALPEL PATCH · Coach todo checklist UX === */
.rdCoachTodoModal li.done span{opacity:.62!important;text-decoration:line-through!important;}
.rdCoachTodoModal li label{display:flex!important;gap:10px!important;align-items:flex-start!important;}
.rdCoachTodoModal li input[type="checkbox"]{margin-top:3px!important;accent-color:#d4ae54!important;}
.rdCoachTodoModal li span{display:block!important;}


/* === RD Block 1 clean flow: refined chat action buttons + start popup === */
.rdStartDayOverlay{z-index:9999!important;}
.rdStartDayBox{max-width:420px!important;text-align:left!important;}
.rdStartDayBox h2{margin:10px 0 8px!important;letter-spacing:.04em!important;}
.rdStartDayBox p{font-size:15px!important;line-height:1.55!important;color:rgba(245,238,220,.88)!important;}


/* RESET DISCIPLINE · FINAL COACH TODO / NOTES POLISH */
.rdCoachTodoModalPro{
  width:calc(100vw - 42px)!important;
  max-width:430px!important;
  max-height:calc(100vh - 86px)!important;
  padding:24px 22px 20px!important;
  border-radius:28px!important;
  background:radial-gradient(circle at 50% 0%,rgba(214,166,84,.10),rgba(11,10,8,.98) 42%,rgba(4,4,4,.99) 100%)!important;
  border:1px solid rgba(214,166,84,.32)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.76),0 0 42px rgba(214,166,84,.08)!important;
  position:relative!important;
  overflow:hidden!important;
}
.rdCoachTodoModalPro:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,230,184,.04),transparent 32%);pointer-events:none;}
.rdTodoX{position:absolute!important;right:15px!important;top:13px!important;width:30px!important;height:30px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.09)!important;background:rgba(255,255,255,.04)!important;color:rgba(244,232,208,.74)!important;font-size:20px!important;line-height:1!important;z-index:2!important;}
.rdTodoHero{display:grid!important;grid-template-columns:auto 1fr!important;gap:14px!important;align-items:center!important;margin-bottom:15px!important;position:relative!important;z-index:1!important;}
.rdTodoIcon{width:46px!important;height:46px!important;border-radius:17px!important;display:grid!important;place-items:center!important;background:rgba(214,166,84,.13)!important;border:1px solid rgba(214,166,84,.26)!important;box-shadow:inset 0 0 20px rgba(214,166,84,.06)!important;font-size:22px!important;}
.rdCoachTodoModalPro h2{margin:8px 0 4px!important;font-size:23px!important;line-height:.98!important;letter-spacing:.13em!important;color:#f3e2c0!important;text-transform:uppercase!important;}
.rdCoachTodoModalPro .rdTodoHero p{margin:0!important;color:rgba(231,218,196,.58)!important;font-size:12px!important;line-height:1.35!important;}
.rdTodoProgress{height:27px!important;border-radius:999px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.07)!important;position:relative!important;margin:6px 0 16px!important;overflow:hidden!important;}
.rdTodoProgress b{display:block!important;height:100%!important;background:linear-gradient(90deg,rgba(214,166,84,.30),rgba(244,207,129,.48))!important;border-radius:inherit!important;transition:width .18s ease!important;}
.rdTodoProgress span{position:absolute!important;inset:0!important;display:grid!important;place-items:center!important;font-size:10.5px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(246,231,199,.78)!important;font-weight:800!important;z-index:1!important;}
.rdTodoScroll{max-height:44vh!important;overflow-y:auto!important;padding:2px 4px 4px 0!important;margin-right:-4px!important;}
.rdTodoGroup{margin:0 0 15px!important;}
.rdTodoGroup h3{margin:0 0 9px!important;color:#d7aa5d!important;font-size:11px!important;letter-spacing:.22em!important;text-transform:uppercase!important;}
.rdCoachTodoModalPro ol{margin:0!important;padding:0!important;list-style:none!important;display:grid!important;gap:7px!important;}
.rdCoachTodoModalPro li{margin:0!important;padding:0!important;}
.rdCoachTodoModalPro li label{display:grid!important;grid-template-columns:20px 1fr!important;gap:10px!important;align-items:start!important;padding:9px 10px!important;border-radius:14px!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.055)!important;}
.rdCoachTodoModalPro li input[type="checkbox"]{width:18px!important;height:18px!important;margin:1px 0 0!important;accent-color:#d4ae54!important;}
.rdCoachTodoModalPro li span{font-size:14.5px!important;line-height:1.35!important;color:rgba(246,238,220,.92)!important;}
.rdCoachTodoModalPro li.done span{opacity:.50!important;text-decoration:line-through!important;}
.rdCoachTodoModalPro .rdTodoHint{margin:14px 2px 0!important;font-size:12px!important;line-height:1.42!important;color:rgba(231,218,196,.57)!important;}
.rdCoachTodoModalPro .rdTodoModalActions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:16px!important;}
.rdCoachTodoModalPro .rdTodoModalActions .btn{height:48px!important;border-radius:18px!important;font-size:11.5px!important;letter-spacing:.16em!important;}
.praxisCoachPage .rdInlineCheckCard .inlineCoachAction,.rdCoachVFinalPage .rdInlineCheckCard .inlineCoachAction{height:31px!important;min-height:31px!important;padding:0 13px!important;border-width:1px!important;border-color:rgba(214,166,84,.36)!important;background:rgba(214,166,84,.09)!important;box-shadow:0 0 12px rgba(214,166,84,.055)!important;font-size:10.5px!important;letter-spacing:.10em!important;}


/* === RD V14 · Universal To-do final polish === */
.rdCoachTodoModalPro{width:calc(100vw - 44px)!important;max-width:404px!important;max-height:86vh!important;padding:24px 22px 22px!important;border-radius:26px!important;}
.rdCoachTodoModalPro .rdTodoHero{gap:14px!important;margin-bottom:14px!important;}
.rdCoachTodoModalPro .rdTodoIcon{width:50px!important;height:50px!important;border-radius:18px!important;font-size:25px!important;}
.rdCoachTodoModalPro h2{font-size:21px!important;line-height:1!important;letter-spacing:.16em!important;margin:6px 0 5px!important;}
.rdCoachTodoModalPro .rdTodoHero p{font-size:11.5px!important;line-height:1.3!important;}
.rdTodoProgress{height:34px!important;margin:14px 0 18px!important;border-radius:17px!important;}
.rdTodoProgress span{font-size:11px!important;letter-spacing:.18em!important;}
.rdTodoScroll{max-height:42vh!important;overflow-y:auto!important;padding:1px 3px 2px 0!important;}
.rdTodoGroup{margin:0 0 13px!important;}
.rdTodoGroup h3{font-size:10.5px!important;letter-spacing:.24em!important;margin:0 0 8px!important;}
.rdTodoChecks{display:grid!important;gap:6px!important;}
.rdTodoCheck{width:100%!important;text-align:left!important;display:grid!important;grid-template-columns:18px 1fr!important;gap:9px!important;align-items:start!important;padding:8px 10px!important;border-radius:13px!important;background:rgba(255,255,255,.032)!important;border:1px solid rgba(255,255,255,.055)!important;color:rgba(246,238,220,.92)!important;appearance:none!important;-webkit-appearance:none!important;}
.rdTodoCheck:active{transform:scale(.992)!important;}
.rdTodoBox{width:17px!important;height:17px!important;border-radius:7px!important;background:rgba(255,255,255,.92)!important;color:#1b1408!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:11px!important;font-weight:900!important;line-height:1!important;margin-top:1px!important;}
.rdTodoText{font-size:12.8px!important;line-height:1.32!important;font-family:Montserrat,system-ui,sans-serif!important;font-weight:600!important;letter-spacing:.015em!important;color:rgba(246,238,220,.90)!important;}
.rdTodoCheck.done{background:rgba(212,174,84,.08)!important;border-color:rgba(212,174,84,.22)!important;}
.rdTodoCheck.done .rdTodoBox{background:#d4ae54!important;color:#0b0b0b!important;}
.rdTodoCheck.done .rdTodoText{opacity:.55!important;text-decoration:line-through!important;}
.rdCoachTodoModalPro .rdTodoHint{font-size:11.5px!important;line-height:1.38!important;margin:12px 2px 0!important;}
.rdCoachTodoModalPro .rdTodoModalActions{gap:9px!important;margin-top:14px!important;}
.rdCoachTodoModalPro .rdTodoModalActions .btn{height:44px!important;border-radius:16px!important;font-size:10.5px!important;letter-spacing:.16em!important;}
.praxisCoachPage button.inlineCoachAction,.rdCoachVFinalPage button.inlineCoachAction{height:30px!important;min-height:30px!important;padding:0 13px!important;border-radius:15px!important;border:1px solid rgba(214,166,84,.34)!important;background:rgba(214,166,84,.085)!important;box-shadow:0 0 10px rgba(214,166,84,.045)!important;font-size:10.5px!important;letter-spacing:.095em!important;}


/* === RD V15 · Universal To-do stability / typography final === */
.rdCoachTodoModalPro{max-height:86vh!important;padding:22px 20px 20px!important;}
.rdCoachTodoModalPro h2{font-size:19px!important;letter-spacing:.15em!important;line-height:1.04!important;}
.rdTodoScroll{max-height:43vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding-right:4px!important;}
.rdTodoGroup{margin-bottom:11px!important;}
.rdTodoGroup h3{font-size:10px!important;letter-spacing:.22em!important;margin-bottom:7px!important;color:#d4ad63!important;}
.rdTodoCheck{grid-template-columns:16px 1fr!important;gap:8px!important;padding:7px 9px!important;border-radius:12px!important;cursor:pointer!important;touch-action:manipulation!important;}
.rdTodoBox{width:15px!important;height:15px!important;border-radius:6px!important;background:rgba(255,255,255,.96)!important;border:1px solid rgba(255,255,255,.72)!important;color:transparent!important;font-size:10px!important;margin-top:1px!important;}
.rdTodoText{font-size:11.8px!important;line-height:1.28!important;font-weight:600!important;letter-spacing:.01em!important;text-transform:uppercase!important;color:rgba(245,236,218,.88)!important;}
.rdTodoCheck.done .rdTodoBox{background:#d4ae54!important;border-color:#d4ae54!important;color:#0b0b0b!important;}
.rdTodoCheck.done .rdTodoText{opacity:.55!important;text-decoration:line-through!important;}
.rdTodoProgress{height:30px!important;margin:12px 0 15px!important;}
.rdTodoProgress span{font-size:10px!important;letter-spacing:.18em!important;}
.rdCoachTodoModalPro .rdTodoHint{font-size:10.8px!important;line-height:1.34!important;margin-top:10px!important;}
.rdCoachTodoModalPro .rdTodoModalActions .btn{height:42px!important;font-size:10px!important;border-radius:15px!important;}
.praxisCoachPage button.inlineCoachAction,.rdCoachVFinalPage button.inlineCoachAction{height:29px!important;min-height:29px!important;padding:0 12px!important;border-radius:15px!important;border:1px solid rgba(214,166,84,.30)!important;background:rgba(214,166,84,.07)!important;box-shadow:none!important;font-size:10.2px!important;letter-spacing:.08em!important;}

/* RD FINAL · To-do modal readability + mobile checkbox reliability */
.rdCoachTodoModalPro .rdTodoScroll{max-height:48vh;overflow:auto;padding-right:2px;}
.rdCoachTodoModalPro .rdTodoChecks{gap:8px;}
.rdCoachTodoModalPro .rdTodoCheck{min-height:48px;padding:11px 13px;border-radius:16px;font-size:14px;line-height:1.25;letter-spacing:.05em;touch-action:manipulation;cursor:pointer;}
.rdCoachTodoModalPro .rdTodoText{font-size:14px;line-height:1.25;letter-spacing:.04em;}
.rdCoachTodoModalPro .rdTodoBox{width:22px;height:22px;min-width:22px;border-radius:7px;font-size:14px;}
.rdCoachTodoModalPro .rdTodoGroup h3{font-size:12px;letter-spacing:.22em;margin:14px 0 8px;}
.rdCoachTodoModalPro .rdTodoHero h2{font-size:30px;letter-spacing:.16em;}
.rdCoachTodoModalPro .rdTodoHero p,.rdCoachTodoModalPro .rdTodoHint{font-size:15px;line-height:1.45;}
.rdCoachTodoModalPro .rdTodoProgress span{font-size:13px;letter-spacing:.20em;}
.rdCoachTodoModalPro .rdTodoCheck.done{opacity:.74;}
.rdCoachTodoModalPro .rdTodoCheck.done .rdTodoText{text-decoration:line-through;}


/* FINAL TODO MODAL HARD CLEANUP */
.rdCoachTodoModalPro .rdTodoChecks{gap:6px!important;}
.rdCoachTodoModalPro .rdTodoCheck{min-height:34px!important;padding:7px 9px!important;border-radius:12px!important;grid-template-columns:16px 1fr!important;gap:8px!important;}
.rdCoachTodoModalPro .rdTodoText{font-size:11.4px!important;line-height:1.25!important;letter-spacing:.015em!important;text-transform:none!important;font-weight:650!important;}
.rdCoachTodoModalPro .rdTodoBox{width:15px!important;height:15px!important;min-width:15px!important;border-radius:6px!important;font-size:10px!important;}
.rdCoachTodoModalPro .rdTodoGroup h3{font-size:10px!important;letter-spacing:.20em!important;margin:10px 0 6px!important;}

/* === TO-DO / LISTEN DASHBOARD V2 === */
.rdTodoV2 .rdMyListCreate{background:rgba(20,15,7,.66);border:1px solid rgba(212,174,84,.30);border-radius:18px;padding:14px 14px 12px;margin:6px 0 18px;}
.rdTodoV2 .rdMyListLabel{font-family:var(--font-display,inherit);text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:rgba(255,236,196,.78);margin-bottom:9px;}
.rdTodoV2 .rdMyListInputRow{display:flex;align-items:flex-end;gap:8px;}
.rdTodoV2 #rdMyListInput{flex:1;resize:none;min-height:42px;max-height:120px;background:rgba(8,6,3,.7);border:1px solid rgba(212,174,84,.28);border-radius:13px;color:rgba(255,247,225,.96);padding:11px 13px;font-size:14px;line-height:1.35;font-family:inherit;}
.rdTodoV2 #rdMyListInput:focus{outline:none;border-color:rgba(212,174,84,.6);}
.rdTodoV2 .rdMyListMicBtn{flex:0 0 auto;width:42px;height:42px;border-radius:50%;border:1px solid rgba(212,174,84,.4);background:rgba(212,174,84,.1);color:rgba(255,241,201,.95);display:flex;align-items:center;justify-content:center;cursor:pointer;}
.rdTodoV2 .rdMyListMicBtn.rec{background:rgba(220,70,60,.22);border-color:rgba(230,90,80,.7);color:#ffd9d2;animation:rdMicPulse 1s infinite;}
@keyframes rdMicPulse{0%,100%{box-shadow:0 0 0 0 rgba(230,90,80,.35);}50%{box-shadow:0 0 0 7px rgba(230,90,80,0);}}
.rdTodoV2 .rdMyListCreateBtn{width:100%;margin-top:10px;}
.rdTodoV2 .rdTodoFolder{background:rgba(16,12,6,.5);border:1px solid rgba(212,174,84,.18);border-radius:18px;padding:13px 13px 8px;margin-bottom:16px;}
.rdTodoV2 .rdFolderHead{margin-bottom:10px;}
.rdTodoV2 .rdFolderHead h2{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.06em;margin:0 0 2px;}
.rdTodoV2 .rdFolderHead small{color:rgba(230,214,180,.55);font-size:11px;}
.rdTodoV2 .rdCoachTodoItem{display:flex;align-items:stretch;gap:8px;background:rgba(24,18,9,.62);border:1px solid rgba(212,174,84,.22);border-radius:14px;padding:0;margin-bottom:9px;overflow:hidden;}
.rdTodoV2 .rdCoachTodoItem.done{opacity:.55;}
.rdTodoV2 .rdCoachTodoItem.unread{border-color:rgba(212,174,84,.55);box-shadow:0 0 12px rgba(212,174,84,.12);}
.rdTodoV2 .rdTodoCardOpen{flex:1;display:flex;align-items:center;gap:12px;background:transparent;border:none;color:inherit;text-align:left;padding:13px 6px 13px 14px;cursor:pointer;min-width:0;}
.rdTodoV2 .rdTodoCardIcon{font-size:21px;flex:0 0 auto;line-height:1;}
.rdTodoV2 .rdTodoCardBody{display:flex;flex-direction:column;gap:3px;min-width:0;}
.rdTodoV2 .rdTodoCardBody b{font-size:14px;color:rgba(255,247,225,.97);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rdTodoV2 .rdTodoCardBody small{font-size:11px;color:rgba(230,214,180,.6);}
.rdTodoV2 .rdTodoCardActions{flex:0 0 auto;display:flex;align-items:center;gap:4px;padding-right:9px;}
.rdTodoV2 .rdTodoCardActions button{width:32px;height:32px;border-radius:50%;border:1px solid rgba(212,174,84,.3);background:rgba(8,6,3,.55);color:rgba(255,241,201,.9);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.rdTodoV2 .rdTodoCardActions button:active{transform:scale(.92);}
.rdTodoV2 .rdEmptyText{color:rgba(230,214,180,.5);font-size:12.5px;padding:6px 4px 10px;text-align:center;}

/* === LISTEN-MODAL: zuverlässig scrollbar bei langen Listen === */
.rdCoachTodoModalPro{display:flex!important;flex-direction:column!important;max-height:calc(100vh - 64px)!important;overflow:hidden!important;}
.rdCoachTodoModalPro .rdTodoX{flex:0 0 auto!important;}
.rdCoachTodoModalPro .rdTodoHero,
.rdCoachTodoModalPro .rdTodoProgress,
.rdCoachTodoModalPro .rdTodoHint,
.rdCoachTodoModalPro .rdTodoModalActions{flex:0 0 auto!important;}
.rdCoachTodoModalPro .rdTodoScroll{flex:1 1 auto!important;max-height:none!important;min-height:64px!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;}

/* === TO-DO V2 · PREMIUM POLISH + VOICE UX === */
/* Eingabe-Karte: kompakter, premium */
.rdTodoV2 .rdMyListCreate{background:linear-gradient(180deg,rgba(28,21,10,.7),rgba(14,11,6,.66))!important;border:1px solid rgba(212,174,84,.34)!important;border-radius:20px!important;padding:13px!important;box-shadow:0 12px 34px rgba(0,0,0,.4),inset 0 0 24px rgba(212,174,84,.04)!important;}
.rdTodoV2 .rdMyListLabel{display:none!important;}
.rdTodoV2 .rdMyListInputRow{display:flex!important;align-items:center!important;gap:9px!important;}
.rdTodoV2 #rdMyListInput{flex:1!important;min-height:46px!important;max-height:128px!important;background:rgba(6,5,3,.74)!important;border:1px solid rgba(212,174,84,.26)!important;border-radius:14px!important;color:rgba(255,247,225,.97)!important;padding:13px 14px!important;font-size:14.5px!important;line-height:1.35!important;font-family:Montserrat,system-ui,sans-serif!important;transition:border-color .18s,box-shadow .18s!important;}
.rdTodoV2 #rdMyListInput::placeholder{color:rgba(228,214,182,.42)!important;}
.rdTodoV2 #rdMyListInput:focus{outline:none!important;border-color:rgba(212,174,84,.62)!important;box-shadow:0 0 0 3px rgba(212,174,84,.1)!important;}
/* Mikro-Button mit Mic↔Stop Wechsel */
.rdTodoV2 .rdMyListMicBtn{position:relative!important;flex:0 0 auto!important;width:46px!important;height:46px!important;border-radius:50%!important;border:1px solid rgba(212,174,84,.42)!important;background:rgba(212,174,84,.1)!important;color:rgba(255,241,201,.95)!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;transition:all .16s!important;}
.rdTodoV2 .rdMyListMicBtn .rdStopGlyph{display:none!important;width:15px!important;height:15px!important;border-radius:4px!important;background:#ffe2dc!important;}
.rdTodoV2 .rdMyListMicBtn.rec{background:rgba(222,68,58,.92)!important;border-color:rgba(240,110,100,.9)!important;color:#fff!important;animation:rdMicPulse 1.1s infinite!important;}
.rdTodoV2 .rdMyListMicBtn.rec .rdMicGlyph{display:none!important;}
.rdTodoV2 .rdMyListMicBtn.rec .rdStopGlyph{display:block!important;}
@keyframes rdMicPulse{0%,100%{box-shadow:0 0 0 0 rgba(240,90,80,.5);}50%{box-shadow:0 0 0 9px rgba(240,90,80,0);}}
/* Aufnahme-Hinweis */
.rdTodoV2 .rdMyListRecHint{display:none!important;margin:9px 2px 0!important;font-size:11.5px!important;letter-spacing:.04em!important;color:#ffb3aa!important;font-weight:600!important;}
.rdTodoV2 .rdMyListCreate.recording .rdMyListRecHint{display:block!important;}
.rdTodoV2 .rdMyListCreate.recording #rdMyListInput{border-color:rgba(240,90,80,.6)!important;box-shadow:0 0 0 3px rgba(240,90,80,.12)!important;}

/* === RD V24 · Tag-Buttons oben in der Coach-Leiste (rechts, mittig, sanft) === */
.praxisCoachPage .rdCoachTop{position:relative!important;}
.praxisCoachPage .rdTopDayAction{position:absolute!important;right:18px!important;top:50%!important;transform:translateY(-50%) scale(.96)!important;opacity:0!important;pointer-events:none!important;transition:opacity .4s ease,transform .4s ease!important;z-index:4!important;}
.praxisCoachPage .rdTopDayAction.show{opacity:1!important;pointer-events:auto!important;transform:translateY(-50%) scale(1)!important;}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:32px!important;padding:0 16px!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:.04em!important;line-height:32px!important;border-radius:999px!important;white-space:nowrap!important;cursor:pointer!important;color:rgba(255,241,201,.96)!important;background:rgba(212,174,84,.14)!important;border:1px solid rgba(212,174,84,.5)!important;box-shadow:0 0 16px rgba(212,174,84,.12)!important;transition:transform .15s ease,background .15s ease!important;}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn:active{transform:scale(.97)!important;background:rgba(212,174,84,.22)!important;}
@media (max-width:380px){.praxisCoachPage .rdTopDayAction{right:12px!important;}.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:30px!important;line-height:30px!important;padding:0 13px!important;font-size:11.5px!important;}}

/* === RD V24 · Tag-Start/Tag-Abschluss Popups (KI-Text + Plan) === */
.rdModalBox.rdCloseDayBox{max-width:420px!important;text-align:left!important;}
.rdStartDayBox h2,.rdCloseDayBox h2{margin:10px 0 12px!important;letter-spacing:.04em!important;}
.rdPopupCoach{font-size:15px!important;line-height:1.6!important;color:rgba(245,238,220,.92)!important;margin:0 0 16px!important;min-height:26px!important;}
.rdPopupCoach br{content:''!important;}
.rdPopupLoading{display:inline-flex!important;gap:5px!important;align-items:center!important;padding:4px 0!important;}
.rdPopupLoading span{width:7px!important;height:7px!important;border-radius:50%!important;background:rgba(212,174,84,.65)!important;animation:rdPopupDot 1s infinite ease-in-out!important;}
.rdPopupLoading span:nth-child(2){animation-delay:.16s!important;}
.rdPopupLoading span:nth-child(3){animation-delay:.32s!important;}
@keyframes rdPopupDot{0%,80%,100%{transform:scale(.6);opacity:.4;}40%{transform:scale(1);opacity:1;}}
.rdPopupPlan{background:rgba(212,174,84,.06)!important;border:1px solid rgba(212,174,84,.22)!important;border-radius:16px!important;padding:13px 14px!important;margin:0 0 20px!important;}
.rdPopupPlan .rdPlanHead{font-size:11px!important;letter-spacing:.14em!important;color:rgba(212,174,84,.8)!important;font-weight:700!important;margin:0 0 9px!important;}
.rdPopupPlan .rdPlanRow{display:flex!important;align-items:flex-start!important;gap:9px!important;margin:0 0 8px!important;}
.rdPopupPlan .rdPlanRow:last-child{margin-bottom:0!important;}
.rdPopupPlan .rdPlanIcon{flex:0 0 auto!important;color:rgba(212,174,84,.9)!important;font-size:14px!important;line-height:1.4!important;}
.rdPopupPlan .rdPlanBody b{display:block!important;font-size:12px!important;letter-spacing:.04em!important;color:rgba(245,238,220,.7)!important;margin:0 0 2px!important;text-transform:uppercase!important;}
.rdPopupPlan .rdPlanBody p{margin:0!important;font-size:14.5px!important;line-height:1.45!important;color:rgba(255,247,225,.95)!important;}
.rdPopupPlan .rdPlanBody ul{margin:2px 0 0!important;padding:0 0 0 16px!important;}
.rdPopupPlan .rdPlanBody li{font-size:14px!important;line-height:1.5!important;color:rgba(255,247,225,.92)!important;}
.rdTodoV2 .rdMyListCreateBtn{width:100%!important;margin-top:11px!important;letter-spacing:.14em!important;}
/* Listen-Kacheln: mehr Luft, premium */
.rdTodoV2 .rdTodoFolder{background:linear-gradient(180deg,rgba(18,14,8,.55),rgba(10,8,5,.5))!important;border:1px solid rgba(212,174,84,.2)!important;border-radius:20px!important;padding:15px 14px 9px!important;margin-bottom:17px!important;}
.rdTodoV2 .rdCoachTodoItem{background:rgba(26,20,11,.66)!important;border:1px solid rgba(212,174,84,.24)!important;border-radius:16px!important;margin-bottom:10px!important;}
.rdTodoV2 .rdTodoCardOpen{padding:14px 8px 14px 15px!important;gap:13px!important;}
.rdTodoV2 .rdTodoCardIcon{font-size:22px!important;}
.rdTodoV2 .rdTodoCardBody b{font-size:14.5px!important;letter-spacing:.02em!important;}
.rdTodoV2 .rdTodoCardActions{padding-right:11px!important;gap:6px!important;}
.rdTodoV2 .rdTodoCardActions button{width:34px!important;height:34px!important;}

/* === LISTEN-POPUP · Items mit mehr Rand-Abstand === */
.rdCoachTodoModalPro .rdTodoChecks{gap:8px!important;}
.rdCoachTodoModalPro .rdTodoCheck{padding:12px 14px!important;gap:12px!important;border-radius:14px!important;}
.rdCoachTodoModalPro .rdTodoText{font-size:13.5px!important;line-height:1.4!important;text-transform:none!important;padding-right:4px!important;}
.rdCoachTodoModalPro .rdTodoScroll{padding:2px 8px 6px 2px!important;margin-right:-2px!important;}

/* === LISTEN-MODAL · KONSTANTER RAHMEN, ITEMS SCROLLEN INNEN === */
.rdCoachTodoModalPro{display:flex!important;flex-direction:column!important;height:auto!important;max-height:88vh!important;overflow:hidden!important;}
.rdCoachTodoModalPro .rdTodoHero,
.rdCoachTodoModalPro .rdTodoProgress,
.rdCoachTodoModalPro .rdTodoHint,
.rdCoachTodoModalPro .rdTodoModalActions{flex:0 0 auto!important;}
/* Items-Bereich: konstante Höhe (immer gleicher Rahmen), scrollt bei vielen Punkten */
.rdCoachTodoModalPro .rdTodoScroll{flex:0 1 auto!important;min-height:32vh!important;max-height:46vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;padding:2px 9px 6px 3px!important;margin-right:-3px!important;}
/* dezenter Scroll-Indikator */
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar{width:5px;}
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar-thumb{background:rgba(212,174,84,.34);border-radius:99px;}
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar-track{background:transparent;}

/* === LISTEN-KACHELN · sauberes Layout (Emoji · Titel · Datum) === */
.rdTodoV2 .rdTodoCardOpen{padding:13px 8px 13px 14px!important;gap:12px!important;align-items:center!important;}
.rdTodoV2 .rdTodoCardIcon{font-size:23px!important;width:38px!important;height:38px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:12px!important;background:rgba(212,174,84,.10)!important;border:1px solid rgba(212,174,84,.2)!important;flex:0 0 auto!important;}
.rdTodoV2 .rdTodoCardBody{gap:4px!important;}
.rdTodoV2 .rdTodoCardBody b{font-size:14.5px!important;font-weight:700!important;letter-spacing:.02em!important;line-height:1.15!important;}
.rdTodoV2 .rdTodoCardBody small{font-size:11px!important;color:rgba(228,212,178,.55)!important;letter-spacing:.03em!important;}

/* === DEFINITIVER SCROLL-FIX (Flexbox braucht min-height:0) + CLEAN POLISH === */
.rdCoachTodoModalPro{display:flex!important;flex-direction:column!important;max-height:90vh!important;overflow:hidden!important;-webkit-tap-highlight-color:transparent!important;}
.rdCoachTodoModalPro .rdTodoHero,
.rdCoachTodoModalPro .rdTodoProgress,
.rdCoachTodoModalPro .rdTodoHint,
.rdCoachTodoModalPro .rdTodoModalActions{flex:0 0 auto!important;}
.rdCoachTodoModalPro .rdTodoScroll{flex:0 1 auto!important;min-height:0!important;max-height:58vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;-webkit-tap-highlight-color:transparent!important;padding:2px 10px 4px 2px!important;}
/* Nur die Items reagieren auf Tap — nicht die ganze Liste */
.rdCoachTodoModalPro,.rdCoachTodoModalPro .rdTodoScroll,.rdCoachTodoModalPro .rdTodoGroup{background-clip:padding-box;}
.rdCoachTodoModalPro .rdTodoGroup,.rdCoachTodoModalPro .rdTodoChecks{-webkit-tap-highlight-color:transparent!important;}
.rdCoachTodoModalPro .rdTodoCheck{-webkit-tap-highlight-color:rgba(212,174,84,.14)!important;transition:background .12s,border-color .12s!important;}
.rdCoachTodoModalPro .rdTodoCheck:active{background:rgba(212,174,84,.14)!important;border-color:rgba(212,174,84,.4)!important;}
/* dezenter Gold-Scrollbalken */
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar{width:4px;}
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar-thumb{background:rgba(212,174,84,.4);border-radius:99px;}

/* === EMOJI OHNE RAHMEN · CLEANE KACHELN (Dashboard premium) === */
.rdTodoV2 .rdTodoCardIcon{background:transparent!important;border:none!important;box-shadow:none!important;width:30px!important;height:30px!important;font-size:25px!important;border-radius:0!important;}
.rdTodoV2 .rdCoachTodoItem{background:rgba(255,255,255,.028)!important;border:1px solid rgba(212,174,84,.16)!important;border-radius:16px!important;box-shadow:none!important;}
.rdTodoV2 .rdCoachTodoItem:active{background:rgba(255,255,255,.05)!important;}
.rdTodoV2 .rdTodoCardOpen{padding:14px 8px 14px 14px!important;gap:13px!important;}
.rdTodoV2 .rdTodoCardBody b{font-size:15px!important;font-weight:650!important;letter-spacing:.01em!important;color:rgba(255,248,232,.96)!important;text-transform:none!important;}
.rdTodoV2 .rdTodoCardBody small{font-size:11.5px!important;color:rgba(225,210,178,.5)!important;margin-top:1px!important;}
.rdTodoV2 .rdTodoCardActions button{width:36px!important;height:36px!important;border-radius:11px!important;background:rgba(255,255,255,.03)!important;border:1px solid rgba(212,174,84,.22)!important;}
.rdTodoV2 .rdFolderHead h2{font-size:13px!important;letter-spacing:.12em!important;color:rgba(255,243,216,.92)!important;}
/* Modal-Item-Emoji (Hero) ohne harten Kasten */
.rdCoachTodoModalPro .rdTodoIcon{background:rgba(212,174,84,.08)!important;border:none!important;box-shadow:none!important;}

/* === LISTEN-MODAL · KONSTANTER RAHMEN FÜR SCREENSHOTS (immer gleiche Außenmaße) === */
.rdModalOverlay.rdCoachTodoOverlay{align-items:center!important;justify-content:center!important;padding:5vh 18px!important;}
.rdCoachTodoModalPro{
  display:flex!important;flex-direction:column!important;
  width:calc(100vw - 36px)!important;max-width:440px!important;
  height:82vh!important;max-height:82vh!important;   /* feste Höhe → Rahmen immer gleich */
  overflow:hidden!important;-webkit-tap-highlight-color:transparent!important;
}
.rdCoachTodoModalPro *{-webkit-tap-highlight-color:transparent!important;}
.rdCoachTodoModalPro .rdTodoHero,
.rdCoachTodoModalPro .rdTodoProgress,
.rdCoachTodoModalPro .rdTodoHint,
.rdCoachTodoModalPro .rdTodoModalActions{flex:0 0 auto!important;}
/* Items füllen den restlichen Platz → bei wenig Items leerer Raum, bei vielen Scroll */
.rdCoachTodoModalPro .rdTodoScroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;height:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;padding:2px 10px 6px 2px!important;}
/* NUR Items reagieren auf Tap, nie die ganze Liste */
.rdCoachTodoModalPro .rdTodoCheck{transition:background .12s ease,border-color .12s ease!important;}
.rdCoachTodoModalPro .rdTodoCheck:active{background:rgba(212,174,84,.16)!important;border-color:rgba(212,174,84,.45)!important;}
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar{width:4px;}
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar-thumb{background:rgba(212,174,84,.4);border-radius:99px;}
.rdCoachTodoModalPro .rdTodoScroll::-webkit-scrollbar-track{background:transparent;}

/* === DASHBOARD-KACHELN · DEFINITIVES SAUBERES LAYOUT (Emoji | Titel+Datum | Aktionen) === */
.rdTodoV2 .rdCoachTodoItem{display:flex!important;flex-direction:row!important;align-items:center!important;gap:0!important;background:rgba(255,255,255,.028)!important;border:1px solid rgba(212,174,84,.16)!important;border-radius:16px!important;box-shadow:none!important;margin-bottom:11px!important;overflow:hidden!important;padding:0!important;}
.rdTodoV2 .rdCoachTodoItem:active{background:rgba(255,255,255,.05)!important;}
.rdTodoV2 .rdTodoCardOpen{flex:1 1 auto!important;min-width:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:13px!important;background:transparent!important;border:none!important;text-align:left!important;padding:14px 6px 14px 15px!important;cursor:pointer!important;}
.rdTodoV2 .rdTodoCardIcon{flex:0 0 auto!important;width:34px!important;height:34px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:25px!important;line-height:1!important;background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0!important;}
.rdTodoV2 .rdTodoCardBody{flex:1 1 auto!important;min-width:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;}
.rdTodoV2 .rdTodoCardBody b{display:block!important;font-size:15px!important;font-weight:650!important;letter-spacing:.01em!important;line-height:1.2!important;color:rgba(255,248,232,.97)!important;text-transform:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.rdTodoV2 .rdTodoCardBody small{display:block!important;font-size:11.5px!important;color:rgba(225,210,178,.5)!important;letter-spacing:.02em!important;line-height:1.1!important;}
.rdTodoV2 .rdTodoCardActions{flex:0 0 auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;padding:0 12px 0 4px!important;}
.rdTodoV2 .rdTodoCardActions button{width:37px!important;height:37px!important;border-radius:11px!important;background:rgba(255,255,255,.03)!important;border:1px solid rgba(212,174,84,.22)!important;color:rgba(255,236,196,.9)!important;font-size:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;}
.rdTodoV2 .rdTodoCardActions button:active{background:rgba(212,174,84,.16)!important;}

/* === TARGETED FIX 2026-06-05: LISTEN-MODAL SCROLL + LISTEN-DASHBOARD ALIGNMENT === */
/* Modal: Außenkarte bleibt ruhig, nur die Punkte-Liste scrollt */
.rdModalOverlay.rdCoachTodoOverlay{
  position:fixed!important;inset:0!important;z-index:99999!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:calc(env(safe-area-inset-top,0px) + 18px) 18px calc(env(safe-area-inset-bottom,0px) + 18px)!important;
  overflow:hidden!important;touch-action:none!important;overscroll-behavior:none!important;
}
.rdCoachTodoModalPro{
  width:calc(100vw - 36px)!important;max-width:440px!important;
  height:min(82vh,720px)!important;max-height:min(82vh,720px)!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr) auto auto!important;
  overflow:hidden!important;
  padding:28px 22px 22px!important;
  box-sizing:border-box!important;
  -webkit-tap-highlight-color:transparent!important;
  touch-action:none!important;
}
.rdCoachTodoModalPro .rdTodoHero{grid-row:1!important;margin:0 0 18px!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;min-height:86px!important;}
.rdCoachTodoModalPro .rdTodoProgress{grid-row:2!important;margin:0 0 18px!important;}
.rdCoachTodoModalPro .rdTodoScroll{
  grid-row:3!important;min-height:0!important;height:100%!important;max-height:none!important;
  overflow-y:scroll!important;overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;touch-action:pan-y!important;
  padding:2px 8px 16px 2px!important;margin:0!important;
  scrollbar-width:thin!important;
  -webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 18px, #000 calc(100% - 24px), transparent 100%)!important;
  mask-image:linear-gradient(to bottom, transparent 0, #000 18px, #000 calc(100% - 24px), transparent 100%)!important;
}
.rdCoachTodoModalPro .rdTodoHint{grid-row:4!important;margin:16px 0 0!important;}
.rdCoachTodoModalPro .rdTodoModalActions{grid-row:5!important;margin-top:18px!important;}
.rdCoachTodoModalPro .rdTodoCheck{touch-action:pan-y!important;-webkit-tap-highlight-color:transparent!important;}
.rdCoachTodoModalPro .rdTodoCheck:active{background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.07)!important;transform:none!important;}
.rdCoachTodoModalPro .rdTodoScroll:active,
.rdCoachTodoModalPro .rdTodoChecks:active,
.rdCoachTodoModalPro .rdTodoGroup:active{background:transparent!important;box-shadow:none!important;filter:none!important;}

/* Listen-Dashboard: Icon links mittig, Text sauber mittig, Aktionen fest rechts */
.rdTodoV2 .rdFolderHead{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;}
.rdTodoV2 .rdFolderHead h2{display:flex!important;align-items:center!important;gap:8px!important;}
.rdTodoV2 .rdCoachTodoItem{
  min-height:90px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;
  padding:0!important;margin-bottom:14px!important;overflow:hidden!important;
  border-radius:20px!important;
}
.rdTodoV2 .rdCoachTodoItem:active{background:rgba(255,255,255,.028)!important;filter:none!important;box-shadow:none!important;}
.rdTodoV2 .rdTodoCardOpen{
  height:100%!important;min-width:0!important;
  display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;align-items:center!important;
  gap:12px!important;padding:0 8px 0 20px!important;
  background:transparent!important;border:0!important;text-align:left!important;
}
.rdTodoV2 .rdTodoCardIcon{
  width:42px!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  font-size:29px!important;line-height:1!important;margin:0!important;opacity:.95!important;
}
.rdTodoV2 .rdTodoCardBody{min-width:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;transform:translateY(1px)!important;}
.rdTodoV2 .rdTodoCardBody b{font-size:17px!important;line-height:1.08!important;letter-spacing:.025em!important;font-weight:800!important;text-transform:uppercase!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.rdTodoV2 .rdTodoCardBody small{font-size:13px!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:rgba(225,210,178,.56)!important;}
.rdTodoV2 .rdTodoCardActions{height:100%!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;padding:0 24px 0 8px!important;}
.rdTodoV2 .rdTodoCardActions button{width:44px!important;height:44px!important;border-radius:15px!important;font-size:22px!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.rdTodoV2 .rdTodoCardActions button:active{background:rgba(212,174,84,.14)!important;}
.rdTodoBadge{min-width:22px!important;height:22px!important;padding:0 6px!important;font-size:12px!important;}

/* ACTION CENTER V3 — rebuilt from mockup, scoped only to the Lists page */
.aiPraxisScreen.rdActionCenterScreen,
.rdActionCenterScreen{
  background:#050505!important;
}
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  width:min(100%,430px)!important;
  min-height:100svh!important;
  margin:0 auto!important;
  padding:calc(env(safe-area-inset-top,0px) + 48px) 16px calc(env(safe-area-inset-bottom,0px) + 28px)!important;
  box-sizing:border-box!important;
  background:#050505!important;
  color:#f6f0e4!important;
}
.rdActionCenterPage .rdActionHeader{
  text-align:center!important;
  margin:0 0 30px!important;
  padding:0!important;
}
.rdActionCenterPage .rdActionHeader h1{
  margin:0!important;
  color:#f5efe4!important;
  font-size:29px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  text-shadow:0 0 12px rgba(255,255,255,.18)!important;
}
.rdActionCenterPage .rdActionHeader p{
  margin:10px 0 0!important;
  color:#d6ad62!important;
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:700!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
.rdActionCenterPage .rdActionCreateCard,
.rdActionCenterPage .rdActionSection,
.rdActionCenterPage .rdActionArchiveRow{
  width:100%!important;
  box-sizing:border-box!important;
  border:1px solid rgba(165,135,76,.28)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.018) inset!important;
}
.rdActionCenterPage .rdActionCreateCard{
  padding:21px 15px 15px!important;
  margin:0 0 16px!important;
}
.rdActionCenterPage .rdActionCreateCard h2,
.rdActionCenterPage .rdActionSectionHead h2{
  margin:0!important;
  color:#d8b062!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
.rdActionCenterPage .rdActionInputRow{
  height:46px!important;
  margin:18px 0 13px!important;
  display:grid!important;
  grid-template-columns:1fr 52px!important;
  align-items:center!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:11px!important;
  background:rgba(0,0,0,.36)!important;
  overflow:hidden!important;
}
.rdActionCenterPage #rdMyListInput{
  all:unset!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  padding:0 12px!important;
  color:#f4ead8!important;
  font-size:15px!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
  line-height:46px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.rdActionCenterPage #rdMyListInput::placeholder{color:rgba(230,222,210,.45)!important;}
.rdActionCenterPage .rdActionMicBtn{
  all:unset!important;
  height:32px!important;
  width:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#9aa0a6!important;
  border-left:1px solid rgba(255,255,255,.10)!important;
  cursor:pointer!important;
}
.rdActionCenterPage .rdActionCreateBtn{
  width:100%!important;
  height:44px!important;
  border:0!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#f1cd7a 0%,#daa64d 100%)!important;
  color:#14100a!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 22px rgba(216,166,75,.22), inset 0 1px 0 rgba(255,255,255,.4)!important;
}
.rdActionCenterPage .rdMyListRecHint{display:none!important;}
.rdActionCenterPage .rdActionSection{
  padding:18px 14px 14px!important;
  margin:0 0 14px!important;
}
.rdActionCenterPage .rdActionSectionHead{
  min-height:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:0 2px 13px!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
}
.rdActionCenterPage .rdTodoBadge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:19px!important;
  height:19px!important;
  margin-left:8px!important;
  border-radius:999px!important;
  background:#d8a94f!important;
  color:#1b1207!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  vertical-align:1px!important;
}
.rdActionCenterPage .rdActionSectionHead button{
  all:unset!important;
  color:#d8b062!important;
  width:26px!important;
  height:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:25px!important;
  line-height:1!important;
  cursor:pointer!important;
}
.rdActionCenterPage .rdActionSectionHead .rdActionCollapseBtn{font-size:22px!important;transform:translateY(-2px)!important;}
.rdActionCenterPage .rdActionRows{
  width:100%!important;
  overflow:hidden!important;
}
.rdActionCenterPage .rdActionListRow{
  height:42px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto 20px!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 2px 0 5px!important;
  border-bottom:1px solid rgba(255,255,255,.062)!important;
  background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(255,255,255,.018),rgba(0,0,0,.16))!important;
  cursor:pointer!important;
  user-select:none!important;
  -webkit-tap-highlight-color:transparent!important;
}
.rdActionCenterPage .rdActionListRow:last-child{border-bottom:0!important;}
.rdActionCenterPage .rdActionListRow:active{background:rgba(216,169,79,.055)!important;}
.rdActionCenterPage .rdActionListRow.done{opacity:.58!important;}
.rdActionCenterPage .rdActionListRow.unread .rdActionRowText b:before{content:'•';color:#d8a94f;margin-right:6px;}
.rdActionCenterPage .rdActionRowIcon{
  width:34px!important;
  height:34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#d8b062!important;
  font-size:20px!important;
  line-height:1!important;
}
.rdActionCenterPage .rdActionRowText{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
}
.rdActionCenterPage .rdActionRowText b{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#eee7dc!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.rdActionCenterPage .rdActionRowProgress{
  color:rgba(232,224,211,.66)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:650!important;
  white-space:nowrap!important;
  letter-spacing:.01em!important;
}
.rdActionCenterPage .rdActionRowChevron{
  color:#d8b062!important;
  font-size:29px!important;
  line-height:1!important;
  font-weight:300!important;
  text-align:right!important;
  transform:translateY(-1px)!important;
}
.rdActionCenterPage .rdActionArchiveRow{
  height:54px!important;
  margin:16px 0 0!important;
  padding:0 14px 0 17px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto 20px!important;
  align-items:center!important;
  gap:8px!important;
  color:inherit!important;
  text-align:left!important;
  cursor:pointer!important;
}
.rdActionCenterPage .rdActionArchiveRow span{
  color:#d8b062!important;
  font-size:21px!important;
  line-height:1!important;
}
.rdActionCenterPage .rdActionArchiveRow b{
  color:#eee7dc!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.rdActionCenterPage .rdActionArchiveRow small{
  color:rgba(232,224,211,.45)!important;
  font-size:12px!important;
}
.rdActionCenterPage .rdActionArchiveRow i{
  color:#d8b062!important;
  font-style:normal!important;
  font-size:29px!important;
  line-height:1!important;
}
.rdActionCenterPage .rdEmptyText{
  margin:12px 2px 0!important;
  color:rgba(232,224,211,.52)!important;
  font-size:13px!important;
}
@media (max-width:380px){
  .rdActionCenterPage .rdActionRowProgress{font-size:11px!important;}
  .rdActionCenterPage .rdActionRowText b{font-size:13px!important;letter-spacing:.07em!important;}
  .rdActionCenterPage .rdActionListRow{grid-template-columns:36px minmax(0,1fr) auto 17px!important;gap:7px!important;}
}

/* === RD ACTION CENTER TARGETED POLISH 2026-06-06 === */
.aiPraxisScreen.rdActionCenterScreen,
.rdActionCenterScreen{
  background:transparent!important;
}
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  width:min(100%,460px)!important;
  padding:calc(env(safe-area-inset-top,0px) + 10px) 7px calc(env(safe-area-inset-bottom,0px) + 28px)!important;
  background:transparent!important;
}
.rdActionCenterPage .rdActionHeader{
  margin:0 0 22px!important;
  padding-top:0!important;
}
.rdActionCenterPage .rdActionHeader h1{
  font-size:28px!important;
  letter-spacing:.135em!important;
}
.rdActionCenterPage .rdActionHeader p{
  margin-top:9px!important;
}
.rdActionCenterPage .rdActionCreateCard,
.rdActionCenterPage .rdActionSection,
.rdActionCenterPage .rdActionArchiveRow{
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(18,18,18,.68),rgba(8,8,8,.50))!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
.rdActionCenterPage .rdActionCreateCard{
  padding:20px 16px 16px!important;
  margin-bottom:15px!important;
}
.rdActionCenterPage .rdActionSection{
  padding:18px 16px 13px!important;
  margin-bottom:15px!important;
}
.rdActionCenterPage .rdActionInputRow{
  height:48px!important;
  grid-template-columns:1fr 56px!important;
}
.rdActionCenterPage #rdMyListInput{
  height:48px!important;
  line-height:48px!important;
  font-size:15.5px!important;
}
.rdActionCenterPage .rdActionMicBtn{
  width:56px!important;
  position:relative!important;
}
.rdActionCenterPage .rdActionMicBtn.rec{
  color:#f2bd5a!important;
}
.rdActionCenterPage .rdActionMicBtn.rec::before{
  content:''!important;
  position:absolute!important;
  width:34px!important;
  height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(242,189,90,.45)!important;
  box-shadow:0 0 18px rgba(242,189,90,.28)!important;
  animation:rdActionMicPulse 1.05s ease-in-out infinite!important;
}
.rdActionCenterPage .rdActionMicBtn.rec .rdMicGlyph{
  transform:scale(.88)!important;
}
.rdActionCenterPage .rdMyListRecHint{
  display:none!important;
  margin:-4px 2px 11px!important;
  color:#f2bd5a!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.rdActionCenterPage .rdMyListCreate.recording .rdMyListRecHint,
.rdActionCenterPage .rdActionCreateCard.recording .rdMyListRecHint{
  display:block!important;
}
@keyframes rdActionMicPulse{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.15);opacity:1}}
.rdActionCenterPage .rdActionSectionHead button:not(.rdActionCollapseBtn){
  display:none!important;
}
.rdActionCenterPage .rdActionListRow{
  height:48px!important;
  grid-template-columns:48px minmax(0,1fr) auto 34px!important;
  gap:8px!important;
  padding:0 6px 0 10px!important;
}
.rdActionCenterPage .rdActionRowIcon{
  width:40px!important;
  height:40px!important;
  justify-content:center!important;
  font-size:22px!important;
}
.rdActionCenterPage .rdActionRowText{
  align-items:center!important;
}
.rdActionCenterPage .rdActionRowText b{
  font-size:15px!important;
  letter-spacing:.085em!important;
}
.rdActionCenterPage .rdActionRowProgress{
  font-size:12px!important;
  padding-left:8px!important;
}
.rdActionCenterPage .rdActionRowChevron{display:none!important;}
.rdActionCenterPage .rdActionRowDelete{
  all:unset!important;
  width:32px!important;
  height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#d8b062!important;
  font-size:22px!important;
  line-height:1!important;
  font-weight:300!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
}
.rdActionCenterPage .rdActionRowDelete:active{
  transform:scale(.92)!important;
  color:#f0d088!important;
}
@media (max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage{padding-left:6px!important;padding-right:6px!important;}
  .rdActionCenterPage .rdActionListRow{grid-template-columns:44px minmax(0,1fr) auto 30px!important;gap:6px!important;padding-left:8px!important;}
  .rdActionCenterPage .rdActionRowText b{font-size:14px!important;}
  .rdActionCenterPage .rdActionRowProgress{font-size:11px!important;}
}

/* === RD ACTION CENTER USER POLISH 2026-06-06-B === */
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  padding-top:0!important;
  margin-top:-18px!important;
}
.rdActionCenterPage .rdActionHeader{
  margin:0 0 18px!important;
}
.rdActionCenterPage .rdActionHeader h1{
  font-size:27px!important;
  letter-spacing:.14em!important;
}
.rdActionCenterPage .rdActionCreateCard{
  margin-bottom:18px!important;
}
.rdActionCenterPage .rdActionSectionHead .rdActionCollapseBtn{
  display:flex!important;
  transform:translateY(-1px) rotate(0deg)!important;
  transition:transform .18s ease!important;
}
.rdActionCenterPage .rdActionSection.collapsed .rdActionSectionHead{
  border-bottom:0!important;
  padding-bottom:0!important;
}
.rdActionCenterPage .rdActionSection.collapsed .rdActionCollapseBtn{
  transform:translateY(-1px) rotate(-90deg)!important;
}
.rdActionCenterPage .rdActionSection.collapsed{
  padding-bottom:18px!important;
}
.rdActionCenterPage .rdActionListRow{
  grid-template-columns:46px minmax(0,1fr) max-content 24px!important;
  gap:4px!important;
  padding-left:12px!important;
  padding-right:4px!important;
}
.rdActionCenterPage .rdActionRowIcon{
  width:38px!important;
  height:38px!important;
  font-size:21px!important;
}
.rdActionCenterPage .rdActionRowText b{
  font-size:14px!important;
  letter-spacing:.075em!important;
}
.rdActionCenterPage .rdActionRowProgress{
  font-size:11.5px!important;
  padding-left:4px!important;
  justify-self:end!important;
}
.rdActionCenterPage .rdActionRowDelete{
  width:24px!important;
  height:32px!important;
  font-size:21px!important;
  justify-self:end!important;
}
@media (max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage{margin-top:-12px!important;}
  .rdActionCenterPage .rdActionListRow{grid-template-columns:40px minmax(0,1fr) max-content 22px!important;padding-left:8px!important;padding-right:2px!important;gap:3px!important;}
  .rdActionCenterPage .rdActionRowText b{font-size:13px!important;letter-spacing:.065em!important;}
  .rdActionCenterPage .rdActionRowProgress{font-size:10.8px!important;}
}

/* === RD ACTION CENTER TARGETED ARCHIVE + SMOOTH COLLAPSE 2026-06-06-C === */
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  margin-top:-38px!important;
  padding-left:10px!important;
  padding-right:10px!important;
}
.rdActionCenterPage .rdActionHeader{margin-top:0!important;margin-bottom:14px!important;}
.rdActionCenterPage .rdActionRows{
  overflow:hidden!important;
  max-height:680px!important;
  opacity:1!important;
  transition:max-height .34s cubic-bezier(.22,.9,.25,1), opacity .22s ease, padding .28s ease!important;
}
.rdActionCenterPage .rdActionSection.collapsed .rdActionRows{
  max-height:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.rdActionCenterPage .rdActionSection.collapsed{
  padding-bottom:18px!important;
}
.rdActionCenterPage .rdActionCollapseBtn{
  will-change:transform!important;
}
.rdActionCenterPage .rdActionListRow,
.rdActionCenterPage .rdArchiveTodoRow{
  grid-template-columns:44px minmax(0,1fr) max-content 30px!important;
  padding-left:12px!important;
  padding-right:8px!important;
  gap:7px!important;
}
.rdActionCenterPage .rdActionRowText b{
  font-size:13.5px!important;
  letter-spacing:.065em!important;
}
.rdActionCenterPage .rdActionRowProgress{
  justify-self:end!important;
  padding-left:10px!important;
  min-width:max-content!important;
}
.rdActionCenterPage .rdActionRowDelete{
  justify-self:end!important;
}
.rdArchiveTodoPage .rdArchiveTodoRow{
  height:54px!important;
  display:grid!important;
  align-items:center!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  cursor:pointer!important;
}
.rdArchiveTodoPage .rdArchiveTodoRow .rdActionRowText{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;}
.rdArchiveTodoPage .rdArchiveTodoRow .rdActionRowText small{font-size:10.5px!important;color:rgba(231,218,196,.46)!important;letter-spacing:.08em!important;margin-top:2px!important;}
.rdArchiveConfirmOverlay{z-index:99999!important;}
.rdArchiveConfirmBox{
  width:calc(100vw - 58px)!important;max-width:360px!important;
  border:1px solid rgba(219,168,91,.34)!important;border-radius:24px!important;
  background:linear-gradient(180deg,rgba(24,22,18,.98),rgba(5,5,5,.98))!important;
  padding:24px 20px 20px!important;box-shadow:0 30px 80px rgba(0,0,0,.75)!important;
}
.rdArchiveConfirmBox h2{margin:0 0 10px!important;font-family:var(--font-display)!important;font-size:22px!important;letter-spacing:.15em!important;color:#f4e3c0!important;text-align:center!important;}
.rdArchiveConfirmBox p{margin:0 0 18px!important;color:rgba(231,218,196,.66)!important;font-size:13px!important;line-height:1.45!important;text-align:center!important;}
.rdArchiveConfirmActions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;}
.rdCoachTodoModalPro .rdTodoModalActions{grid-template-columns:1fr 1fr!important;}
.rdCoachTodoModalPro .rdTodoModalActions .rdArchiveBtn{grid-column:1/-1!important;}
@media(max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage{margin-top:-30px!important;padding-left:8px!important;padding-right:8px!important;}
  .rdActionCenterPage .rdActionListRow,.rdActionCenterPage .rdArchiveTodoRow{grid-template-columns:40px minmax(0,1fr) max-content 28px!important;gap:5px!important;padding-left:8px!important;padding-right:4px!important;}
  .rdActionCenterPage .rdActionRowText b{font-size:12.8px!important;}
}
.rdActionCenterPage .rdActionRows{max-height:1600px!important;}
.rdActionCenterPage .rdActionSection.collapsed .rdActionRows{max-height:0!important;}

/* === RD ACTION CENTER FINAL TARGETED FIX 2026-06-06-D === */
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  margin-top:10px!important;
  padding-top:calc(env(safe-area-inset-top,0px) + 12px)!important;
}
.rdActionCenterPage .rdActionHeader{
  margin-top:0!important;
  margin-bottom:22px!important;
}
.rdArchiveTodoPage .rdActionRowDelete{
  color:#d8b062!important;
  font-size:24px!important;
  font-weight:300!important;
}
.rdCoachTodoModalPro.archivedView .rdTodoModalActions{
  grid-template-columns:1fr 1fr!important;
}
.rdCoachTodoModalPro.archivedView .rdTodoModalActions .rdArchiveBtn{
  display:none!important;
}
@media(max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage{
    margin-top:8px!important;
    padding-top:calc(env(safe-area-inset-top,0px) + 10px)!important;
  }
}

/* === RD ACTION CENTER FIX 2026-06-06-E: archive count + smoother folders + position === */
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  margin-top:-10px!important;
  padding-top:calc(env(safe-area-inset-top,0px) + 4px)!important;
}
.rdActionCenterPage .rdActionHeader{
  margin-bottom:20px!important;
}
.rdActionCenterPage .rdActionRows{
  max-height:1800px!important;
  opacity:1!important;
  transform:translateY(0)!important;
  transition:max-height .62s cubic-bezier(.16,1,.3,1), opacity .42s ease, transform .48s cubic-bezier(.16,1,.3,1)!important;
}
.rdActionCenterPage .rdActionSection.collapsed .rdActionRows{
  max-height:0!important;
  opacity:0!important;
  transform:translateY(-8px)!important;
  pointer-events:none!important;
}
.rdActionCenterPage .rdActionSection{
  transition:padding .52s cubic-bezier(.16,1,.3,1), margin .52s cubic-bezier(.16,1,.3,1), border-color .35s ease!important;
}
.rdActionCenterPage .rdActionCollapseBtn{
  transition:transform .52s cubic-bezier(.16,1,.3,1), opacity .35s ease!important;
}
.rdActionCenterPage .rdActionSection.collapsed .rdActionCollapseBtn{
  transform:translateY(-1px) rotate(-90deg)!important;
}
@media(max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage{
    margin-top:-6px!important;
    padding-top:calc(env(safe-area-inset-top,0px) + 4px)!important;
  }
}


/* === RD V24.2 TARGETED FIX · Coach Header Button exakt auf Titelhöhe === */
.praxisCoachPage .rdCoachTop .rdCoachTitleBlock{min-width:0!important;flex:1 1 auto!important;padding-right:0!important;}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;width:100%!important;min-width:0!important;}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{min-width:0!important;flex:1 1 auto!important;margin:2px 0 0!important;}
.praxisCoachPage .rdTopDayAction{position:static!important;right:auto!important;top:auto!important;transform:scale(.96)!important;opacity:0!important;pointer-events:none!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;margin:0!important;z-index:4!important;transition:opacity .32s ease,transform .32s ease!important;}
.praxisCoachPage .rdTopDayAction.show{opacity:1!important;pointer-events:auto!important;transform:scale(1)!important;}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:31px!important;line-height:31px!important;padding:0 13px!important;font-size:11.5px!important;font-weight:750!important;letter-spacing:.045em!important;border-radius:999px!important;white-space:nowrap!important;max-width:138px!important;overflow:hidden!important;text-overflow:ellipsis!important;}
@media (max-width:390px){.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:29px!important;line-height:29px!important;padding:0 10px!important;font-size:10.7px!important;max-width:118px!important;}.praxisCoachPage .rdCoachTop .rdCoachTitleLine{gap:7px!important;}}

/* === RD V24.2 TARGETED FIX · Action-Center Mikro idle grau, Aufnahme golden === */
.rdActionCenterPage .rdActionMicBtn,
.rdTodoV2 .rdMyListMicBtn{color:#9aa0a6!important;}
.rdActionCenterPage .rdActionMicBtn.rec,
.rdTodoV2 .rdMyListMicBtn.rec{color:#f2bd5a!important;}


/* v24.3 targeted coach header fix: cleaner title row, no subtitle, button aligned with title */
.praxisCoachPage .rdCoachTop{
  padding:10px 34px 9px!important;
  align-items:center!important;
  min-height:86px!important;
  box-sizing:border-box!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleBlock{
  min-width:0!important;
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding-right:0!important;
}
.praxisCoachPage .rdCoachTop .miniLabel{
  margin:0 0 5px!important;
  line-height:1!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{
  display:flex!important;
  align-items:center!important;
  min-height:34px!important;
  margin:0!important;
  line-height:.95!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.praxisCoachPage .rdCoachTop p{display:none!important;}
.praxisCoachPage .rdTopDayAction{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  transform:scale(.96)!important;
}
.praxisCoachPage .rdTopDayAction.show{transform:scale(1)!important;}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{
  height:34px!important;
  line-height:34px!important;
  padding:0 16px!important;
  font-size:12px!important;
  max-width:142px!important;
}
@media (max-width:390px){
  .praxisCoachPage .rdCoachTop{padding:10px 24px 9px!important;min-height:82px!important;}
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine{gap:8px!important;}
  .praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:32px!important;line-height:32px!important;padding:0 12px!important;font-size:11.2px!important;max-width:122px!important;}
}

/* === RD V24.4 PREMIUM FINAL · Coach Header kompakt, einzeilig, weniger wuchtig === */
.praxisCoachPage .rdCoachTop{
  padding:8px 34px 7px!important;
  min-height:76px!important;
  align-items:center!important;
  gap:14px!important;
}
.praxisCoachPage .rdCoachTop img{
  width:52px!important;
  height:52px!important;
  border-radius:18px!important;
  flex:0 0 52px!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleBlock{
  justify-content:center!important;
  min-width:0!important;
}
.praxisCoachPage .rdCoachTop .miniLabel{
  font-size:10px!important;
  letter-spacing:.19em!important;
  line-height:1!important;
  margin:0 0 4px!important;
  white-space:nowrap!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{
  display:block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  font-size:27px!important;
  line-height:1!important;
  letter-spacing:.145em!important;
  margin:0!important;
  min-height:auto!important;
  max-width:100%!important;
  flex:1 1 auto!important;
}
.praxisCoachPage .rdTopDayAction{
  position:static!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  transform:scale(.96)!important;
  transform-origin:center!important;
}
.praxisCoachPage .rdTopDayAction.show{transform:scale(1)!important;}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{
  height:32px!important;
  line-height:32px!important;
  padding:0 15px!important;
  font-size:11.4px!important;
  font-weight:750!important;
  letter-spacing:.045em!important;
  max-width:136px!important;
  border-radius:999px!important;
}
@media (max-width:390px){
  .praxisCoachPage .rdCoachTop{padding:8px 24px 7px!important;min-height:74px!important;gap:12px!important;}
  .praxisCoachPage .rdCoachTop img{width:50px!important;height:50px!important;flex-basis:50px!important;border-radius:17px!important;}
  .praxisCoachPage .rdCoachTop .miniLabel{font-size:9.4px!important;letter-spacing:.17em!important;margin-bottom:4px!important;}
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine{gap:8px!important;}
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{font-size:24px!important;letter-spacing:.125em!important;}
  .praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:30px!important;line-height:30px!important;padding:0 11px!important;font-size:10.6px!important;max-width:120px!important;}
}
@media (max-width:355px){
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{font-size:22px!important;letter-spacing:.11em!important;}
  .praxisCoachPage .rdTopDayAction .rdStickyActionBtn{max-width:108px!important;padding:0 9px!important;}
}

/* === RD V24.5 FINAL SCALPEL · Header lesbar + Action Center breiter + Voice safe === */
.praxisCoachPage .rdCoachTop{
  padding:8px 24px 8px!important;
  min-height:76px!important;
  gap:12px!important;
  align-items:center!important;
  overflow:visible!important;
}
.praxisCoachPage .rdCoachTop img{
  width:50px!important;
  height:50px!important;
  flex:0 0 50px!important;
  border-radius:16px!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleBlock{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.praxisCoachPage .rdCoachTop .miniLabel{
  font-size:9.2px!important;
  letter-spacing:.155em!important;
  line-height:1!important;
  margin:0 0 5px!important;
  white-space:nowrap!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-width:0!important;
  width:100%!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:21px!important;
  line-height:1!important;
  letter-spacing:.115em!important;
  margin:0!important;
  transform:none!important;
}
.praxisCoachPage .rdTopDayAction{
  position:static!important;
  flex:0 0 auto!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  transform:scale(.98)!important;
  transform-origin:center!important;
}
.praxisCoachPage .rdTopDayAction.show{transform:scale(1)!important;}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{
  height:32px!important;
  line-height:32px!important;
  padding:0 13px!important;
  font-size:10.8px!important;
  letter-spacing:.035em!important;
  max-width:118px!important;
  white-space:nowrap!important;
}
@media(max-width:390px){
  .praxisCoachPage .rdCoachTop{padding:8px 22px 8px!important;gap:11px!important;min-height:74px!important;}
  .praxisCoachPage .rdCoachTop img{width:48px!important;height:48px!important;flex-basis:48px!important;}
  .praxisCoachPage .rdCoachTop .miniLabel{font-size:8.8px!important;letter-spacing:.145em!important;margin-bottom:5px!important;}
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine{gap:8px!important;}
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{font-size:19px!important;letter-spacing:.105em!important;}
  .praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:31px!important;line-height:31px!important;padding:0 11px!important;font-size:10.2px!important;max-width:112px!important;}
}
@media(max-width:355px){
  .praxisCoachPage .rdCoachTop{padding-left:18px!important;padding-right:18px!important;gap:9px!important;}
  .praxisCoachPage .rdCoachTop img{width:46px!important;height:46px!important;flex-basis:46px!important;}
  .praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{font-size:17.5px!important;letter-spacing:.095em!important;}
  .praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:30px!important;line-height:30px!important;padding:0 9px!important;font-size:9.8px!important;max-width:104px!important;}
}

/* Action Center: Sektionen breiter, weniger Seitenluft, innen edler */
.rdActionCenterScreen .rdToolShell.rdActionCenterPage{
  width:min(100%,480px)!important;
  padding-left:2px!important;
  padding-right:2px!important;
}
.rdActionCenterPage .rdActionCreateCard,
.rdActionCenterPage .rdActionSection,
.rdActionCenterPage .rdActionArchiveRow{
  width:calc(100vw - 24px)!important;
  max-width:456px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  border-radius:20px!important;
}
.rdActionCenterPage .rdActionCreateCard{
  padding:22px 18px 18px!important;
}
.rdActionCenterPage .rdActionSection{
  padding:20px 18px 15px!important;
}
.rdActionCenterPage .rdActionArchiveRow{
  padding-left:20px!important;
  padding-right:14px!important;
}
.rdActionCenterPage .rdActionListRow,
.rdActionCenterPage .rdArchiveTodoRow{
  grid-template-columns:46px minmax(0,1fr) max-content 30px!important;
  padding-left:13px!important;
  padding-right:9px!important;
  gap:8px!important;
}
@media(max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage{padding-left:2px!important;padding-right:2px!important;}
  .rdActionCenterPage .rdActionCreateCard,
  .rdActionCenterPage .rdActionSection,
  .rdActionCenterPage .rdActionArchiveRow{width:calc(100vw - 20px)!important;}
  .rdActionCenterPage .rdActionCreateCard{padding:20px 16px 16px!important;}
  .rdActionCenterPage .rdActionSection{padding:18px 16px 14px!important;}
  .rdActionCenterPage .rdActionListRow,
  .rdActionCenterPage .rdArchiveTodoRow{grid-template-columns:42px minmax(0,1fr) max-content 28px!important;padding-left:10px!important;padding-right:7px!important;gap:6px!important;}
}

/* === RD V24.6 · Präzise Finalfixes: Action-Center-Abstände, Archiv-Progress, Coach-Header-Modi === */
/* 1) Action Center / Archiv: links und rechts exakt gleicher Außenabstand */
.aiPraxisScreen.rdActionCenterScreen,
.rdActionCenterScreen{
  overflow-x:hidden!important;
}
.rdActionCenterScreen .rdToolShell.rdActionCenterPage,
.rdActionCenterScreen .rdToolShell.rdArchiveTodoPage{
  width:calc(100vw - 38px)!important;
  max-width:430px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
.rdActionCenterPage .rdActionCreateCard,
.rdActionCenterPage .rdActionSection,
.rdActionCenterPage .rdActionArchiveRow,
.rdArchiveTodoPage .rdActionSection,
.rdArchiveTodoPage .rdActionArchiveRow{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
.rdActionCenterPage .rdActionListRow,
.rdArchiveTodoPage .rdActionListRow,
.rdArchiveTodoPage .rdArchiveTodoRow{
  grid-template-columns:44px minmax(0,1fr) max-content 24px!important;
  gap:8px!important;
  padding-left:12px!important;
  padding-right:12px!important;
  box-sizing:border-box!important;
}
.rdActionCenterPage .rdActionRowProgress,
.rdArchiveTodoPage .rdActionRowProgress{
  justify-self:end!important;
  min-width:34px!important;
  padding-left:6px!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:12px!important;
  letter-spacing:.02em!important;
}
.rdActionCenterPage .rdActionRowDelete,
.rdArchiveTodoPage .rdActionRowDelete{
  justify-self:end!important;
  width:24px!important;
  min-width:24px!important;
  text-align:center!important;
}
@media (max-width:380px){
  .rdActionCenterScreen .rdToolShell.rdActionCenterPage,
  .rdActionCenterScreen .rdToolShell.rdArchiveTodoPage{width:calc(100vw - 30px)!important;}
  .rdActionCenterPage .rdActionListRow,
  .rdArchiveTodoPage .rdActionListRow,
  .rdArchiveTodoPage .rdArchiveTodoRow{grid-template-columns:40px minmax(0,1fr) max-content 22px!important;padding-left:10px!important;padding-right:10px!important;gap:6px!important;}
  .rdActionCenterPage .rdActionRowProgress,
  .rdArchiveTodoPage .rdActionRowProgress{font-size:11px!important;min-width:30px!important;}
}

/* 2) Coach-Header: kompakt wenn Aktionsbutton sichtbar, zentriert und größer wenn kein Button sichtbar */
.praxisCoachPage .rdCoachTop{
  position:relative!important;
  overflow:hidden!important;
}
/* Normalmodus ohne Tag-starten/Tag-abschließen: Titel mittig unter dem Home-Icon */
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:86px!important;
  padding:12px 22px 12px!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) img{
  position:absolute!important;
  left:24px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:52px!important;
  height:52px!important;
  border-radius:17px!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdCoachTitleBlock{
  flex:0 1 auto!important;
  width:auto!important;
  max-width:calc(100% - 126px)!important;
  padding:0!important;
  margin:0 auto!important;
  text-align:center!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .miniLabel{
  display:block!important;
  text-align:center!important;
  font-size:10.5px!important;
  letter-spacing:.20em!important;
  line-height:1.05!important;
  margin:0 0 6px!important;
  color:#d3a55f!important;
  white-space:nowrap!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdCoachTitleLine{
  display:block!important;
  width:100%!important;
  text-align:center!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdCoachTitleLine h1{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:clamp(28px,7.4vw,36px)!important;
  line-height:.95!important;
  letter-spacing:.115em!important;
  margin:0!important;
  white-space:nowrap!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdTopDayAction{display:none!important;}

/* Button-Phase: bisherige kleine, saubere Anordnung unverändert stabilisieren */
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show){
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:74px!important;
  padding:8px 22px 7px!important;
  gap:12px!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) img{
  position:static!important;
  transform:none!important;
  width:50px!important;
  height:50px!important;
  flex:0 0 50px!important;
  border-radius:17px!important;
  align-self:center!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .rdCoachTitleBlock{
  flex:1 1 auto!important;
  min-width:0!important;
  padding-right:0!important;
  text-align:left!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .miniLabel{
  font-size:9.4px!important;
  letter-spacing:.17em!important;
  line-height:1.05!important;
  margin:0 0 4px!important;
  text-align:left!important;
  white-space:nowrap!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .rdCoachTitleLine{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .rdCoachTitleLine h1{
  flex:1 1 auto!important;
  min-width:0!important;
  font-size:21px!important;
  line-height:.95!important;
  letter-spacing:.08em!important;
  margin:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .rdTopDayAction{
  position:static!important;
  right:auto!important;
  top:auto!important;
  flex:0 0 auto!important;
  align-self:center!important;
  transform:scale(1)!important;
}
@media (max-width:380px){
  .praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) img{left:18px!important;width:48px!important;height:48px!important;}
  .praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdCoachTitleBlock{max-width:calc(100% - 112px)!important;}
  .praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdCoachTitleLine h1{font-size:27px!important;letter-spacing:.105em!important;}
  .praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show){padding-left:18px!important;padding-right:18px!important;}
  .praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .rdCoachTitleLine h1{font-size:19px!important;letter-spacing:.06em!important;}
}


/* ═══════════════════════════════════════════════════════
   RD NEW DESIGN v6.6 — FINAL CLEAN PATCH
   Alle Portrait-Bilder, 4-Tile Grid, Desktop-Fix
   ═══════════════════════════════════════════════════════ */

/* ── Hintergrundbilder für alle Bereiche ── */
.languageScreen{background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.92)),url('assets/img/language-bg.jpg') center top/cover no-repeat fixed!important;}
.splashLogoWrap img.logo{width:112px!important;height:112px!important;object-fit:cover!important;border-radius:50%!important;display:block!important;margin:0 auto!important;box-shadow:0 0 34px rgba(225,190,92,.22)!important;}
.rdStartDayBox{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.82)),url('assets/img/tag-starten.jpg') center top/cover no-repeat!important;}
.premiumFeedbackDialog,.coachFeedbackDialog,.checkDialog.eveningReviewDialog,.checkDialog.eveningReviewDialog.rdEveningV12{background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.88)),url('assets/img/abend-feedback.jpg') center top/cover no-repeat!important;}
.databaseScreen{background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.96)),url('assets/img/datenbank.jpg') center top/cover no-repeat fixed!important;}
.rdActionCenterScreen,.rdTodoFolderPage,.rdActionCenterPage{background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.96)),url('assets/img/action-center.jpg') center top/cover no-repeat fixed!important;}
.addonHome{background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.96)),url('assets/img/extra-lesson-bg.jpg') center top/cover no-repeat fixed!important;}

/* ── Portrait-Bilder: ALLE Hero-Bereiche oben verankern ── */
.courseHero{background-position:center top!important;background-size:cover!important;}
.moduleDashboardHero{background-position:center top!important;background-size:cover!important;}
.aiPraxisHero{background-position:center top!important;background-size:cover!important;}
.lockStartHero{background-position:center top!important;background-size:cover!important;}
.sectionHero,.goalBlueprintHero,.challengeCatalogHero{background-position:center top!important;background-size:cover!important;}

/* ── Portrait-Bilder: Path-Buttons (7-Tag / AI-Praxis Karten) ── */
.pathImageBtn{background-position:center top!important;background-size:cover!important;}
.sevenStartCard{background-position:center top!important;background-size:cover!important;}
.choiceCard{background-position:center top!important;background-size:cover!important;}

/* ── Portrait-Bilder: Tageskarten (pillar-1..7) ── */
.moduleImageCard.premiumDayCard{
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}

/* ── 4-Tile Grid (ACTION CENTER, GOAL BLUEPRINT, CHALLENGE, ZUSATZ) ── */
.premiumUtilityGridFour{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:clamp(9px,1.4vw,12px)!important;
  padding:0 16px calc(var(--sab) + 14px)!important;
  flex-shrink:0!important;
}
.premiumUtilityGridFour .tile.premiumUtilityTile{
  aspect-ratio:1!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
/* In dashboardControlFrame: Grid-Positionierung */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour{
  grid-row:3!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(8px,1.2dvh,11px) clamp(8px,1.8vw,11px)!important;
  padding:0!important;
  margin:0!important;
  min-height:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour .premiumUtilityTile{
  height:clamp(86px,11.8svh,115px)!important;
  max-height:115px!important;
  min-height:0!important;
  padding:8px 6px!important;
  border-radius:16px!important;
  aspect-ratio:unset!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour .premiumTileIcon{
  width:clamp(28px,6.5vw,36px)!important;
  height:clamp(28px,6.5vw,36px)!important;
  margin:0 0 clamp(7px,1svh,10px)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour .premiumUtilityTile span{
  font-size:clamp(9px,2.5vw,11.5px)!important;
  letter-spacing:.08em!important;
  text-align:center!important;
  line-height:1.1!important;
}
@media(max-height:740px){
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour .premiumUtilityTile{height:clamp(72px,10.2svh,90px)!important;max-height:90px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour .premiumTileIcon{width:24px!important;height:24px!important;margin-bottom:6px!important;}
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .premiumUtilityGridFour .premiumUtilityTile span{font-size:8.8px!important;}
}
/* sevenCourseHome */
.courseHomeBg.sevenCourseHome .premiumUtilityGridFour{
  padding:10px 16px calc(var(--sab) + 14px)!important;
}

/* ── Desktop-Fix: Kein abgehacktes Layout, web = homescreen ── */
@media(min-width:480px){
  .courseHomeBg{
    height:100vh;height:100dvh;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .courseHomeBg.thirtyCourseHome,
  .courseHomeBg.sevenCourseHome{
    overflow:hidden!important;
  }
  .courseHomeBg .dashboardControlFrame{
    overflow:visible!important;
  }
}

/* ── Datenbank-Button Hintergrundbild ── */
.journalDatabaseBtn,.thirtyDatabaseBottom,.sevenDatabaseBottom{
  background-image:linear-gradient(180deg,rgba(0,0,0,.48),rgba(0,0,0,.82)),url('assets/img/datenbank.jpg')!important;
  background-position:center top!important;
  background-size:cover!important;
}

/* ═══════════════════════════════════════════════════════
   NEW DESIGN v6.7 — Sprachauswahl, 7-Tage, 30-Tage Glow,
   Tageskarten, Coach-Button, Begrüßung
   ═══════════════════════════════════════════════════════ */

/* ── 1) SPRACHAUSWAHL — sauber & premium ── */
.rdLanguageScreen.languageScreen{
  background:linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.62) 52%,rgba(0,0,0,.94) 100%),url('assets/img/language-bg.jpg') center top/cover no-repeat fixed!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  min-height:100dvh!important;height:100dvh!important;
  padding:calc(env(safe-area-inset-top) + 24px) 22px calc(env(safe-area-inset-bottom) + 28px)!important;
}
.rdLangShell{width:100%;max-width:430px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;}
.rdLangHead{display:flex;flex-direction:column;align-items:center;}
.rdLangHead .tag.cleanTag{margin:0 0 18px!important;}
.rdLangHead h1{font-family:var(--font-display);font-size:clamp(38px,11vw,56px);line-height:.94;letter-spacing:.01em;text-transform:uppercase;color:var(--text);margin:0;}
.rdLangHead p{color:var(--text2);font-size:15px;line-height:1.55;max-width:330px;margin:14px auto 0;padding:0;}
.rdLangCards{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%;margin-top:38px;}
.rdLangCard{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  padding:30px 12px 26px;border-radius:22px;cursor:pointer;
  background:linear-gradient(180deg,rgba(22,20,16,.92),rgba(8,8,8,.95));
  border:1.4px solid rgba(225,190,92,.46);
  box-shadow:0 0 0 1px rgba(255,226,140,.05) inset,0 0 22px rgba(201,168,76,.12),0 16px 36px rgba(0,0,0,.5);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.rdLangCard:active{transform:scale(.97);border-color:var(--gold-bright,#e8c96a);box-shadow:0 0 0 1px rgba(255,226,140,.10) inset,0 0 28px rgba(201,168,76,.24),0 16px 36px rgba(0,0,0,.55);}
.rdLangFlag{font-size:48px;line-height:1;filter:drop-shadow(0 6px 14px rgba(0,0,0,.5));}
.rdLangName{font-family:var(--font-c);font-size:15px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--text);}
@media(max-width:360px){
  .rdLangCard{padding:24px 8px 22px;gap:11px;}
  .rdLangFlag{font-size:40px;}
  .rdLangName{font-size:13px;letter-spacing:.1em;}
}

/* ── 2) 7-TAGE TAGESKARTEN — größer, Bild erkennbar ── */
.premiumModuleGrid .premiumDayCard,
.moduleDashboardScreen .moduleImageCard{
  min-height:150px!important;
  height:150px!important;
  padding:18px 78px 18px 20px!important;
  background-size:cover!important;
  background-position:center 28%!important;
}
.premiumModuleGrid .moduleImageCard::before{
  background:linear-gradient(90deg,rgba(0,0,0,.74) 0%,rgba(0,0,0,.40) 50%,rgba(0,0,0,.30) 100%)!important;
}
@media(max-height:760px){
  .premiumModuleGrid .premiumDayCard,.moduleDashboardScreen .moduleImageCard{height:138px!important;min-height:138px!important;}
}

/* ── 3) 7-TAGE HERO-BILD (Kurs-Dashboard) weiter runter ── */
.moduleDashboardHero{background-position:center 42%!important;}
.sevenCourseHome .courseHero{background-position:center 40%!important;}

/* ── 4) 7-TAGE UTILITY-GRID — sauberes 2×2 statt 3+1 ── */
.courseHomeBg.sevenCourseHome .premiumUtilityGridFour,
.courseHomeBg.sevenCourseHome .dashboardControlFrame .premiumUtilityGridFour{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
  padding:12px 16px calc(var(--sab) + 14px)!important;
}
.courseHomeBg.sevenCourseHome .premiumUtilityGridFour .premiumUtilityTile{
  aspect-ratio:1!important;height:auto!important;
}

/* ── 5) 30-TAGE KACHEL-BESCHRIFTUNG sauber mittig + umbrechen ── */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn span{
  left:0!important;right:0!important;width:100%!important;
  text-align:center!important;
  padding:0 10px!important;
  white-space:normal!important;
  line-height:1.15!important;
  transform:none!important;
}
.courseHomeBg.sevenCourseHome .sevenHomeActions .choiceCard .choiceText{
  text-align:center!important;width:100%!important;
}
/* Obere Kacheln: Motiv sichtbar machen (Höhe wird im LAYOUT ROOT FIX gesetzt) */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  background-position:center 18%!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn::before{
  background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.30) 48%,rgba(0,0,0,.82) 100%)!important;
}

/* ── 6) 30-TAGE DASHBOARD-FRAME — Premium Glow ── */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame{
  border:1px solid rgba(212,176,86,.50)!important;
  box-shadow:
    0 0 0 1px rgba(255,226,140,.05) inset,
    0 0 26px rgba(203,165,76,.14),
    0 0 60px rgba(203,165,76,.07),
    0 20px 44px rgba(0,0,0,.55)!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  box-shadow:0 0 0 1px rgba(255,226,140,.06) inset,0 0 18px rgba(201,168,76,.16),0 10px 26px rgba(0,0,0,.45)!important;
  border:1px solid rgba(225,190,92,.42)!important;
}

/* ── 7) 30-TAGE DATENBANK-Button — Spacing zur Sektion (Desktop) ── */
@media(min-width:480px){
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .dashboardFrameDividerDatabase{
    margin-top:14px!important;
  }
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame .thirtyDatabaseBottom{
    margin-top:8px!important;
    margin-bottom:6px!important;
  }
  .courseHomeBg.thirtyCourseHome .dashboardControlFrame{
    padding-bottom:clamp(14px,2dvh,20px)!important;
    row-gap:clamp(10px,1.5dvh,14px)!important;
  }
}

/* ── 8) COACH — Tag-starten / Tag-abschließen Button rechts neben Titel ── */
.praxisCoachPage .rdCoachTop{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
  position:relative!important;
}
.praxisCoachPage .rdCoachTop>img{flex:0 0 auto!important;align-self:center!important;}
.praxisCoachPage .rdCoachTop .rdCoachTitleBlock{
  flex:1 1 auto!important;min-width:0!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;padding-right:0!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine{
  display:flex!important;flex-direction:row!important;
  align-items:center!important;justify-content:space-between!important;
  gap:10px!important;width:100%!important;min-width:0!important;
}
.praxisCoachPage .rdCoachTop .rdCoachTitleLine h1{
  flex:1 1 auto!important;min-width:0!important;margin:2px 0 0!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.praxisCoachPage .rdTopDayAction{
  position:static!important;right:auto!important;top:auto!important;
  flex:0 0 auto!important;margin:0!important;align-self:center!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  transform:scale(.96)!important;opacity:0!important;pointer-events:none!important;
  transition:opacity .3s ease,transform .3s ease!important;z-index:4!important;
}
.praxisCoachPage .rdTopDayAction.show{
  opacity:1!important;pointer-events:auto!important;transform:scale(1)!important;
}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn{
  height:32px!important;line-height:32px!important;padding:0 14px!important;
  font-size:11.5px!important;font-weight:750!important;letter-spacing:.04em!important;
  border-radius:999px!important;white-space:nowrap!important;
  max-width:none!important;overflow:visible!important;text-overflow:clip!important;
  border:1px solid rgba(212,174,84,.85)!important;color:#f1e4c8!important;
  background:rgba(212,174,84,.12)!important;cursor:pointer!important;
}
.praxisCoachPage .rdTopDayAction .rdStickyActionBtn:active{transform:scale(.97)!important;background:rgba(212,174,84,.22)!important;}
/* Wenn Button sichtbar: Titel etwas kompakter, damit beides sauber passt */
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show) .rdCoachTitleLine h1{
  font-size:clamp(20px,5.4vw,26px)!important;letter-spacing:.06em!important;
}
@media(max-width:380px){
  .praxisCoachPage .rdTopDayAction .rdStickyActionBtn{height:30px!important;line-height:30px!important;padding:0 12px!important;font-size:11px!important;}
}

/* ═══════════════════════════════════════════════════════
   v6.8 — LAYOUT ROOT FIX
   Dashboard (7-Tage + 30-Tage): natürliches Flow-Layout statt
   dvh-Grid mit overflow:hidden. Browser = PWA = identisch.
   Überschreibt ALLE alten grid-template-rows-Überschreibungen.
   ═══════════════════════════════════════════════════════ */

/* Seite scrollt natürlich — kein Quetschen in einen festen Viewport mehr */
.courseHomeBg,
.courseHomeBg.thirtyCourseHome,
.courseHomeBg.sevenCourseHome{
  display:flex!important;
  flex-direction:column!important;
  height:auto!important;
  min-height:100dvh!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Hero: feste, geräteunabhängige Höhe */
.courseHomeBg .courseHero{
  height:clamp(272px,40vh,392px)!important;
  min-height:0!important;
  max-height:none!important;
  flex:0 0 auto!important;
  background-size:cover!important;
}

/* Control-Frame: einfacher Flex-Stapel statt dvh-Grid (hohe Spezifität, überschreibt alle Alt-Regeln) */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame,
.courseHomeBg.sevenCourseHome .dashboardControlFrame,
.courseHomeBg .dashboardControlFrame{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  flex:0 0 auto!important;
  grid-template-rows:none!important;
  grid-template-columns:none!important;
  margin:0 14px calc(env(safe-area-inset-bottom,0px) + 16px)!important;
  padding:14px!important;
  border-radius:20px!important;
  border:1px solid rgba(212,176,86,.50)!important;
  background:linear-gradient(180deg,rgba(7,7,6,.42) 0%,rgba(5,5,5,.64) 48%,rgba(2,2,2,.90) 100%)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.05) inset,0 0 26px rgba(203,165,76,.14),0 0 60px rgba(203,165,76,.07),0 20px 44px rgba(0,0,0,.55)!important;
}

/* Obere Reihe — 30-Tage: zwei Kacheln nebeneinander */
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:11px!important;
  margin:0!important;padding:0!important;
  height:auto!important;min-height:0!important;
}
.courseHomeBg.thirtyCourseHome .dashboardControlFrame .pathGrid .pathImageBtn{
  height:150px!important;min-height:150px!important;max-height:150px!important;
  border-radius:14px!important;
  display:block!important;position:relative!important;overflow:hidden!important;
}

/* Obere Reihe — 7-Tage: KURS-STARTEN-Card */
.courseHomeBg.sevenCourseHome .dashboardControlFrame .sevenHomeActions{
  margin:0!important;padding:0!important;height:auto!important;
}
.courseHomeBg.sevenCourseHome .dashboardControlFrame .sevenHomeActions .choiceCard{
  height:128px!important;min-height:128px!important;max-height:128px!important;
  border-radius:14px!important;width:100%!important;
}

/* Utility-Grid: sauberes 2×2 (beide Kurse) */
.courseHomeBg .dashboardControlFrame .premiumUtilityGridFour{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:auto auto!important;
  gap:11px!important;
  margin:0!important;padding:0!important;
  height:auto!important;min-height:0!important;
}
.courseHomeBg .dashboardControlFrame .premiumUtilityGridFour .premiumUtilityTile{
  height:108px!important;min-height:108px!important;max-height:108px!important;
  aspect-ratio:auto!important;
  display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;
  padding:10px 8px!important;border-radius:14px!important;
}
.courseHomeBg .dashboardControlFrame .premiumUtilityGridFour .premiumTileIcon{
  width:34px!important;height:34px!important;margin:0 0 10px!important;flex:0 0 auto!important;
}
.courseHomeBg .dashboardControlFrame .premiumUtilityGridFour .premiumUtilityTile span{
  font-size:11.5px!important;letter-spacing:.08em!important;text-align:center!important;line-height:1.15!important;
}

/* Divider */
.courseHomeBg .dashboardControlFrame .dashboardFrameDivider{
  width:100%!important;height:1px!important;margin:2px 0!important;
  background:linear-gradient(90deg,transparent,rgba(207,170,82,.30) 22%,rgba(207,170,82,.30) 78%,transparent)!important;
  flex:0 0 auto!important;
}
.courseHomeBg .dashboardControlFrame .dashboardFrameDividerDatabase{opacity:.6!important;margin-top:4px!important;}

/* DATENBANK-Button */
.courseHomeBg .dashboardControlFrame .journalDatabaseBtn,
.courseHomeBg .dashboardControlFrame .thirtyDatabaseBottom,
.courseHomeBg .dashboardControlFrame .sevenDatabaseBottom{
  height:76px!important;min-height:76px!important;max-height:76px!important;
  margin:0!important;border-radius:14px!important;flex:0 0 auto!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}

/* Hero-Titelblock (beide) sauber */
.courseHomeBg .courseHeroContent{padding-bottom:18px!important;}

/* Sehr kleine Höhen: Hero etwas kompakter, sonst unverändert (Layout bleibt durch Scroll robust) */
@media(max-height:680px){
  .courseHomeBg .courseHero{height:clamp(220px,34vh,300px)!important;}
}

/* ═══════════════════════════════════════════════════════
   v7.0 — NEUES PREMIUM DASHBOARD (Bento) + Performance
   ═══════════════════════════════════════════════════════ */
.rdDashPage{
  display:flex!important;flex-direction:column!important;
  min-height:100dvh!important;height:auto!important;
  overflow-x:hidden!important;overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  background:#070707!important;
  padding:0 0 calc(env(safe-area-inset-bottom,0px) + 18px)!important;
}
.rdDashHead{flex:0 0 auto;text-align:center;padding:calc(env(safe-area-inset-top,0px) + 60px) 18px 14px;}
.rdDashHead .rdDashKicker{font-family:var(--font-display,'Oswald',sans-serif);font-size:11px;letter-spacing:.32em;color:var(--gold,#e0bd66);text-transform:uppercase;}
.rdDashHead .rdDashTitle{font-family:var(--font-display,'Oswald',sans-serif);font-weight:700;font-size:clamp(26px,7.4vw,34px);letter-spacing:.02em;line-height:1;margin:3px 0 0;color:#fff;text-transform:uppercase;}
.rdDashHead .rdDashTitleLine{width:64px;height:2px;margin:11px auto 0;background:linear-gradient(90deg,transparent,var(--gold,#e0bd66),transparent);border-radius:2px;}

.rdDashStack{flex:1;display:flex;flex-direction:column;gap:11px;padding:2px 14px 0;}

/* gemeinsame Kachel-Basis */
.rdDashStack button{position:relative;overflow:hidden;border:1px solid rgba(224,189,102,.26);border-radius:16px;
  background-size:cover;background-position:center;cursor:pointer;color:#fff;text-align:left;font-family:inherit;
  box-shadow:0 0 16px rgba(203,165,76,.09),0 12px 26px rgba(0,0,0,.5);transition:transform .14s ease,border-color .14s ease;}
.rdDashStack button:active{transform:scale(.985);border-color:rgba(224,189,102,.55);}
.rdDashStack button::after{content:'';position:absolute;inset:0;z-index:1;}
.rdDashStack button>*{position:relative;z-index:2;}
.rdDashStack .rdDashIc svg,.rdDashKursIc svg,.rdDashActionIc svg,.rdDashMiniIc svg,.rdDashDbIc svg{stroke:var(--gold,#e0bd66);}

/* 7-Tage Streifen (thirty) */
.rdDashKurs{display:flex;align-items:center;gap:14px;min-height:84px;padding:0 18px;border-color:rgba(224,189,102,.5)!important;}
.rdDashKurs::after{background:linear-gradient(105deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.5) 56%,rgba(0,0,0,.2) 100%);}
.rdDashKursIc{flex:0 0 auto;}.rdDashKursIc svg{width:26px;height:26px;fill:none;stroke-width:2;}
.rdDashKursName{flex:1;font-family:var(--font-display,'Oswald',sans-serif);font-weight:600;font-size:17px;letter-spacing:.04em;text-transform:uppercase;}
.rdDashKursProg{flex:0 0 auto;text-align:right;}
.rdDashKursProg b{font-family:var(--font-display,'Oswald',sans-serif);font-size:17px;color:var(--gold,#e0bd66);}
.rdDashKursProg i{display:block;width:62px;height:4px;border-radius:3px;background:rgba(255,255,255,.16);margin-top:5px;overflow:hidden;}
.rdDashKursProg i s{display:block;height:100%;background:linear-gradient(90deg,#e0bd66,#f0d27e);}

/* Coach-Block: Foto-Kachel + Info */
.rdDashCoach{display:flex;align-items:stretch;min-height:128px;border-color:rgba(224,189,102,.5)!important;background:linear-gradient(160deg,#1b1710,#0a0a0a)!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.06) inset,0 0 26px rgba(203,165,76,.18),0 16px 36px rgba(0,0,0,.6)!important;}
.rdDashCoach::after{display:none;}
.rdDashCoachPhoto{flex:0 0 120px;background-size:cover;background-position:center 18%;border-right:1px solid rgba(224,189,102,.26);position:relative;}
.rdDashCoach.isLocked .rdDashCoachPhoto{filter:grayscale(.6) brightness(.5);}
.rdDashLock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.rdDashLock svg{width:30px;height:30px;stroke:var(--gold,#e0bd66);fill:none;}
.rdDashCoachInfo{flex:1;padding:15px 18px;display:flex;flex-direction:column;justify-content:center;}
.rdDashCoachLvl{display:flex;align-items:center;gap:8px;margin-bottom:7px;}
.rdDashCoachLvl b{font-family:var(--font-display,'Oswald',sans-serif);font-size:12px;letter-spacing:.08em;color:var(--gold,#e0bd66);}
.rdDashCoachLvl i{flex:1;max-width:96px;height:4px;border-radius:3px;background:rgba(255,255,255,.16);overflow:hidden;}
.rdDashCoachLvl i s{display:block;height:100%;background:linear-gradient(90deg,#e0bd66,#f0d27e);}
.rdDashCoachTitle{font-family:var(--font-display,'Oswald',sans-serif);font-weight:700;font-size:23px;letter-spacing:.02em;line-height:1;color:#fff;}
.rdDashCoachDay{font-size:12px;color:rgba(255,255,255,.62);margin:4px 0 12px;}
.rdDashCoachCta{align-self:flex-start;font-family:var(--font-display,'Oswald',sans-serif);font-size:12.5px;letter-spacing:.07em;color:#1a1408;background:linear-gradient(180deg,#f0d27e,#e0bd66);padding:10px 20px;border-radius:30px;font-weight:600;}
.rdDashCoach.isLocked .rdDashCoachCta{background:rgba(224,189,102,.16);color:var(--gold,#e0bd66);border:1px solid rgba(224,189,102,.4);}

/* 7-Tage Großblock (seven) — Foto vollflächig */
.rdDashSevenBig{min-height:178px;align-items:flex-end;background:none!important;border-color:rgba(224,189,102,.5)!important;}
.rdDashSevenBig::after{display:block;background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.5) 52%,rgba(0,0,0,.9) 100%);}
.rdDashSevenBig .rdDashCoachInfo{padding:18px;}
.rdDashSevenBig .rdDashCoachTitle{font-size:25px;}

/* Action Längs-Button */
.rdDashAction{display:flex;align-items:center;justify-content:center;gap:13px;min-height:68px;border-color:rgba(224,189,102,.5)!important;}
.rdDashAction::after{background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.8));}
.rdDashActionIc svg{width:26px;height:26px;fill:none;stroke-width:2;}
.rdDashActionName{font-family:var(--font-display,'Oswald',sans-serif);font-weight:600;font-size:18px;letter-spacing:.06em;text-transform:uppercase;}

/* 3 kleine */
.rdDashMiniRow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:11px;}
.rdDashMini{min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:14px 8px 13px;text-align:center;}
.rdDashMini::after{background:linear-gradient(180deg,rgba(0,0,0,.32) 0%,rgba(0,0,0,.55) 52%,rgba(0,0,0,.9) 100%);}
.rdDashMiniIc{position:absolute;top:14px;left:0;right:0;z-index:2;display:flex;justify-content:center;}
.rdDashMiniIc svg{width:30px;height:30px;fill:none;stroke-width:2;}
.rdDashMiniName{font-family:var(--font-display,'Oswald',sans-serif);font-weight:600;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;}

/* Datenbank flacher Balken */
.rdDashDb{display:flex;align-items:center;justify-content:center;gap:11px;min-height:54px;border-color:rgba(224,189,102,.5)!important;}
.rdDashDb::after{background:linear-gradient(180deg,rgba(0,0,0,.48),rgba(0,0,0,.82));}
.rdDashDbIc svg{width:22px;height:22px;fill:none;stroke-width:2;}
.rdDashDbName{font-family:var(--font-display,'Oswald',sans-serif);font-weight:600;font-size:15px;letter-spacing:.06em;text-transform:uppercase;}

/* Performance-Bereich: Coach-Avatar + Fokus-Karte */
.rdMasterGreetRow{display:flex;align-items:center;gap:14px;}
.rdMasterAvatar{flex:0 0 auto;width:60px;height:60px;border-radius:17px;background-size:cover;background-position:center 16%;
  border:1px solid rgba(224,189,102,.5);box-shadow:0 0 16px rgba(203,165,76,.18);}
.rdMasterGreetRow .rdMasterGreeting{flex:1;min-width:0;}
.rdMasterFocusCard{margin:0 16px 12px;padding:14px 17px;border:1px solid rgba(224,189,102,.26);border-radius:16px;
  background:linear-gradient(160deg,rgba(24,21,15,.9),rgba(9,9,9,.95));box-shadow:0 10px 24px rgba(0,0,0,.4);}
.rdMasterFocusLabel{font-family:var(--font-display,'Oswald',sans-serif);font-size:10px;letter-spacing:.18em;color:var(--gold,#e0bd66);margin-bottom:7px;}
.rdMasterFocusCard p{font-size:14px;color:rgba(255,255,255,.82);line-height:1.4;padding:0;margin:0;}

/* ═══════════════════════════════════════════════════════
   END v7.0 DASHBOARD
   ═══════════════════════════════════════════════════════ */

/* ============================================================================
   RD FINAL POLISH 2026-06-08
   Root fixes from QA screenshots:
   - Dashboard felt too heavy: typography and icon strokes reduced at source.
   - Header title wrapped too dominantly: smaller single-line treatment.
   - Course dashboard lost premium image atmosphere: restored page background.
   - Mini action tiles had optical imbalance: icon/text centered as a pair.
   - Praxis dashboard was pushed down by focus card: markup removed in app.js;
     spacing tightened here for the remaining sections.
   ============================================================================ */

.rdDashPage{
  background:
    linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.78) 36%,#050505 74%),
    url('assets/img/dashboard-samurai-bg.jpeg') center top / cover no-repeat!important;
}
.rdDashHead{padding-top:calc(env(safe-area-inset-top,0px) + 56px)!important;padding-bottom:12px!important;}
.rdDashHead .rdDashKicker{font-weight:500!important;font-size:10.5px!important;letter-spacing:.30em!important;}
.rdDashHead .rdDashTitle{
  font-weight:600!important;
  font-size:clamp(22px,6.1vw,29px)!important;
  letter-spacing:.012em!important;
  line-height:.98!important;
  white-space:nowrap!important;
}
.rdDashTitleLine{margin-top:10px!important;opacity:.78!important;}

.rdDashKursName,
.rdDashCoachTitle,
.rdDashActionName,
.rdDashMiniName,
.rdDashDbName,
.rdDashCoachCta,
.rdDashKursProg b,
.rdDashCoachLvl b{
  font-weight:500!important;
}
.rdDashKursName{font-size:15.7px!important;letter-spacing:.035em!important;}
.rdDashCoachTitle{font-size:21.5px!important;letter-spacing:.012em!important;}
.rdDashSevenBig .rdDashCoachTitle{font-size:23px!important;}
.rdDashActionName{font-size:16.4px!important;letter-spacing:.045em!important;}
.rdDashMiniName{font-size:11.5px!important;letter-spacing:.04em!important;line-height:1!important;}
.rdDashDbName{font-size:14px!important;letter-spacing:.045em!important;}
.rdDashCoachCta{font-size:11.6px!important;letter-spacing:.055em!important;}

.rdDashKursIc svg,
.rdDashActionIc svg,
.rdDashMiniIc svg,
.rdDashDbIc svg,
.rdDashLock svg{
  stroke-width:1.55!important;
}
.rdDashKursIc svg{width:23px!important;height:23px!important;}
.rdDashActionIc svg{width:23px!important;height:23px!important;}
.rdDashDbIc svg{width:20px!important;height:20px!important;}

.rdDashMini{
  justify-content:center!important;
  gap:10px!important;
  padding:12px 8px!important;
  min-height:101px!important;
}
.rdDashMiniIc{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:31px!important;
}
.rdDashMiniIc svg{width:27px!important;height:27px!important;}
.rdDashMiniName{display:block!important;text-align:center!important;}
.rdDashAction{min-height:64px!important;gap:11px!important;}
.rdDashDb{min-height:52px!important;gap:10px!important;}
.rdDashCoachPhoto{background-position:center center!important;}

.rdMasterPraxisPage .rdMasterFocusCard,
.rdPraxisFinal22 .rdMasterFocusCard{display:none!important;}
.rdPraxisFinal22 .rdMasterHero{margin-bottom:10px!important;}
.rdPraxisFinal22 .rdMasterSoloStartBtn{margin-top:0!important;}
.rdPraxisFinal22 .rdMasterProgressCard{margin-top:10px!important;}

/* ============================================================================
   RD TARGETED PATCH 2026-06-08 · Course dashboards vertical drop only
   Request: On both course dashboards, move headline/buttons/cards down so the
   samurai header image has more visual breathing room. No typography, assets,
   routes or Praxis dashboard changes.
   ============================================================================ */
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead{
  padding-top:calc(env(safe-area-inset-top,0px) + 82px)!important;
  padding-bottom:18px!important;
}
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashStack{
  padding-top:10px!important;
}
@media(max-height:760px){
  .rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead{
    padding-top:calc(env(safe-area-inset-top,0px) + 72px)!important;
    padding-bottom:14px!important;
  }
  .rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashStack{
    padding-top:6px!important;
  }
}

/* ============================================================================
   RD TARGETED PATCH 2026-06-08 · Course dashboards header clearance v2
   Only both course dashboards: move the entire dashboard content further down
   so the header image stays visibly free above the first cards. No size/asset changes.
   ============================================================================ */
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead{
  padding-top:calc(env(safe-area-inset-top,0px) + 128px)!important;
  padding-bottom:26px!important;
}
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashStack{
  padding-top:22px!important;
}
@media(max-height:760px){
  .rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead{
    padding-top:calc(env(safe-area-inset-top,0px) + 112px)!important;
    padding-bottom:22px!important;
  }
  .rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashStack{
    padding-top:18px!important;
  }
}

/* ============================================================================
   RD TARGETED PATCH 2026-06-08 · 7-day micro downshift + clean backgrounds
   User request: 30-day position stays exactly as approved. Only 7-day course
   dashboard moves a little further down. Remove dark overlay from dashboard
   background imagery so supplied images show cleanly. No routing/function changes.
   ============================================================================ */
.rdDashPage{
  background:url('assets/img/dashboard-samurai-bg.jpeg') center top / cover no-repeat!important;
}
.rdDashPage.rdDashSeven .rdDashHead{
  padding-top:calc(env(safe-area-inset-top,0px) + 156px)!important;
  padding-bottom:28px!important;
}
.rdDashPage.rdDashSeven .rdDashStack{
  padding-top:26px!important;
}
.rdDashPage .rdDashStack button::after,
.rdDashPage .rdDashKurs::after,
.rdDashPage .rdDashSevenBig::after,
.rdDashPage .rdDashAction::after,
.rdDashPage .rdDashMini::after,
.rdDashPage .rdDashDb::after{
  background:none!important;
  display:none!important;
}
@media(max-height:760px){
  .rdDashPage.rdDashSeven .rdDashHead{
    padding-top:calc(env(safe-area-inset-top,0px) + 138px)!important;
    padding-bottom:24px!important;
  }
  .rdDashPage.rdDashSeven .rdDashStack{
    padding-top:22px!important;
  }
}

/* === RD FINAL NAV POSITION + SLIM ICONS · 2026-06-08 ===
   Targeted only: global back/home/menu navigation.
   - Moves nav higher on every screen.
   - Makes icons slightly slimmer.
   - Keeps one identical style everywhere.
   - Supports scroll hide/show via rdNavHidden class. */
.topbar.rdGlobalTopbar,
.mainHomeBg .topbar.rdGlobalTopbar,
.courseHomeBg .topbar.rdGlobalTopbar,
.aiPraxisScreen .topbar.rdGlobalTopbar,
.rdPraxisDashboard .topbar.rdGlobalTopbar,
.praxisDashboardOnly .topbar.rdGlobalTopbar,
.rdPraxisToolPage .topbar.rdGlobalTopbar,
.moduleDashboardScreen .topbar.rdGlobalTopbar,
.goalScreen .topbar.rdGlobalTopbar,
.introArticleScreen .topbar.rdGlobalTopbar,
.introVideoScreen .topbar.rdGlobalTopbar,
.dayIntroScreen .topbar.rdGlobalTopbar,
.lockStartScreen .topbar.rdGlobalTopbar,
.dayCourseTextScreen .topbar.rdGlobalTopbar,
.sevenCourseTextScreen .topbar.rdGlobalTopbar,
.dayCompleteScreen .topbar.rdGlobalTopbar,
.praxisCoachPage .topbar.rdGlobalTopbar,
.rdCoachVFinalPage .topbar.rdGlobalTopbar,
.rdCleanPraxisPage .topbar.rdGlobalTopbar,
main.rdCleanPraxisPage .topbar.rdGlobalTopbar{
  top:calc(env(safe-area-inset-top,0px) + 4px)!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  padding-left:max(18px,calc(env(safe-area-inset-left,0px) + 18px))!important;
  padding-right:max(18px,calc(env(safe-area-inset-right,0px) + 18px))!important;
  transition:opacity .24s ease, transform .24s ease!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg{
  width:21px!important;
  height:21px!important;
  filter:drop-shadow(0 1px 4px rgba(0,0,0,.60))!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg path{
  stroke-width:1.55!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:first-child svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn:first-child svg path{
  stroke-width:1.75!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:nth-child(2) svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn:nth-child(2) svg path{
  stroke-width:1.45!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:nth-child(3) svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn:nth-child(3) svg path{
  stroke-width:1.55!important;
}
.topbar.rdGlobalTopbar.rdNavHidden{
  opacity:0!important;
  transform:translateY(-26px)!important;
  pointer-events:none!important;
}
.topbar.rdGlobalTopbar.rdNavVisible{
  opacity:1!important;
  transform:translateY(0)!important;
}

/* ============================================================================
   RD PRECISION PATCH 2026-06-08 · Nav / Database / Course Dashboards
   Source-level targeted changes from latest QA screenshots:
   1) Global nav moved a little higher, same slim style everywhere.
   2) Database header + folder stack moved down; background is fixed via pseudo
      layer so opening dropdowns cannot rescale/reframe the image.
   3) Course dashboard header image gets only a soft lower fade, no top overlay.
   4) Only 7-day dashboard content moves further down; 30-day position stays.
   5) 30-day coach tile photo made visually square; CTA text comes from app.js.
   ============================================================================ */

/* Global nav: one notch higher than previous build, still safe-area aware */
.topbar.rdGlobalTopbar,
.mainHomeBg .topbar.rdGlobalTopbar,
.courseHomeBg .topbar.rdGlobalTopbar,
.aiPraxisScreen .topbar.rdGlobalTopbar,
.rdPraxisDashboard .topbar.rdGlobalTopbar,
.praxisDashboardOnly .topbar.rdGlobalTopbar,
.rdPraxisToolPage .topbar.rdGlobalTopbar,
.moduleDashboardScreen .topbar.rdGlobalTopbar,
.goalScreen .topbar.rdGlobalTopbar,
.databaseScreen .topbar.rdGlobalTopbar,
.introArticleScreen .topbar.rdGlobalTopbar,
.introVideoScreen .topbar.rdGlobalTopbar,
.dayIntroScreen .topbar.rdGlobalTopbar,
.lockStartScreen .topbar.rdGlobalTopbar,
.dayCourseTextScreen .topbar.rdGlobalTopbar,
.sevenCourseTextScreen .topbar.rdGlobalTopbar,
.dayCompleteScreen .topbar.rdGlobalTopbar,
.praxisCoachPage .topbar.rdGlobalTopbar,
.rdCoachVFinalPage .topbar.rdGlobalTopbar,
.rdCleanPraxisPage .topbar.rdGlobalTopbar,
main.rdCleanPraxisPage .topbar.rdGlobalTopbar{
  top:calc(env(safe-area-inset-top,0px) - 4px)!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg{
  width:20px!important;
  height:20px!important;
}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn svg path{stroke-width:1.45!important;}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:first-child svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn:first-child svg path{stroke-width:1.62!important;}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:nth-child(2) svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn:nth-child(2) svg path{stroke-width:1.34!important;}
.topbar.rdGlobalTopbar .iconBtn.rdTopbarBtn:nth-child(3) svg path,
.topbar.rdGlobalTopbar button.iconBtn.rdTopbarBtn:nth-child(3) svg path{stroke-width:1.45!important;}

/* Database: stable background independent from dropdown height + content lower */
.databaseScreen{
  position:relative!important;
  isolation:isolate!important;
  background:#040404!important;
  background-image:none!important;
  padding-top:calc(var(--safe-top, 0px) + 142px)!important;
  padding-bottom:120px!important;
}
.databaseScreen::before{
  content:'';
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:url('assets/img/datenbank.jpg') center top/cover no-repeat!important;
  transform:translateZ(0);
  will-change:transform;
}
.databaseScreen::after{
  content:'';
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.18) 48%,rgba(0,0,0,.72) 100%)!important;
}
.databaseScreen .databaseHeaderBlock{margin-bottom:42px!important;}
.databaseScreen .databaseFolder{margin:18px auto!important;}
@media(max-width:430px){
  .databaseScreen{
    padding-top:calc(var(--safe-top, 0px) + 136px)!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .databaseScreen .databaseHeaderBlock{margin-bottom:36px!important;}
  .databaseScreen .databaseFolder{margin:17px auto!important;}
}

/* Course dashboards: keep image clean at top, add only lower fade for readability */
.rdDashPage{
  position:relative!important;
  isolation:isolate!important;
  background:#050505!important;
  background-image:none!important;
}
.rdDashPage::before{
  content:'';
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:url('assets/img/dashboard-samurai-bg.jpeg') center top/cover no-repeat!important;
}
.rdDashPage::after{
  content:'';
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 42%,rgba(0,0,0,.34) 72%,rgba(0,0,0,.88) 100%)!important;
}

/* Only 7-day dashboard: move all visible content further down. 30-day remains untouched. */
.rdDashPage.rdDashSeven .rdDashHead{
  padding-top:calc(env(safe-area-inset-top,0px) + 182px)!important;
  padding-bottom:30px!important;
}
.rdDashPage.rdDashSeven .rdDashStack{padding-top:32px!important;}
@media(max-height:760px){
  .rdDashPage.rdDashSeven .rdDashHead{
    padding-top:calc(env(safe-area-inset-top,0px) + 160px)!important;
    padding-bottom:26px!important;
  }
  .rdDashPage.rdDashSeven .rdDashStack{padding-top:26px!important;}
}

/* 30-day coach card: make photo area optically square instead of narrow rectangle */
.rdDashThirty .rdDashCoach{min-height:132px!important;}
.rdDashThirty .rdDashCoachPhoto{
  flex:0 0 132px!important;
  width:132px!important;
  min-height:132px!important;
  aspect-ratio:1/1!important;
  background-size:cover!important;
  background-position:center center!important;
}
@media(max-width:390px){
  .rdDashThirty .rdDashCoach{min-height:124px!important;}
  .rdDashThirty .rdDashCoachPhoto{flex-basis:124px!important;width:124px!important;min-height:124px!important;}
}

/* ============================================================================
   RD TARGETED PATCH 2026-06-08 · Dashboard header balance + coach chat height
   ONLY requested fixes:
   - 7/30 dashboard title block a touch higher and slightly less heavy.
   - Dashboard background gets a soft full-image dim layer, strongest around the
     sword/middle, so the image is less dominant but still visible.
   - Coach chat header block starts closer under the nav, giving chat more height.
   ============================================================================ */

/* Dashboard title: visual move only, so cards/buttons keep their approved layout. */
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead{
  transform:translateY(-14px)!important;
}
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead .rdDashTitle{
  font-weight:640!important;
  letter-spacing:.012em!important;
  text-shadow:0 2px 16px rgba(0,0,0,.78)!important;
}
.rdDashPage:not(.rdMasterPraxisPage):not(.rdPraxisFinal22) .rdDashHead .rdDashKicker{
  font-weight:480!important;
  text-shadow:0 2px 12px rgba(0,0,0,.82)!important;
}

/* Dashboard image: stable fixed background with a controlled dim layer over the
   whole image, strongest through the sword/title transition zone. */
.rdDashPage::after{
  background:
    linear-gradient(180deg,
      rgba(0,0,0,.10) 0%,
      rgba(0,0,0,.18) 24%,
      rgba(0,0,0,.36) 42%,
      rgba(0,0,0,.50) 58%,
      rgba(0,0,0,.70) 78%,
      rgba(0,0,0,.92) 100%)!important;
}

/* Coach chat page: reduce the dead black gap under the global nav and pull the
   coach header upward. The topbar itself stays unchanged. */
.praxisCoachPage .rdCoachVFinal{
  padding-top:calc(env(safe-area-inset-top,0px) + 30px)!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)),
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show),
.praxisCoachPage .rdCoachTop{
  margin-top:0!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)){
  min-height:76px!important;
  padding-top:7px!important;
  padding-bottom:8px!important;
}
.praxisCoachPage .rdCoachTop:has(.rdTopDayAction.show){
  min-height:68px!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) img{
  width:48px!important;
  height:48px!important;
  border-radius:16px!important;
}
.praxisCoachPage .rdCoachTop:not(:has(.rdTopDayAction.show)) .rdCoachTitleLine h1{
  font-size:clamp(26px,7.0vw,34px)!important;
}
@media(max-height:760px){
  .praxisCoachPage .rdCoachVFinal{
    padding-top:calc(env(safe-area-inset-top,0px) + 26px)!important;
  }
}

/* ============================================================================
   RD TARGETED PATCH 2026-06-08 · Profile, language, coach photo inset
   ONLY requested fixes:
   - Profile: remove setup intro visually, start cleanly under nav, only profile fields.
   - Language: no SETUP badge; flags/names centered inside equal cards.
   - 30-day dashboard: coach photo sits inside its own inset square button/card.
   ============================================================================ */

/* Profile starts closer under the global nav after removing SETUP + intro copy. */
.profileSetupScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 66px)!important;
}
.profileSetupScreen>h1{
  margin-top:0!important;
  margin-bottom:18px!important;
}
.profileSetupScreen>.profileCard.card{
  margin-top:0!important;
}
.profileSetupScreen .profileCard label{
  margin-top:16px!important;
}
.profileSetupScreen .profileCard label:first-child{
  margin-top:0!important;
}
.profileSetupScreen .profileFixedInfo span{
  color:rgba(240,237,232,.72)!important;
}

/* Language screen: badge removed; keep the two language cards optically centered. */
.rdLanguageScreen .rdLangHead{
  transform:translateY(-4px)!important;
}
.rdLanguageScreen .rdLangHead h1{
  margin-top:0!important;
}
.rdLanguageScreen .rdLangCards{
  align-items:stretch!important;
}
.rdLanguageScreen .rdLangCard{
  min-height:146px!important;
  padding-top:28px!important;
  padding-bottom:28px!important;
  justify-content:center!important;
  text-align:center!important;
}
.rdLanguageScreen .rdLangFlag,
.rdLanguageScreen .rdLangName{
  display:block!important;
  width:100%!important;
  text-align:center!important;
}

/* Coach dashboard photo: inset square photo-card inside the main coach button. */
.rdDashThirty .rdDashCoach{
  align-items:center!important;
  padding:10px 12px!important;
  gap:12px!important;
  min-height:138px!important;
}
.rdDashCoachPhotoShell{
  flex:0 0 112px!important;
  width:112px!important;
  height:112px!important;
  padding:6px!important;
  border-radius:18px!important;
  border:1px solid rgba(224,189,102,.32)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(0,0,0,.38))!important;
  box-shadow:0 0 0 1px rgba(255,226,140,.04) inset,0 10px 22px rgba(0,0,0,.42)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.rdDashCoachPhotoShell .rdDashCoachPhoto,
.rdDashThirty .rdDashCoachPhotoShell .rdDashCoachPhoto{
  flex:0 0 auto!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  border-radius:13px!important;
  border-right:0!important;
  background-size:cover!important;
  background-position:center center!important;
  position:relative!important;
}
.rdDashThirty .rdDashCoachInfo{
  padding:0 4px 0 0!important;
  min-width:0!important;
}
.rdDashThirty .rdDashCoachLvl{margin-bottom:7px!important;}
.rdDashThirty .rdDashCoachDay{margin-bottom:12px!important;}
@media(max-width:390px){
  .rdDashThirty .rdDashCoach{padding:9px 10px!important;gap:10px!important;min-height:128px!important;}
  .rdDashCoachPhotoShell{flex-basis:104px!important;width:104px!important;height:104px!important;padding:5px!important;border-radius:16px!important;}
  .rdDashCoachPhotoShell .rdDashCoachPhoto{border-radius:12px!important;}
}


/* ============================================================================
   RD VERIFIED PATCH · Profile/Language visible fix + cache-bust reinforcement
   Purpose: ensure the setup pill/text is gone even under aggressive browser/CDN
   cache and pull the profile/language content into the approved top position.
   ============================================================================ */
.profileSetupScreen > .tag,
.rdLanguageScreen .rdLangHead .tag,
.rdLanguageScreen .tag.cleanTag{
  display:none!important;
}
.profileSetupScreen{
  padding-top:calc(env(safe-area-inset-top,0px) + 64px)!important;
}
.profileSetupScreen > h1{
  margin-top:0!important;
  margin-bottom:22px!important;
}
.profileSetupScreen > p{
  display:none!important;
}
.profileSetupScreen .profileCard{
  margin-top:0!important;
}
.rdLanguageScreen .rdLangHead{
  margin-top:0!important;
}
.rdLanguageScreen .rdLangCards{
  justify-items:center!important;
  align-items:center!important;
}
.rdLanguageScreen .rdLangCard{
  width:100%!important;
  text-align:center!important;
}
.rdLanguageScreen .rdLangFlag,
.rdLanguageScreen .rdLangName{
  display:block!important;
  width:100%!important;
  text-align:center!important;
}
