:root {
    --pbb-luxe-night: #050505;
    --pbb-luxe-plum: #111111;
    --pbb-luxe-violet: #2a2a2a;
    --pbb-luxe-gold: #d8b25e;
    --pbb-luxe-gold-light: #f5d98a;
    --pbb-luxe-cream: #f8f7f2;
    --pbb-luxe-soft: #efede7;
    --pbb-luxe-ink: #0c0c0c;
    --pbb-luxe-muted: #77716a;
    --pbb-luxe-border: rgba(245, 217, 138, 0.16);
    --pbb-luxe-shadow: 0 24px 70px rgba(5, 2, 10, 0.42);
    --pbb-luxe-card: rgba(12, 12, 12, 0.92);
    --pbb-luxe-card-2: rgba(28, 28, 28, 0.94);
    --pbb-widget-glass: rgba(5, 5, 5, 0.86);
    --pbb-widget-glass-soft: rgba(255, 255, 255, 0.1);
    --pbb-widget-glass-faint: rgba(255, 255, 255, 0.06);
    --pbb-widget-glass-border: rgba(245, 217, 138, 0.18);
    --pbb-widget-green: #d8b25e;
    --pbb-widget-green-soft: rgba(216, 178, 94, 0.18);
}

/* Weekly meal evolution, Home. Uses the current Balance obsidian/cream/gold system. */
.weekly-meal-evolution-home-card {
    margin: 0 25px 14px;
    padding: 1px;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(245, 217, 138, 0.92), rgba(216, 178, 94, 0.28) 48%, rgba(255, 255, 255, 0.14));
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
    overflow: hidden;
}

.weekly-meal-evolution-home-card[data-interactive="true"] {
    cursor: pointer;
}

.weekly-meal-evolution-home-card[data-interactive="true"]:focus-visible {
    outline: 3px solid #f5d98a;
    outline-offset: 3px;
}

.weekly-meal-evolution-home-card__inner {
    position: relative;
    overflow: hidden;
    padding: 18px;
    border-radius: 19px;
    color: #f8f7f2;
    -webkit-text-fill-color: #f8f7f2;
    background:
        radial-gradient(circle at 94% 0%, rgba(245, 217, 138, 0.2), transparent 34%),
        linear-gradient(145deg, rgba(20, 20, 20, 0.98), rgba(5, 5, 5, 0.98));
}

.weekly-meal-evolution-home-card__row {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.weekly-meal-evolution-home-card__icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    color: #111111;
    -webkit-text-fill-color: #111111;
    background: linear-gradient(135deg, #f5d98a, #b8892b);
    box-shadow: 0 8px 20px rgba(184, 137, 43, 0.25);
    font-size: 1.35rem;
}

.weekly-meal-evolution-home-card__content {
    min-width: 0;
    flex: 1;
}

.weekly-meal-evolution-home-card__eyebrow {
    margin-bottom: 5px;
    color: #f5d98a;
    -webkit-text-fill-color: #f5d98a;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 1.25px;
    text-transform: uppercase;
}

.weekly-meal-evolution-home-card__title {
    margin: 0 0 7px;
    color: #ffffff;
    -webkit-text-fill-color: #ffffff;
    font-size: 1.02rem;
    font-weight: 800;
    line-height: 1.25;
}

.weekly-meal-evolution-home-card__body {
    margin: 0;
    color: rgba(248, 247, 242, 0.78);
    -webkit-text-fill-color: rgba(248, 247, 242, 0.78);
    font-size: 0.82rem;
    line-height: 1.5;
}

.weekly-meal-evolution-home-card__action {
    width: 100%;
    margin-top: 14px;
    padding: 11px 14px;
    border: 1px solid rgba(245, 217, 138, 0.48);
    border-radius: 12px;
    color: #111111;
    -webkit-text-fill-color: #111111;
    background: linear-gradient(135deg, #f5d98a, #d8b25e);
    box-shadow: 0 8px 20px rgba(184, 137, 43, 0.18);
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    cursor: inherit;
    text-align: center;
    pointer-events: none;
}

.weekly-meal-evolution-home-card[data-state="generating"] .weekly-meal-evolution-home-card__action {
    cursor: wait;
    opacity: 0.72;
}

html[data-pbb-theme="light"] .weekly-meal-evolution-home-card {
    background: linear-gradient(135deg, #b8892b, rgba(184, 137, 43, 0.2) 55%, rgba(17, 17, 17, 0.12));
    box-shadow: 0 14px 32px rgba(57, 47, 31, 0.13);
}

html[data-pbb-theme="light"] .weekly-meal-evolution-home-card__inner {
    color: #151515;
    -webkit-text-fill-color: #151515;
    background:
        radial-gradient(circle at 94% 0%, rgba(228, 189, 85, 0.25), transparent 36%),
        linear-gradient(145deg, #ffffff, #f8f5ee);
}

html[data-pbb-theme="light"] .weekly-meal-evolution-home-card__eyebrow {
    color: #795719;
    -webkit-text-fill-color: #795719;
}

html[data-pbb-theme="light"] .weekly-meal-evolution-home-card__title {
    color: #151515;
    -webkit-text-fill-color: #151515;
}

html[data-pbb-theme="light"] .weekly-meal-evolution-home-card__body {
    color: #5f5a52;
    -webkit-text-fill-color: #5f5a52;
}

html[data-pbb-theme="light"] .weekly-meal-evolution-home-card[data-interactive="true"]:focus-visible {
    outline-color: #151515;
}

body {
    background:
        radial-gradient(circle at 18% -4%, rgba(216, 178, 94, 0.18), transparent 30%),
        radial-gradient(circle at 92% 4%, rgba(255, 255, 255, 0.06), transparent 34%),
        linear-gradient(180deg, #101010 0%, #050505 42%, #000000 100%) !important;
    color: var(--text-main);
}

.container,
#view-dashboard {
    background:
        radial-gradient(circle at 6% 12%, rgba(216, 178, 94, 0.12), transparent 28%),
        radial-gradient(circle at 92% 8%, rgba(255, 255, 255, 0.055), transparent 30%),
        linear-gradient(180deg, #101010 0%, #050505 48%, #000000 100%) !important;
}

.app-header,
.bottom-nav {
    border-color: rgba(245, 217, 138, 0.12) !important;
}

.app-header {
    background: rgba(15, 8, 28, 0.86) !important;
    color: var(--text-main) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
    box-shadow: 0 12px 34px rgba(5, 2, 10, 0.24) !important;
}

.app-header h1,
.app-header h2,
.app-header h3,
.app-logo {
    color: #fffaf2 !important;
}

.bottom-nav {
    background: rgba(12, 7, 22, 0.9) !important;
    box-shadow: 0 -14px 34px rgba(5, 2, 10, 0.5) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

.nav-item.active {
    color: var(--pbb-luxe-gold-light) !important;
}

.nav-item {
    color: rgba(248, 243, 255, 0.58) !important;
}

.coin-header-widget,
.streak-header-widget {
    box-shadow: 0 10px 24px rgba(5, 2, 10, 0.32) !important;
}

.app-view > div[style*="position: sticky"][style*="background: white"],
.app-view > div[style*="position:sticky"][style*="background:white"] {
    background: rgba(15, 8, 28, 0.88) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: 0 12px 34px rgba(5, 2, 10, 0.24) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

.app-view > div[style*="position: sticky"] h1,
.app-view > div[style*="position: sticky"] h2,
.app-view > div[style*="position: sticky"] h3 {
    color: #fffaf2 !important;
}

.header-msg-icon,
.profile-icon {
    background: rgba(255, 255, 255, 0.08) !important;
    color: rgba(248, 243, 255, 0.8) !important;
}

.modal-overlay,
.onboarding-overlay,
.completion-modal-overlay,
.adaptive-modal-overlay,
#guest-signup-modal,
#home-friends-modal,
#change-password-modal-overlay,
#health-connect-modal,
#weekly-goals-modal,
#share-referral-modal,
#store-review-modal,
#last-volume-popup,
.meal-breakdown-popup {
    background:
        radial-gradient(circle at 18% 10%, rgba(245, 217, 138, 0.18), transparent 28%),
        radial-gradient(circle at 82% 6%, rgba(108, 63, 157, 0.32), transparent 31%),
        linear-gradient(180deg, rgba(29, 15, 50, 0.78), rgba(18, 10, 34, 0.84)) !important;
    backdrop-filter: blur(12px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(118%) !important;
}

.modal-content,
.onboarding-modal,
.completion-modal,
.adaptive-modal,
#guest-signup-modal > div,
#change-password-modal-overlay > div,
#health-connect-modal > div {
    background: linear-gradient(180deg, #ffffff 0%, var(--pbb-luxe-cream) 100%) !important;
    border: 1px solid rgba(49, 31, 74, 0.12) !important;
    box-shadow: var(--pbb-luxe-shadow) !important;
    color: var(--pbb-luxe-ink) !important;
}

#share-referral-modal > div,
#store-review-modal > div,
#last-volume-popup > div,
.meal-breakdown-card {
    background: linear-gradient(180deg, #ffffff 0%, var(--pbb-luxe-cream) 100%) !important;
    border: 1px solid rgba(49, 31, 74, 0.12) !important;
    box-shadow: var(--pbb-luxe-shadow) !important;
    color: var(--pbb-luxe-ink) !important;
}

#home-friends-modal > div {
    background: linear-gradient(180deg, #ffffff 0%, var(--pbb-luxe-cream) 100%) !important;
    border: 1px solid rgba(49, 31, 74, 0.12) !important;
    border-bottom: 0 !important;
    box-shadow: 0 -24px 70px rgba(32, 16, 55, 0.28) !important;
}

.onboarding-header,
.wizard-header,
#weigh-in-modal .modal-content > div:first-child,
#health-connect-modal > div > div:first-child,
#store-review-modal > div > div > div:first-child {
    background:
        radial-gradient(circle at 84% 18%, rgba(245, 217, 138, 0.32), transparent 24%),
        linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-night) 58%, #120b24) !important;
    color: white !important;
}

#guest-signup-title,
.adaptive-modal-title,
.completion-modal h2,
.meal-breakdown-logged-label {
    color: var(--pbb-luxe-plum) !important;
}

#guest-mode-banner {
    background:
        radial-gradient(circle at 85% 20%, rgba(245, 217, 138, 0.28), transparent 22%),
        linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-violet) 58%, #1a0f2d) !important;
    box-shadow: 0 10px 30px rgba(32, 16, 55, 0.2) !important;
}

#guest-mode-banner button[onclick*="login"] {
    color: var(--pbb-luxe-plum) !important;
}

#home-friends-pill {
    background: rgba(24, 16, 36, 0.86) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    box-shadow: 0 16px 34px rgba(5, 2, 10, 0.32) !important;
    backdrop-filter: blur(14px) saturate(125%);
    -webkit-backdrop-filter: blur(14px) saturate(125%);
}

#home-friends-pill span:first-child {
    color: #fffaf2 !important;
}

#home-friends-pill-count {
    color: rgba(248, 243, 255, 0.68) !important;
}

#home-friends-pill > div:first-child {
    background: linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-gold)) !important;
    box-shadow: 0 10px 22px rgba(50, 26, 85, 0.2) !important;
}

#friends-referral-banner {
    background:
        radial-gradient(circle at 82% 14%, rgba(245, 217, 138, 0.28), transparent 24%),
        linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-night) 58%, #120b24) !important;
    box-shadow: 0 16px 34px rgba(32, 16, 55, 0.24) !important;
}

#friends-referral-banner button[onclick*="openShareReferralModal"] {
    color: var(--pbb-luxe-plum) !important;
}

#friends-referral-banner button[onclick*="openShareReferralModal"] svg {
    fill: var(--pbb-luxe-plum) !important;
}

#feed-post-incentive {
    background: linear-gradient(135deg, #fffaf2, #f8e7ba) !important;
    border-color: rgba(216, 178, 94, 0.42) !important;
}

#feed-post-incentive span:nth-child(2) {
    color: var(--pbb-luxe-plum) !important;
}

#daily-weigh-in-card,
#daily-weigh-in-done-card,
#weekly-progress-photo-card,
#weekly-progress-photo-done-card,
#mood-checkin-card,
#mood-checkin-done-card,
#fitness-diary-card,
#fitness-diary-done-card,
#daily-quiz-card,
#daily-quiz-done-card,
#daily-meal-tip-card,
#daily-workout-trend-card,
#home-challenges-empty,
#fitbit-performance-card {
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    box-shadow: 0 18px 38px rgba(5, 2, 10, 0.34) !important;
}

#daily-weigh-in-card,
#daily-weigh-in-done-card {
    background:
        radial-gradient(circle at 86% 18%, rgba(245, 217, 138, 0.24), transparent 24%),
        linear-gradient(135deg, #4a2575 0%, #33205d 56%, #201036 100%) !important;
}

#mood-checkin-card {
    background:
        radial-gradient(circle at 86% 12%, rgba(245, 217, 138, 0.2), transparent 25%),
        linear-gradient(135deg, #5a245e 0%, #6f2d6c 48%, #321a55 100%) !important;
}

#home-challenges-empty {
    background:
        radial-gradient(circle at 15% 18%, rgba(245, 217, 138, 0.22), transparent 28%),
        linear-gradient(135deg, #321a55 0%, #4a2575 56%, #211039 100%) !important;
}

#fitbit-performance-card {
    background:
        radial-gradient(circle at 82% 16%, rgba(245, 217, 138, 0.16), transparent 24%),
        linear-gradient(135deg, #22375a 0%, #321a55 58%, #1b102f 100%) !important;
}

#daily-weigh-in-card h3,
#daily-weigh-in-card p,
#daily-weigh-in-done-card,
#mood-checkin-card h3,
#mood-checkin-card p {
    color: white !important;
}

.calorie-widget-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.11), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    box-shadow: 0 22px 46px rgba(5, 2, 10, 0.42) !important;
    color: var(--text-main) !important;
}

.calorie-widget-title h3,
.calorie-current,
.macro-value,
.view-details-btn {
    color: #fffaf2 !important;
}

.calorie-widget-meta,
.nutrition-period-date,
.calorie-separator,
.calorie-goal,
.calorie-unit,
.macro-label {
    color: rgba(248, 243, 255, 0.66) !important;
}

.calorie-widget-meta strong {
    color: var(--pbb-luxe-gold-light) !important;
}

.nutrition-range-toggle {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
}

.nutrition-range-toggle button {
    color: rgba(248, 243, 255, 0.62) !important;
}

.nutrition-range-toggle button.active {
    background: rgba(255, 250, 242, 0.94) !important;
    color: var(--pbb-luxe-plum) !important;
    box-shadow: 0 10px 24px rgba(5, 2, 10, 0.24) !important;
}

.camera-btn-widget {
    background: linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-violet) 56%, var(--pbb-luxe-gold)) !important;
    box-shadow: 0 12px 24px rgba(5, 2, 10, 0.3) !important;
}

.progress-bar,
.progress-bar-small {
    background: rgba(255, 255, 255, 0.09) !important;
}

#today .card,
.card {
    background: var(--pbb-luxe-card) !important;
    border-color: rgba(245, 217, 138, 0.1) !important;
    color: var(--text-main) !important;
}

#view-meals,
#meals-content-container,
#calorie-tracker {
    background:
        radial-gradient(circle at 10% 6%, rgba(216, 178, 94, 0.1), transparent 27%),
        radial-gradient(circle at 92% 2%, rgba(74, 37, 117, 0.24), transparent 30%),
        linear-gradient(180deg, #150c24 0%, #0f081c 44%, #090512 100%) !important;
    color: var(--text-main) !important;
}

#view-meals .pill-btn,
.meal-icon-btn {
    background: rgba(24, 16, 36, 0.9) !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
    color: rgba(248, 243, 255, 0.82) !important;
    box-shadow: 0 12px 26px rgba(5, 2, 10, 0.34) !important;
}

#view-meals .pill-btn[style*="var(--accent-green)"],
#view-meals .pill-btn.active {
    background: linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-violet)) !important;
    color: white !important;
    box-shadow: 0 0 24px rgba(216, 178, 94, 0.18), 0 12px 26px rgba(5, 2, 10, 0.36) !important;
}

.calorie-tracker-summary,
.nutrition-score-card,
.streak-tracker-card,
.weekly-metrics-card,
.meal-journal-card,
.multi-week-card,
.meal-pattern-card,
#ai-meal-plan-container {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: 0 22px 46px rgba(5, 2, 10, 0.42) !important;
}

html[data-pbb-theme="dark"] #ai-plan-header {
    border-bottom-color: rgba(245, 217, 138, 0.12) !important;
}

html[data-pbb-theme="dark"] #ai-plan-meals-list .card-header {
    background: rgba(255, 255, 255, 0.055) !important;
    border-bottom: 1px solid rgba(245, 217, 138, 0.08) !important;
    color: var(--text-main) !important;
}

html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body {
    background: rgba(255, 255, 255, 0.035) !important;
    border-top: 1px solid rgba(245, 217, 138, 0.08) !important;
    color: var(--text-main) !important;
}

html[data-pbb-theme="dark"] #ai-plan-meals-list .meal-title,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body h4,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body [style*="color: var(--text-main)"],
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body [style*="color:var(--text-main)"] {
    color: #fffaf2 !important;
}

html[data-pbb-theme="dark"] #ai-plan-meals-list .meta,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body p,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body ul,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body li,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body [style*="color: var(--text-muted)"],
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body [style*="color:var(--text-muted)"] {
    color: rgba(248, 243, 255, 0.74) !important;
}

html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body h4 {
    border-bottom-color: rgba(245, 217, 138, 0.22) !important;
}

html[data-pbb-theme="dark"] #ai-plan-day-nutrition .ai-plan-macro-pill,
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body [style*="background: #f1f5f9"],
html[data-pbb-theme="dark"] #ai-plan-meals-list .card-body [style*="background:#f1f5f9"] {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(245, 217, 138, 0.1) !important;
}

.calorie-tracker-summary h2,
.calorie-tracker-summary h3,
.calorie-circle-current,
.calorie-circle-goal,
.macro-ring-pct,
.macro-detail-name,
.macro-detail-value {
    color: #fffaf2 !important;
}

.calorie-circle-separator,
.calorie-circle-label,
.macro-ring-label,
.tracker-micro-header,
.weekly-day-calories {
    color: rgba(248, 243, 255, 0.66) !important;
}

.calorie-circle-bg {
    stroke: rgba(255, 255, 255, 0.11) !important;
}

.macro-detail-item,
.micro-tracker-item,
.weekly-day-item {
    background: rgba(255, 255, 255, 0.055) !important;
    border: 1px solid rgba(245, 217, 138, 0.08) !important;
}

.progress-bar-medium {
    background: rgba(255, 255, 255, 0.1) !important;
}

#movement-tab,
#view-log-activity,
#view-workout-library,
#view-prebuilt-programs,
#view-workout-subcategories,
#view-workout-list,
#view-workout-overview,
#view-workout-builder,
#view-program-builder,
#view-your-workouts,
#view-week-workouts,
#view-week-session,
#view-workout-journal-detail {
    background:
        radial-gradient(circle at 10% 6%, rgba(216, 178, 94, 0.1), transparent 27%),
        radial-gradient(circle at 92% 2%, rgba(74, 37, 117, 0.24), transparent 30%),
        linear-gradient(180deg, #150c24 0%, #0f081c 44%, #090512 100%) !important;
    color: var(--text-main) !important;
}

#movement-tab h1,
#movement-tab h2,
#movement-tab h3 {
    color: #fffaf2 !important;
}

#form-check-quick-card {
    background:
        radial-gradient(circle at 88% 18%, rgba(245, 217, 138, 0.2), transparent 26%),
        linear-gradient(135deg, #2a1648 0%, #321a55 58%, #1a0f2d 100%) !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
    box-shadow: 0 18px 38px rgba(5, 2, 10, 0.34) !important;
}

#movement-grid-container > div {
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    box-shadow: 0 18px 38px rgba(5, 2, 10, 0.34) !important;
}

#movement-grid-container > div:nth-child(1) {
    background:
        radial-gradient(circle at 84% 14%, rgba(245, 217, 138, 0.16), transparent 26%),
        linear-gradient(135deg, #321a55 0%, #4a2575 58%, #1b102f 100%) !important;
}

#mvmt-week-workouts-card {
    background:
        radial-gradient(circle at 78% 82%, rgba(216, 178, 94, 0.5), transparent 30%),
        linear-gradient(135deg, #100916 0%, #2a1a05 52%, #5c4716 100%) !important;
}

#today-workout-card {
    background:
        radial-gradient(circle at 82% 16%, rgba(245, 217, 138, 0.16), transparent 24%),
        linear-gradient(135deg, #5a1f3b 0%, #66233f 50%, #321a55 100%) !important;
}

#movement-grid-container > div:nth-child(4) {
    background:
        radial-gradient(circle at 82% 14%, rgba(245, 217, 138, 0.14), transparent 24%),
        linear-gradient(135deg, #1d4257 0%, #263660 48%, #321a55 100%) !important;
}

#build-custom-card {
    background:
        radial-gradient(circle at 50% 30%, rgba(245, 217, 138, 0.1), transparent 32%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border: 1.5px dashed rgba(245, 217, 138, 0.28) !important;
}

#build-custom-card > div:first-child {
    background: rgba(255, 250, 242, 0.94) !important;
    box-shadow: 0 12px 26px rgba(5, 2, 10, 0.28) !important;
}

#build-custom-card div {
    color: #fffaf2 !important;
}

#build-custom-card div:last-child {
    color: rgba(248, 243, 255, 0.66) !important;
}

#workout-library-card {
    background:
        radial-gradient(circle at 82% 16%, rgba(245, 217, 138, 0.16), transparent 24%),
        linear-gradient(135deg, #22375a 0%, #321a55 58%, #1b102f 100%) !important;
}

#movement-grid-container > div:nth-child(7) {
    background:
        radial-gradient(circle at 82% 16%, rgba(245, 217, 138, 0.14), transparent 24%),
        linear-gradient(135deg, #234538 0%, #321a55 58%, #1b102f 100%) !important;
}

#movement-grid-container > div:nth-child(8) {
    background:
        radial-gradient(circle at 80% 16%, rgba(245, 217, 138, 0.18), transparent 24%),
        linear-gradient(135deg, #5a2d1b 0%, #4a2575 56%, #1b102f 100%) !important;
}

#view-log-activity h1,
#view-log-activity h2,
#view-log-activity h3 {
    color: #fffaf2 !important;
}

#view-log-activity input,
#view-log-activity textarea,
#view-log-activity select {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
}

#view-learning {
    background:
        radial-gradient(circle at 10% 6%, rgba(216, 178, 94, 0.1), transparent 27%),
        radial-gradient(circle at 92% 2%, rgba(74, 37, 117, 0.24), transparent 30%),
        linear-gradient(180deg, #150c24 0%, #0f081c 44%, #090512 100%) !important;
    color: var(--text-main) !important;
}

#view-learning h2,
#view-learning h3 {
    color: #fffaf2 !important;
}

.health-iq-card,
#learning-content [style*="background: white"] {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: 0 18px 38px rgba(5, 2, 10, 0.34) !important;
}

.health-iq-card {
    background:
        radial-gradient(circle at 88% 14%, rgba(245, 217, 138, 0.18), transparent 26%),
        linear-gradient(135deg, #321a55 0%, #4a2575 58%, #1b102f 100%) !important;
}

#learning-content [style*="color: var(--text-main)"] {
    color: #fffaf2 !important;
}

#learning-content [style*="color: var(--text-muted)"] {
    color: rgba(248, 243, 255, 0.66) !important;
}

#learning-content [style*="background: #e5e7eb"],
#learning-content [style*="background:#e5e7eb"] {
    background: rgba(255, 255, 255, 0.1) !important;
}

#view-cycle,
#view-friends,
#view-user-profile,
#view-profile {
    background:
        radial-gradient(circle at 12% 6%, rgba(216, 178, 94, 0.1), transparent 28%),
        radial-gradient(circle at 90% 2%, rgba(74, 37, 117, 0.28), transparent 32%),
        linear-gradient(180deg, #150c24 0%, #0f081c 48%, #090512 100%) !important;
    color: var(--text-main) !important;
}

#cycle-hero-card {
    background:
        radial-gradient(circle at 50% 6%, rgba(245, 217, 138, 0.12), transparent 34%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    box-shadow: 0 22px 46px rgba(5, 2, 10, 0.42) !important;
}

#cycle-hero-card .card-body {
    background: transparent !important;
    color: var(--text-main) !important;
}

#cycle-hero-card .card-body.active {
    background: transparent !important;
}

#cycle-hero-card [style*="background: white"] {
    background: rgba(255, 250, 242, 0.94) !important;
}

#cycle-phase-name,
#view-cycle h2,
#view-cycle h3,
#view-friends h2,
#view-friends h3,
#view-friends h4,
#view-user-profile h2,
#view-user-profile h3,
#view-profile h2,
#view-profile h3 {
    color: #fffaf2 !important;
}

#cycle-phase-desc,
#view-cycle p,
#view-friends p,
#view-user-profile p,
#view-profile p {
    color: rgba(248, 243, 255, 0.68) !important;
}

.calendar-view-toggle {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
}

.calendar-view-toggle .toggle-btn {
    color: rgba(248, 243, 255, 0.62) !important;
}

.calendar-view-toggle .toggle-btn.active {
    background: rgba(255, 250, 242, 0.94) !important;
    color: var(--pbb-luxe-plum) !important;
    box-shadow: 0 6px 16px rgba(5, 2, 10, 0.22) !important;
}

.calendar-day-row,
.monthly-calendar-container {
    background: rgba(24, 16, 36, 0.9) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: 0 16px 34px rgba(5, 2, 10, 0.3) !important;
}

.calendar-day-row.is-today,
.monthly-day-cell.is-today {
    background: rgba(50, 26, 85, 0.92) !important;
    border-color: rgba(245, 217, 138, 0.5) !important;
}

.calendar-day-row.calendar-drag-target {
    border-color: rgba(245, 217, 138, 0.74) !important;
    box-shadow: 0 14px 30px rgba(216, 178, 94, 0.18) !important;
}

.cal-date-box {
    border-color: rgba(245, 217, 138, 0.12) !important;
}

.cal-day-name,
.monthly-calendar-weekdays span,
.monthly-day-workout {
    color: rgba(248, 243, 255, 0.58) !important;
}

.cal-day-num,
.cal-workout-tag,
.monthly-calendar-header .month-title,
.monthly-day-num {
    color: #fffaf2 !important;
}

.cal-workout-tag {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
}

.cal-drag-handle,
.monthly-calendar-header .month-nav-btn {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: rgba(248, 243, 255, 0.72) !important;
}

.monthly-calendar-header,
.monthly-calendar-weekdays,
.monthly-day-cell,
.monthly-day-cell.other-month,
.monthly-calendar-grid {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
}

.monthly-day-cell:hover,
.monthly-calendar-header .month-nav-btn:hover {
    background: rgba(245, 217, 138, 0.1) !important;
}

#view-friends [onclick*="openAddFriendModal"][style*="background: #f1f5f9"],
#view-friends [onclick*="openFeedMessagesPanel"][style*="background: #f1f5f9"] {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
}

#view-friends [onclick*="openAddFriendModal"] svg,
#view-friends [onclick*="openFeedMessagesPanel"] svg {
    fill: rgba(248, 243, 255, 0.74) !important;
}

#view-friends button[onclick*="openStoryCamera"],
#friends-feed-empty button,
#story-upload-button,
#preview-post-btn,
#post-story-btn {
    background: linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-violet) 56%, var(--pbb-luxe-gold)) !important;
    color: white !important;
    box-shadow: 0 14px 30px rgba(50, 26, 85, 0.24) !important;
}

#feed-post-incentive {
    background:
        radial-gradient(circle at 92% 10%, rgba(245, 217, 138, 0.26), transparent 26%),
        linear-gradient(135deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
}

#feed-post-incentive span:nth-child(2),
#friends-feed-empty [style*="color: var(--text-main)"] {
    color: #fffaf2 !important;
}

#feed-post-incentive button {
    background: rgba(255, 255, 255, 0.08) !important;
    color: rgba(248, 243, 255, 0.72) !important;
}

#active-games-container [style*="background:#f8fafc"],
#active-games-container [style*="background: #f8fafc"],
#active-games-container [style*="linear-gradient(135deg,#f8fafc"],
#active-games-container [style*="linear-gradient(135deg, #f8fafc"],
#active-games-container [style*="background:white"],
#active-games-container [style*="background: white"] {
    background:
        radial-gradient(circle at 80% 8%, rgba(245, 217, 138, 0.1), transparent 32%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
}

#active-games-container [style*="color:var(--text-muted)"],
#active-games-container [style*="color: var(--text-muted)"] {
    color: rgba(248, 243, 255, 0.62) !important;
}

#friends-feed-empty,
#group-chats-empty,
#friends-cards-container,
#user-profile-posts-empty {
    background: rgba(24, 16, 36, 0.9) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: 0 16px 34px rgba(5, 2, 10, 0.3) !important;
}

.feed-post-card {
    background: rgba(24, 16, 36, 0.94) !important;
    border-bottom-color: rgba(245, 217, 138, 0.1) !important;
    color: var(--text-main) !important;
}

.feed-level-leaderboard {
    margin: 0 15px 12px;
    overflow: hidden;
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(8, 35, 25, 0.98), rgba(14, 40, 31, 0.96));
    border: 1px solid rgba(122, 255, 190, 0.13);
    box-shadow: 0 14px 30px rgba(5, 16, 12, 0.26);
    color: #f7fff9;
    cursor: pointer;
    touch-action: manipulation;
}

.feed-level-leaderboard-toggle {
    width: 100%;
    min-height: 64px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
    font: inherit;
}

.feed-level-leaderboard-badge {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: linear-gradient(135deg, #facc15 0%, #19d27d 100%);
    color: #063018;
    font-weight: 950;
    font-size: 1rem;
    box-shadow: 0 10px 20px rgba(18, 210, 125, 0.2);
}

.feed-level-leaderboard-copy {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.feed-level-leaderboard-title {
    font-size: 1.02rem;
    font-weight: 900;
    line-height: 1.1;
    color: #ffffff;
}

.feed-level-leaderboard-summary {
    font-size: 0.78rem;
    font-weight: 720;
    line-height: 1.25;
    color: rgba(247, 255, 249, 0.7);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.feed-level-leaderboard-top-value {
    flex-shrink: 0;
    color: #95f6b6;
    font-weight: 950;
    font-size: 0.9rem;
    white-space: nowrap;
}

.feed-level-leaderboard-chevron {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(255, 255, 255, 0.1);
    color: #dfffe9;
    transition: transform 0.18s ease, background 0.18s ease;
    pointer-events: none;
}

.feed-level-leaderboard-chevron svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
    pointer-events: none;
}

.feed-level-leaderboard-chevron path {
    pointer-events: none;
}

.feed-level-leaderboard.is-open .feed-level-leaderboard-chevron {
    transform: rotate(180deg);
    background: rgba(255, 255, 255, 0.16);
}

.feed-level-leaderboard-body {
    display: none;
    border-top: 1px solid rgba(180, 255, 210, 0.11);
    cursor: default;
    touch-action: auto;
}

.feed-level-leaderboard:focus-within .feed-level-leaderboard-body,
.feed-level-leaderboard:active .feed-level-leaderboard-body,
.feed-level-leaderboard.is-open .feed-level-leaderboard-body {
    display: block;
}

.feed-level-leaderboard:focus-within .feed-level-leaderboard-chevron,
.feed-level-leaderboard:active .feed-level-leaderboard-chevron {
    transform: rotate(180deg);
    background: rgba(255, 255, 255, 0.16);
}

.feed-level-leaderboard-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px 10px;
    color: rgba(247, 255, 249, 0.72);
    font-size: 0.78rem;
    font-weight: 750;
}

.feed-level-leaderboard-actions button {
    border: 0;
    border-radius: 999px;
    padding: 8px 13px;
    background: #e8fff0;
    color: #124a2a;
    font-size: 0.78rem;
    font-weight: 900;
    cursor: pointer;
}

.feed-level-leaderboard-list {
    display: flex;
    flex-direction: column;
}

.feed-level-leaderboard-state {
    padding: 18px 16px 22px;
    color: rgba(247, 255, 249, 0.7);
    text-align: center;
    font-size: 0.84rem;
    font-weight: 700;
}

.feed-level-row {
    display: grid;
    grid-template-columns: 44px 54px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-height: 72px;
    padding: 10px 16px;
    border-top: 1px solid rgba(180, 255, 210, 0.11);
    background: rgba(255, 255, 255, 0.02);
}

.feed-level-row.is-current-user {
    background: rgba(52, 211, 153, 0.12);
}

.feed-level-rank {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 950;
    font-size: 0.88rem;
    color: #0b2016;
    background: #e8f2ff;
}

.feed-level-rank.rank-1 {
    background: #fbbf24;
}

.feed-level-rank.rank-2 {
    background: #cbd5e1;
}

.feed-level-rank.rank-3 {
    background: #c86616;
    color: #1c0d04;
}

.feed-level-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: radial-gradient(circle at 30% 25%, #0f766e, #14b8a6);
    color: #052d26;
    font-weight: 900;
    box-shadow: 0 10px 22px rgba(20, 184, 166, 0.22);
}

.feed-level-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.feed-level-person {
    min-width: 0;
}

.feed-level-name {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    color: #ffffff;
    font-weight: 900;
    font-size: 0.95rem;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.feed-level-name span {
    flex-shrink: 0;
    padding: 3px 8px;
    border-radius: 999px;
    background: #dcfce7;
    color: #14532d;
    font-size: 0.68rem;
    font-weight: 950;
}

.feed-level-meta {
    margin-top: 4px;
    color: rgba(247, 255, 249, 0.68);
    font-weight: 750;
    font-size: 0.8rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.feed-level-points {
    min-width: 58px;
    text-align: right;
    color: #93f8b6;
}

.feed-level-points strong,
.feed-level-points small {
    display: block;
}

.feed-level-points strong {
    font-size: 0.98rem;
    font-weight: 950;
    line-height: 1.1;
}

.feed-level-points small {
    margin-top: 4px;
    color: rgba(247, 255, 249, 0.6);
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0;
}

@media (max-width: 380px) {
    .feed-level-leaderboard-toggle {
        gap: 9px;
        padding: 12px 13px;
    }

    .feed-level-row {
        grid-template-columns: 38px 48px minmax(0, 1fr) auto;
        gap: 8px;
        padding: 10px 12px;
    }

    .feed-level-rank {
        width: 33px;
        height: 33px;
    }

    .feed-level-avatar {
        width: 44px;
        height: 44px;
    }
}

/* Post-session feedback: cream/white/gold in light mode, black/white/gold in dark mode. */
#workout-rating-modal.workout-rating-overlay {
    --rating-page: #090909;
    --rating-surface: #121212;
    --rating-soft: #1c1a16;
    --rating-text: #f8f7f2;
    --rating-muted: #b9b3a8;
    --rating-border: rgba(245, 217, 138, 0.22);
    --rating-gold: #d8ad4e;
    --rating-gold-bright: #f4d780;
    --rating-on-gold: #17130b;
    align-items: center;
    background: radial-gradient(circle at 50% 14%, rgba(216, 173, 78, 0.14), transparent 34%), var(--rating-page) !important;
    box-sizing: border-box;
    color: var(--rating-text) !important;
    height: 100%;
    inset: 0;
    justify-content: center;
    overflow-y: auto;
    padding: calc(22px + env(safe-area-inset-top, 0px)) 16px calc(22px + env(safe-area-inset-bottom, 0px));
    position: fixed;
    width: 100%;
    z-index: 600;
}

html[data-pbb-theme="light"] #workout-rating-modal.workout-rating-overlay {
    --rating-page: #f7f3eb;
    --rating-surface: #ffffff;
    --rating-soft: #f5efe3;
    --rating-text: #171512;
    --rating-muted: #6c665c;
    --rating-border: rgba(181, 138, 52, 0.26);
    --rating-gold: #8b651d;
    --rating-gold-bright: #dfbd65;
    --rating-on-gold: #17130b;
    background: radial-gradient(circle at 50% 12%, rgba(223, 189, 101, 0.24), transparent 34%), var(--rating-page) !important;
}

#workout-rating-modal.workout-rating-overlay .workout-rating-card {
    background: var(--rating-surface) !important;
    border: 1px solid var(--rating-border) !important;
    border-radius: 28px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.18) !important;
    color: var(--rating-text) !important;
    margin: auto;
    max-width: 430px;
    overflow: hidden;
    width: 100%;
}

#workout-rating-modal.workout-rating-overlay .workout-rating-header {
    background: linear-gradient(145deg, var(--rating-soft), var(--rating-surface)) !important;
    border-bottom: 1px solid var(--rating-border) !important;
    color: var(--rating-text) !important;
    padding: 30px 24px 24px;
    text-align: center;
}

#workout-rating-modal .workout-rating-kicker {
    color: var(--rating-gold) !important;
    -webkit-text-fill-color: var(--rating-gold) !important;
    display: block;
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.16em;
    margin-bottom: 8px;
}

#workout-rating-modal .workout-rating-header h2 {
    color: var(--rating-text) !important;
    -webkit-text-fill-color: var(--rating-text) !important;
    font-family: 'Playfair Display', serif;
    font-size: 1.65rem;
    margin: 0;
}

#workout-rating-modal #rating-workout-name {
    color: var(--rating-muted) !important;
    -webkit-text-fill-color: var(--rating-muted) !important;
    font-size: 0.9rem;
    margin: 6px 0 0;
}

#workout-rating-modal .workout-rating-body {
    background: var(--rating-surface) !important;
    padding: 26px 24px 24px;
}

#workout-rating-modal .workout-rating-question {
    background: var(--rating-soft);
    border: 1px solid var(--rating-border);
    border-radius: 18px;
    margin-bottom: 14px;
    padding: 18px 16px 15px;
}

#workout-rating-modal .workout-rating-label {
    color: var(--rating-text) !important;
    -webkit-text-fill-color: var(--rating-text) !important;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    margin-bottom: 18px;
    text-transform: uppercase;
}

#workout-rating-modal .workout-rating-range {
    -webkit-appearance: none;
    appearance: none;
    background: linear-gradient(90deg, var(--rating-gold), var(--rating-gold-bright)) !important;
    border-radius: 999px;
    cursor: pointer;
    height: 7px;
    outline: none;
    width: 100%;
}

#workout-rating-modal .workout-rating-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    background: var(--rating-surface) !important;
    border: 3px solid var(--rating-gold) !important;
    border-radius: 50%;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    height: 28px;
    width: 28px;
}

#workout-rating-modal .workout-rating-range::-moz-range-thumb {
    background: var(--rating-surface) !important;
    border: 3px solid var(--rating-gold) !important;
    border-radius: 50%;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    height: 22px;
    width: 22px;
}

#workout-rating-modal .workout-rating-scale {
    color: var(--rating-muted) !important;
    -webkit-text-fill-color: var(--rating-muted) !important;
    display: flex;
    font-size: 0.76rem;
    font-weight: 700;
    justify-content: space-between;
    margin-top: 11px;
}

#workout-rating-modal .workout-rating-actions {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.6fr);
    margin-top: 20px;
}

#workout-rating-modal .workout-rating-actions button {
    border-radius: 15px;
    cursor: pointer;
    font: inherit;
    font-size: 0.92rem;
    font-weight: 800;
    min-height: 52px;
    padding: 13px;
}

#workout-rating-modal .workout-rating-skip {
    background: var(--rating-soft) !important;
    border: 1px solid var(--rating-border) !important;
    color: var(--rating-muted) !important;
    -webkit-text-fill-color: var(--rating-muted) !important;
}

#workout-rating-modal .workout-rating-save {
    background: linear-gradient(135deg, var(--rating-gold-bright), var(--rating-gold)) !important;
    border: 0 !important;
    color: var(--rating-on-gold) !important;
    -webkit-text-fill-color: var(--rating-on-gold) !important;
    box-shadow: 0 10px 24px rgba(170, 125, 37, 0.2);
}

@media (max-width: 380px) {
    #workout-rating-modal .workout-rating-header {
        padding: 24px 18px 19px;
    }

    #workout-rating-modal .workout-rating-body {
        padding: 20px 16px 18px;
    }
}

/* Nutrition's two primary destinations read as one full-width tab bar. */
#view-meals > .app-header {
    border-bottom: 0 !important;
    box-shadow: none !important;
}

#view-meals #meals-nav-pills.meals-nav-shell {
    background: var(--bg) !important;
    color: var(--text-main) !important;
    padding: 12px 0 0;
}

#view-meals #meals-nav-pills .meals-primary-tabs {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    width: 100%;
    border-top: 0;
    border-bottom: 1px solid rgba(216, 178, 94, 0.2);
    background: rgba(13, 13, 13, 0.94);
}

#view-meals #meals-nav-pills .meals-primary-tab {
    width: 100%;
    min-width: 0;
    min-height: 54px;
    margin: 0;
    padding: 12px 8px;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(13, 13, 13, 0.94) !important;
    box-shadow: none !important;
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
    font-size: 0.9rem;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
}

#view-meals #meals-nav-pills .meals-primary-tab + .meals-primary-tab {
    border-left: 1px solid rgba(216, 178, 94, 0.22) !important;
}

#view-meals #meals-nav-pills .meals-primary-tab.active,
#view-meals #meals-nav-pills .meals-primary-tab[aria-selected="true"] {
    background: linear-gradient(110deg, #18130d 0%, #18130d 72%, #6f5014 100%) !important;
    box-shadow: inset 0 -3px 0 var(--pbb-luxe-gold, #d8b25e) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#view-meals #meals-nav-pills .meals-primary-tab:focus-visible {
    position: relative;
    z-index: 1;
    outline: 3px solid var(--pbb-luxe-gold, #d8b25e);
    outline-offset: -3px;
}

#view-meals .meals-secondary-tabs {
    padding: 10px 15px;
}

#view-meals .meals-nav-simple .meals-secondary-tabs {
    display: none !important;
}

html[data-pbb-theme="light"] #view-meals #meals-nav-pills.meals-nav-shell {
    background: #f8f5ee !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-meals #meals-nav-pills .meals-primary-tabs {
    border-color: rgba(184, 137, 43, 0.22);
    background: #ffffff;
}

html[data-pbb-theme="light"] #view-meals #meals-nav-pills .meals-primary-tab {
    background: linear-gradient(180deg, #ffffff 0%, #f4f0e7 100%) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-meals #meals-nav-pills .meals-primary-tab.active,
html[data-pbb-theme="light"] #view-meals #meals-nav-pills .meals-primary-tab[aria-selected="true"] {
    background: linear-gradient(110deg, #151515 0%, #151515 72%, #6f5014 100%) !important;
    box-shadow: inset 0 -3px 0 #b8892b !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Search-first Meal Builder. Food search is the primary action; camera and barcode stay secondary. */
.meal-builder-field-label,
.meal-builder-search-heading,
.meal-builder-current-heading {
    display: block;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    font-size: 0.76rem;
    font-weight: 800;
}

.meal-builder-field-label { margin: 0 0 7px; }
.meal-builder-field-label + .meal-builder-serving-select { margin-bottom: 14px; }
.meal-builder-search-heading { margin-top: 18px; font-size: 0.9rem; }
.meal-builder-current-heading { margin-top: 18px; font-size: 0.88rem; }
.meal-builder-search-help { margin: 4px 0 9px; color: var(--text-muted) !important; -webkit-text-fill-color: var(--text-muted) !important; font-size: 0.76rem; line-height: 1.4; }

.meal-builder-search-wrap { position: relative; }
.meal-builder-search-wrap > svg {
    position: absolute; left: 14px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%);
    fill: none; stroke: var(--pbb-luxe-gold, #d8b25e); stroke-width: 2; stroke-linecap: round; pointer-events: none;
}
#meal-builder-food-search {
    width: 100%; min-height: 50px; padding: 12px 43px 12px 42px; border: 1px solid rgba(216,178,94,.42);
    border-radius: 14px; background: rgba(255,255,255,.07); color: #f8f7f2; -webkit-text-fill-color: #f8f7f2;
    font-size: 0.95rem; outline: none; appearance: none;
}
#meal-builder-food-search::placeholder { color: rgba(248,247,242,.62); -webkit-text-fill-color: rgba(248,247,242,.62); }
#meal-builder-food-search:focus { border-color: #d8b25e; box-shadow: 0 0 0 3px rgba(216,178,94,.17); }
.meal-builder-search-spinner { display: none; position: absolute; right: 15px; top: 17px; width: 16px; height: 16px; border: 2px solid rgba(216,178,94,.28); border-top-color: #d8b25e; border-radius: 50%; animation: spin .75s linear infinite; }
.meal-builder-search-spinner.active { display: block; }

.meal-builder-search-shortcuts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 7px 0 10px; }
.meal-builder-search-shortcuts button {
    border: 0; background: transparent; color: rgba(248,247,242,.72); -webkit-text-fill-color: rgba(248,247,242,.72);
    min-height: 34px; font-size: 0.73rem; font-weight: 750; cursor: pointer;
}
.meal-builder-search-shortcuts button span { color: #d8b25e; -webkit-text-fill-color: #d8b25e; margin-right: 4px; }
.meal-builder-search-status { min-height: 18px; color: rgba(248,247,242,.62) !important; -webkit-text-fill-color: rgba(248,247,242,.62) !important; font-size: 0.7rem; }
.meal-builder-search-results { max-height: 250px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.meal-builder-search-result {
    width: 100%; display: flex; align-items: center; gap: 10px; padding: 11px 2px; border: 0; border-bottom: 1px solid rgba(216,178,94,.14);
    background: transparent; color: #f8f7f2; text-align: left; cursor: pointer;
}
.meal-builder-result-icon { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; border-radius: 11px; background: rgba(216,178,94,.12); }
.meal-builder-result-copy { min-width: 0; flex: 1; }
.meal-builder-result-copy strong { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #f8f7f2 !important; -webkit-text-fill-color: #f8f7f2 !important; font-size: 0.82rem; }
.meal-builder-result-copy small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; margin-top: 3px; color: rgba(248,247,242,.62) !important; -webkit-text-fill-color: rgba(248,247,242,.62) !important; font-size: 0.68rem; }
.meal-builder-result-add { width: 34px; height: 34px; flex: 0 0 34px; display: grid; place-items: center; border: 1px solid #d8b25e; border-radius: 50%; background: rgba(216,178,94,.1); color: #d8b25e; -webkit-text-fill-color: #d8b25e; font-size: 1.2rem; }
.meal-builder-custom-food-link {
    width: 100%; margin: 5px 0 2px; padding: 9px 12px; border: 1px dashed rgba(216,178,94,.34); border-radius: 11px;
    background: rgba(216,178,94,.06); color: #d8b25e !important; -webkit-text-fill-color: #d8b25e !important;
    font-size: .75rem; font-weight: 780; cursor: pointer;
}
.meal-builder-custom-food-container { max-width: 410px; max-height: min(88vh, 720px); overflow-y: auto; }
.meal-builder-custom-food-help { margin: 0 0 15px; color: rgba(248,247,242,.66) !important; -webkit-text-fill-color: rgba(248,247,242,.66) !important; font-size: .74rem; line-height: 1.45; }
.meal-builder-custom-grid { display: grid; gap: 10px; }
.meal-builder-custom-grid-serving { grid-template-columns: 1.35fr .65fr; }
.meal-builder-custom-grid-macros { grid-template-columns: 1fr 1fr; }
.meal-builder-custom-grid .meal-builder-field-label { margin-top: 0; }
.meal-builder-custom-input {
    width: 100%; min-height: 44px; box-sizing: border-box; margin: 0 0 12px; padding: 11px 12px;
    border: 1px solid rgba(216,178,94,.28); border-radius: 11px; outline: none; background: #171717;
    color: #f8f7f2 !important; -webkit-text-fill-color: #f8f7f2 !important; caret-color: #d8b25e; font: inherit;
}
.meal-builder-custom-input::placeholder { color: rgba(248,247,242,.4); -webkit-text-fill-color: rgba(248,247,242,.4); }
.meal-builder-custom-input:focus { border-color: #d8b25e; box-shadow: 0 0 0 3px rgba(216,178,94,.12); }
.meal-builder-optional { color: rgba(248,247,242,.48) !important; -webkit-text-fill-color: rgba(248,247,242,.48) !important; font-weight: 600; }
.meal-builder-custom-share {
    display: flex; align-items: flex-start; gap: 10px; margin: 2px 0 8px; padding: 12px; border: 1px solid rgba(216,178,94,.22);
    border-radius: 12px; background: rgba(216,178,94,.08); cursor: pointer;
}
.meal-builder-custom-share input { width: 18px; height: 18px; margin: 1px 0 0; flex: 0 0 18px; accent-color: #d8b25e; }
.meal-builder-custom-share strong { display: block; color: #f8f7f2 !important; -webkit-text-fill-color: #f8f7f2 !important; font-size: .78rem; }
.meal-builder-custom-share small { display: block; margin-top: 3px; color: rgba(248,247,242,.58) !important; -webkit-text-fill-color: rgba(248,247,242,.58) !important; font-size: .67rem; line-height: 1.35; }
.meal-builder-custom-status { min-height: 18px; color: rgba(248,247,242,.66) !important; -webkit-text-fill-color: rgba(248,247,242,.66) !important; font-size: .7rem; }
.meal-builder-custom-status.error { color: #ffaaa3 !important; -webkit-text-fill-color: #ffaaa3 !important; }
.meal-builder-my-foods-container { max-width: 410px; }
.meal-builder-my-foods-create {
    width: 100%; min-height: 42px; margin: 0 0 8px; border: 1px solid rgba(216,178,94,.36); border-radius: 11px;
    background: rgba(216,178,94,.1); color: #d8b25e !important; -webkit-text-fill-color: #d8b25e !important; font-weight: 800; cursor: pointer;
}
.meal-builder-my-foods-list { max-height: 390px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.meal-builder-my-food-item {
    display: flex; align-items: center; gap: 10px; width: 100%; min-height: 58px; padding: 10px 4px; border: 0;
    border-bottom: 1px solid rgba(216,178,94,.13); background: transparent; color: #f8f7f2; text-align: left; cursor: pointer;
}
.meal-builder-my-food-item > span:first-child { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; border-radius: 11px; background: rgba(216,178,94,.12); color: #d8b25e; }
.meal-builder-my-food-item > span:nth-child(2) { min-width: 0; flex: 1; }
.meal-builder-my-food-item strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #f8f7f2 !important; -webkit-text-fill-color: #f8f7f2 !important; font-size: .8rem; }
.meal-builder-my-food-item small { display: block; margin-top: 3px; color: rgba(248,247,242,.58) !important; -webkit-text-fill-color: rgba(248,247,242,.58) !important; font-size: .67rem; }
.meal-builder-my-food-item > span:last-child { color: #d8b25e; -webkit-text-fill-color: #d8b25e; font-size: 1.2rem; }
.meal-builder-my-foods-empty { padding: 24px 10px; color: rgba(248,247,242,.62) !important; -webkit-text-fill-color: rgba(248,247,242,.62) !important; font-size: .76rem; line-height: 1.45; text-align: center; }
.meal-builder-my-foods-empty strong,
.meal-builder-my-foods-empty span { display: block; }

.meal-builder-items { margin-top: 7px !important; }
.meal-builder-empty { padding: 12px 13px !important; border: 1px dashed rgba(216,178,94,.2); border-radius: 13px; text-align: left !important; }
.meal-builder-empty p { font-size: 0.78rem !important; }
.meal-builder-empty p strong { color: #f8f7f2 !important; -webkit-text-fill-color: #f8f7f2 !important; }
.meal-builder-empty p span { color: rgba(248,247,242,.62) !important; -webkit-text-fill-color: rgba(248,247,242,.62) !important; font-size: 0.7rem !important; }
.meal-builder-totals { margin-top: 9px !important; }

.meal-builder-serving-container { max-width: 390px; }
.meal-builder-serving-kicker { color: #d8b25e; -webkit-text-fill-color: #d8b25e; font-size: 0.65rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; margin-bottom: 3px; }
.meal-builder-serving-select {
    width: 100%; min-height: 46px; padding: 10px 38px 10px 12px; border: 1px solid rgba(216,178,94,.3); border-radius: 12px;
    background: #171717; color: #f8f7f2; -webkit-text-fill-color: #f8f7f2; font-size: .88rem;
}
.meal-builder-serving-stepper { display: grid; grid-template-columns: 44px 1fr 44px; gap: 8px; margin-bottom: 12px; }
.meal-builder-serving-stepper button,
.meal-builder-serving-stepper input { min-height: 44px; border: 1px solid rgba(216,178,94,.28); border-radius: 11px; background: #171717; color: #f8f7f2; -webkit-text-fill-color: #f8f7f2; text-align: center; font-weight: 750; }
.meal-builder-serving-stepper button { color: #d8b25e; -webkit-text-fill-color: #d8b25e; font-size: 1.15rem; cursor: pointer; }
.meal-builder-serving-preview { margin-bottom: 13px; padding: 11px 12px; border-radius: 11px; background: rgba(216,178,94,.1); color: #f8f7f2; -webkit-text-fill-color: #f8f7f2; font-size: .78rem; text-align: center; }

html[data-pbb-theme="light"] #meal-builder-food-search,
html[data-pbb-theme="light"] .meal-builder-serving-select,
html[data-pbb-theme="light"] .meal-builder-serving-stepper button,
html[data-pbb-theme="light"] .meal-builder-serving-stepper input {
    background: #ffffff; color: #151515; -webkit-text-fill-color: #151515; border-color: rgba(184,137,43,.3);
}
html[data-pbb-theme="light"] #meal-builder-food-search::placeholder { color: #716b61; -webkit-text-fill-color: #716b61; }
html[data-pbb-theme="light"] .meal-builder-search-shortcuts button { color: #5f5a52; -webkit-text-fill-color: #5f5a52; }
html[data-pbb-theme="light"] .meal-builder-search-status,
html[data-pbb-theme="light"] .meal-builder-result-copy small { color: #6a655c !important; -webkit-text-fill-color: #6a655c !important; }
html[data-pbb-theme="light"] .meal-builder-search-result { color: #151515; border-bottom-color: rgba(184,137,43,.15); }
html[data-pbb-theme="light"] .meal-builder-result-copy strong,
html[data-pbb-theme="light"] .meal-builder-empty p strong { color: #151515 !important; -webkit-text-fill-color: #151515 !important; }
html[data-pbb-theme="light"] .meal-builder-empty { border-color: rgba(184,137,43,.22); background: #fffdf8 !important; }
html[data-pbb-theme="light"] .meal-builder-empty p span { color: #6a655c !important; -webkit-text-fill-color: #6a655c !important; }
html[data-pbb-theme="light"] .meal-builder-serving-preview { background: #f5ead0; color: #151515; -webkit-text-fill-color: #151515; }
html[data-pbb-theme="light"] .meal-builder-custom-food-link,
html[data-pbb-theme="light"] .meal-builder-my-foods-create { background: #fff9ec; border-color: rgba(184,137,43,.38); color: #7a5712 !important; -webkit-text-fill-color: #7a5712 !important; }
html[data-pbb-theme="light"] .meal-builder-custom-food-help,
html[data-pbb-theme="light"] .meal-builder-custom-status,
html[data-pbb-theme="light"] .meal-builder-my-foods-empty { color: #6a655c !important; -webkit-text-fill-color: #6a655c !important; }
html[data-pbb-theme="light"] .meal-builder-custom-input { background: #fff; border-color: rgba(184,137,43,.28); color: #151515 !important; -webkit-text-fill-color: #151515 !important; }
html[data-pbb-theme="light"] .meal-builder-custom-input::placeholder { color: #8b857c; -webkit-text-fill-color: #8b857c; }
html[data-pbb-theme="light"] .meal-builder-optional { color: #777168 !important; -webkit-text-fill-color: #777168 !important; }
html[data-pbb-theme="light"] .meal-builder-custom-share { background: #fff9ec; border-color: rgba(184,137,43,.25); }
html[data-pbb-theme="light"] .meal-builder-custom-share strong,
html[data-pbb-theme="light"] .meal-builder-my-food-item strong { color: #151515 !important; -webkit-text-fill-color: #151515 !important; }
html[data-pbb-theme="light"] .meal-builder-custom-share small,
html[data-pbb-theme="light"] .meal-builder-my-food-item small { color: #6a655c !important; -webkit-text-fill-color: #6a655c !important; }
html[data-pbb-theme="light"] .meal-builder-my-food-item { border-bottom-color: rgba(184,137,43,.15); color: #151515; }
html[data-pbb-theme="light"] .meal-builder-my-food-item > span:first-child { background: #f8efd9; color: #7a5712; }

.feed-post-card [style*="border-top:1px solid #f1f5f9"],
.feed-post-card [style*="border-top: 1px solid #f1f5f9"] {
    border-color: rgba(245, 217, 138, 0.12) !important;
}

.feed-post-card input {
    color: #fffaf2 !important;
}

.feed-meal-card .feed-meal-card-title,
.feed-meal-card .feed-meal-card-food,
.feed-meal-card .feed-meal-card-calories,
.feed-meal-card .feed-meal-card-macro-value {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    opacity: 1 !important;
}

.feed-meal-card .feed-meal-card-muted {
    color: rgba(248, 247, 242, 0.84) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.84) !important;
    opacity: 1 !important;
}

#feed-messages-panel,
#add-friend-modal,
#create-group-chat-modal,
#story-choice-modal,
#story-upload-modal {
    background:
        radial-gradient(circle at 18% 10%, rgba(245, 217, 138, 0.16), transparent 28%),
        linear-gradient(180deg, rgba(10, 5, 18, 0.82), rgba(10, 5, 18, 0.94)) !important;
    backdrop-filter: blur(12px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(118%) !important;
}

#feed-messages-panel-content,
#add-friend-modal > div,
#create-group-chat-modal > div,
#story-choice-modal > div,
#story-upload-modal > div {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.98), rgba(18, 11, 31, 0.98)) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: var(--pbb-luxe-shadow) !important;
}

#feed-messages-panel-content > div[style*="background: white"],
#add-friend-modal > div > div,
#create-group-chat-modal > div > div,
#story-upload-modal > div > div {
    background: transparent !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
}

#feed-messages-panel-content h3,
#feed-messages-panel-content h4,
#add-friend-modal h2,
#create-group-chat-modal h3,
#story-choice-modal h3,
#story-upload-modal h3 {
    color: #fffaf2 !important;
}

#feed-messages-panel-content [style*="color: var(--text-main)"],
#add-friend-modal [style*="color:var(--text-main)"],
#add-friend-modal [style*="color: var(--text-main)"],
#create-group-chat-modal [style*="color: var(--text-main)"],
#story-upload-modal [style*="color:var(--primary)"] {
    color: #fffaf2 !important;
}

#feed-messages-panel-content [style*="color: var(--text-muted)"],
#add-friend-modal [style*="color:#64748b"],
#add-friend-modal [style*="color: #64748b"],
#add-friend-modal [style*="color:#94a3b8"],
#story-choice-modal p,
#story-upload-modal [style*="color:var(--text-muted)"] {
    color: rgba(248, 243, 255, 0.66) !important;
}

#add-friend-modal input,
#create-group-chat-modal input,
#story-caption-input {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
}

#add-friend-modal [style*="background:#f1f5f9"],
#create-group-chat-modal [style*="border: 1px solid #e2e8f0"],
#story-preview-area {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
}

#friend-tab-search,
#friend-tab-requests,
#friend-tab-friends {
    color: rgba(248, 243, 255, 0.66) !important;
}

#friend-tab-search[style*="background:white"],
#friend-tab-requests[style*="background:white"],
#friend-tab-friends[style*="background:white"] {
    background: rgba(255, 250, 242, 0.94) !important;
    color: var(--pbb-luxe-plum) !important;
}

#view-profile .profile-header,
#view-profile [style*="background: white"],
#view-profile [style*="background:white"],
#view-user-profile [style*="background: white"],
#view-user-profile [style*="background:white"] {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.09), transparent 32%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: var(--text-main) !important;
    box-shadow: 0 16px 34px rgba(5, 2, 10, 0.28) !important;
}

#view-profile [style*="background:#f8fafc"],
#view-profile [style*="background: #f8fafc"],
#view-profile [style*="background:#f8f9fa"],
#view-profile [style*="background: #f8f9fa"] {
    background: rgba(255, 255, 255, 0.06) !important;
}

#view-profile button[style*="background:white"],
#view-profile button[style*="background: white"],
#view-profile button[style*="background:#f1f5f9"],
#view-profile button[style*="background: #f1f5f9"] {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
}

#view-profile [style*="color:var(--primary)"],
#view-profile [style*="color: var(--primary)"],
#view-user-profile [style*="color:var(--primary)"],
#view-user-profile [style*="color: var(--primary)"] {
    color: var(--pbb-luxe-gold-light) !important;
}

.calorie-widget-card .calorie-widget-title h3,
.calorie-widget-card .calorie-widget-meta,
.calorie-widget-card .nutrition-period-date,
.calorie-widget-card .nutrition-period-remaining,
#calorie-tracker-card .nutrition-period-date,
#calorie-tracker-card .nutrition-period-remaining {
    color: rgba(248, 243, 255, 0.68) !important;
}

.calorie-widget-card .calorie-widget-title h3,
#tracker-nutrition-title {
    color: #fffaf2 !important;
}

.calorie-widget-card .calorie-widget-meta strong,
#widget-calories-remaining,
#tracker-period-remaining {
    color: var(--pbb-luxe-gold-light) !important;
}

#home-friends-modal button[onclick*="openAddFriendModal"],
.adaptive-modal-confirm,
.onboarding-btn-primary,
#weigh-in-modal button[onclick*="saveWeight"],
#weigh-in-modal button[onclick*="submitWeight"],
#health-connect-modal button[onclick*="acceptHealthConnect"],
#guest-signup-modal button[onclick*="login"],
#store-review-modal button[onclick*="onLoveIt"],
#store-review-modal button[onclick*="openStoreReview"],
#store-review-modal button[onclick*="submitFeedback"],
#last-volume-popup button {
    background: linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-violet) 56%, var(--pbb-luxe-gold)) !important;
    color: white !important;
    box-shadow: 0 14px 30px rgba(50, 26, 85, 0.24) !important;
}

input:focus,
textarea:focus,
select:focus,
#weigh-in-modal-input:focus {
    border-color: var(--pbb-luxe-gold) !important;
    box-shadow: 0 0 0 3px rgba(216, 178, 94, 0.18) !important;
}

#guided-tour-spotlight {
    border-color: rgba(185, 132, 40, 0.96) !important;
    box-shadow: 0 0 0 9999px rgba(26, 24, 20, 0.34), 0 0 0 3px rgba(216, 178, 94, 0.8) !important;
}

#guided-tour-overlay.tour-page-view #guided-tour-spotlight {
    box-shadow:
        0 0 0 9999px rgba(26, 24, 20, 0.08),
        0 0 0 5px rgba(216, 178, 94, 0.2),
        0 0 24px rgba(154, 105, 25, 0.2) !important;
}

/* Every tour step uses the same opaque cream/gold surface in both app themes.
   Keep its ink paired with the surface, rather than inheriting dark-mode text. */
#guided-tour-overlay {
    --pbb-tour-surface: linear-gradient(145deg, #fffdf7, #f8f0de);
    --pbb-tour-ink: var(--pbb-luxe-ink);
    --pbb-tour-accent-ink: #795514;
    --pbb-tour-border: #b78a2e;
}

#guided-tour-overlay.tour-page-view #guided-tour-bubble,
#guided-tour-bubble {
    background: var(--pbb-tour-surface) !important;
    color: var(--pbb-tour-ink) !important;
    -webkit-text-fill-color: var(--pbb-tour-ink);
    border: 1px solid var(--pbb-tour-border) !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 44px rgba(35, 27, 14, 0.24) !important;
}

#guided-tour-bubble .tour-counter {
    color: var(--pbb-tour-accent-ink) !important;
    -webkit-text-fill-color: var(--pbb-tour-accent-ink);
    font-weight: 800 !important;
}

#guided-tour-bubble .tour-title {
    color: var(--pbb-tour-ink) !important;
    font-weight: 800 !important;
}

#guided-tour-bubble .tour-body {
    color: var(--pbb-tour-ink) !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
}

#guided-tour-bubble .tour-skip {
    color: #374151 !important;
    font-weight: 800 !important;
}

#guided-tour-bubble .tour-back {
    background: #efe7d7 !important;
    color: var(--pbb-tour-ink) !important;
}

#guided-tour-bubble #tour-gate-note,
#guided-tour-bubble .tour-xp-note {
    background: #eee0bb !important;
    color: var(--pbb-tour-accent-ink) !important;
    -webkit-text-fill-color: var(--pbb-tour-accent-ink);
}

#guided-tour-bubble button:focus-visible {
    outline: 2px solid var(--pbb-tour-accent-ink);
    outline-offset: 3px;
}

#guided-tour-bubble .tour-next,
.fr-splash-btn {
    background: linear-gradient(135deg, var(--pbb-luxe-plum), var(--pbb-luxe-violet) 55%, var(--pbb-luxe-gold)) !important;
    color: white !important;
}

#fr-splash {
    background:
        radial-gradient(circle at 24% 20%, rgba(245, 217, 138, 0.18), transparent 30%),
        radial-gradient(circle at 76% 10%, rgba(116, 70, 165, 0.38), transparent 34%),
        linear-gradient(180deg, rgba(24, 12, 43, 0.94), rgba(12, 7, 24, 0.96)) !important;
}

.fr-splash-glow {
    background: radial-gradient(circle, rgba(216, 178, 94, 0.42), rgba(74, 37, 117, 0.18) 48%, transparent 72%) !important;
}

.fr-splash-badge {
    background: rgba(255, 250, 242, 0.12) !important;
    border: 1px solid rgba(245, 217, 138, 0.38) !important;
    color: var(--pbb-luxe-gold-light) !important;
}

.fr-splash-sub {
    color: rgba(255, 250, 242, 0.72) !important;
}

#weekly-goals-modal .weekly-goal-sheet {
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 -26px 70px rgba(18, 8, 34, 0.56) !important;
}

#weekly-goals-modal .weekly-goal-sheet > div:last-child {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), var(--pbb-luxe-cream)) !important;
    border-color: rgba(49, 31, 74, 0.12) !important;
}

#guest-signup-modal > div,
.modal-content,
.onboarding-modal,
.completion-modal,
.adaptive-modal,
#share-referral-modal > div,
#store-review-modal > div,
#last-volume-popup > div,
.meal-breakdown-card,
#home-friends-modal > div,
#weekly-goals-modal .weekly-goal-sheet > div:last-child {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.98), rgba(18, 11, 31, 0.98)) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: var(--text-main) !important;
}

#last-volume-popup h3 {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

#last-volume-popup #popup-last-volume {
    color: var(--pbb-luxe-gold-light) !important;
    -webkit-text-fill-color: var(--pbb-luxe-gold-light) !important;
}

#last-volume-popup p {
    color: rgba(248, 247, 242, 0.72) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.72) !important;
}

#guest-signup-title,
.adaptive-modal-title,
.completion-modal h2,
.meal-breakdown-logged-label,
#weekly-goals-modal h3,
#weekly-goals-modal .weekly-goal-category-title,
#weekly-goals-modal .weekly-goal-selected-row [style*="color:#0f172a"],
#weekly-goals-modal .weekly-goal-selected-row [style*="color: #0f172a"] {
    color: #fffaf2 !important;
}

#guest-signup-message,
#guest-signup-modal button[onclick*="closeGuestSignupModal"],
.adaptive-modal-body,
.adaptive-modal p,
.adaptive-modal-cancel,
#weekly-goals-modal p,
#weekly-goals-modal .weekly-goal-chip-wrap span,
#weekly-goals-modal .weekly-goal-stepper span {
    color: rgba(248, 243, 255, 0.68) !important;
}

#weekly-goals-modal .weekly-goal-category,
#weekly-goals-modal .weekly-goal-choice {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: var(--text-main) !important;
    box-shadow: 0 14px 30px rgba(5, 2, 10, 0.2) !important;
}

#weekly-goals-modal .weekly-goal-choice strong {
    color: #fffaf2 !important;
}

#weekly-goals-modal .weekly-goal-choice span {
    color: rgba(248, 243, 255, 0.68) !important;
}

#weekly-goals-modal .weekly-goal-choice.selected {
    background: rgba(245, 217, 138, 0.13) !important;
    border-color: var(--goal-accent) !important;
}

#weekly-goals-modal .weekly-goal-choice-pill,
#weekly-goals-modal .weekly-goal-target-chip,
#weekly-goals-modal .weekly-goal-stepper input {
    background: rgba(255, 255, 255, 0.09) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
}

#weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg,#ffffff"],
#weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg,#ffffff"],
#weekly-goals-modal .weekly-goal-sheet [style*="background:white"],
#weekly-goals-modal .weekly-goal-sheet [style*="background: white"] {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: var(--text-main) !important;
}

#weekly-goals-modal .weekly-goal-sheet [style*="color:#0f172a"],
#weekly-goals-modal .weekly-goal-sheet [style*="color: #0f172a"] {
    color: #fffaf2 !important;
}

#weekly-goals-modal .weekly-goal-sheet [style*="color:#64748b"],
#weekly-goals-modal .weekly-goal-sheet [style*="color: #64748b"],
#weekly-goals-modal .weekly-goal-sheet [style*="color:#475569"],
#weekly-goals-modal .weekly-goal-sheet [style*="color: #475569"] {
    color: rgba(248, 243, 255, 0.66) !important;
}

#weekly-goals-modal .weekly-goal-sheet > div[style*="position:sticky"][style*="bottom:0"] {
    background: rgba(18, 11, 31, 0.96) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    backdrop-filter: blur(14px) saturate(124%);
    -webkit-backdrop-filter: blur(14px) saturate(124%);
}

#weekly-goals-modal .weekly-goal-target-chip.selected {
    background: var(--goal-gradient) !important;
    color: white !important;
}

.app-header,
.bottom-nav,
#home-friends-pill,
#view-profile .profile-header,
#view-profile .settings-card,
#view-profile > div[style*="padding: 0 25px"] > div,
#view-profile > div[style*="margin-top:30px"][style*="background:#f8fafc"],
#view-profile > div[style*="margin-top:30px"][style*="background: #f8fafc"],
#view-workout-builder > div[style*="position: sticky"],
#view-program-builder > div[style*="position: sticky"],
#view-workout-builder > div[style*="padding: 20px"] > div[style*="border: 1px solid #e2e8f0"],
#view-workout-builder > div[style*="padding: 20px"] > div > div[style*="border: 1px solid #e2e8f0"],
#view-program-builder > div[style*="padding: 20px"] > div,
#builder-library-list > div,
#program-weekly-schedule > div {
    background: var(--pbb-widget-glass) !important;
    border-color: var(--pbb-widget-glass-border) !important;
    color: #fffaf2 !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.38) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

#view-profile .settings-card > div:first-child,
#view-profile .setting-row,
#view-profile [id^="settings-"],
#view-profile [style*="border-bottom:1px solid #f1f5f9"],
#view-profile [style*="border-bottom: 1px solid #f1f5f9"],
#view-profile [style*="border-top:1px solid #f1f5f9"],
#view-profile [style*="border-top: 1px solid #f1f5f9"] {
    border-color: rgba(255, 255, 255, 0.12) !important;
}

#view-profile .settings-card > div:first-child,
#view-profile #meal-reminder-times,
#view-profile #active-reminders-status,
#view-profile [style*="background:#f8f9fa"],
#view-profile [style*="background: #f8f9fa"],
#view-profile [style*="background:#f8fafc"],
#view-profile [style*="background: #f8fafc"],
#view-workout-builder [style*="background: #f8fafc"],
#view-workout-builder [style*="background:#f8fafc"],
#view-workout-builder [style*="background: white"],
#view-workout-builder [style*="background:white"],
#view-program-builder [style*="background: #f8fafc"],
#view-program-builder [style*="background:#f8fafc"],
#view-program-builder [style*="background: white"],
#view-program-builder [style*="background:white"],
#program-weekly-schedule [style*="background: white"],
#program-weekly-schedule [style*="background:white"] {
    background: var(--pbb-widget-glass-soft) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #fffaf2 !important;
}

#view-profile button[style*="background:white"],
#view-profile button[style*="background: white"],
#view-profile button[style*="background:#f1f5f9"],
#view-profile button[style*="background: #f1f5f9"],
#view-workout-builder button[style*="background:white"],
#view-workout-builder button[style*="background: white"],
#view-workout-builder button[style*="background:#f1f5f9"],
#view-workout-builder button[style*="background: #f1f5f9"],
#view-program-builder button[style*="background:white"],
#view-program-builder button[style*="background: white"],
#view-program-builder button[style*="background:#f1f5f9"],
#view-program-builder button[style*="background: #f1f5f9"],
#workout-picker-modal button[style*="background: #f1f5f9"],
#workout-subcategory-picker button[style*="background: #f1f5f9"],
#calendar-workout-action-modal button[style*="background: #f1f5f9"],
#replacement-picker-modal button[style*="background: #f1f5f9"],
#calendar-activity-modal button[style*="background: #f1f5f9"],
#replacement-subcategory-modal button[style*="background: #f1f5f9"],
#replacement-duration-modal button[style*="background: #f1f5f9"] {
    background: var(--pbb-widget-glass-soft) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    color: #f5d98a !important;
}

#builder-search,
#program-name-input,
#theme-selector,
#view-profile input[type="time"],
#calendar-activity-name-input,
#macro-settings-modal-overlay input[type="number"],
#macro-settings-modal-overlay input[type="text"] {
    background: var(--pbb-widget-glass-soft) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    color: #fffaf2 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

#builder-search::placeholder,
#program-name-input::placeholder,
#calendar-activity-name-input::placeholder {
    color: rgba(248, 243, 255, 0.48) !important;
}

#view-workout-builder .filter-chip,
#view-program-builder .duration-btn,
.calendar-activity-intensity-btn,
.calendar-activity-weeks-btn,
.duration-option-btn {
    background: var(--pbb-widget-glass-soft) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    color: rgba(248, 243, 255, 0.74) !important;
}

#view-workout-builder .filter-chip[style*="var(--primary)"],
#view-program-builder .duration-btn.selected,
#view-program-builder .duration-btn[style*="var(--primary)"],
.calendar-activity-intensity-btn.selected,
.calendar-activity-weeks-btn.selected,
.duration-option-btn.selected,
.duration-option-btn[style*="var(--primary)"] {
    background: var(--pbb-widget-green-soft) !important;
    border-color: rgba(216, 178, 94, 0.55) !important;
    color: #f5d98a !important;
}

#builder-library-list > div[style*="var(--primary)"],
#builder-library-list > div[style*="#f0fdf4"],
#builder-library-list > div[style*="rgb(240, 253, 244)"] {
    background: var(--pbb-widget-green-soft) !important;
    border-color: rgba(216, 178, 94, 0.55) !important;
}

#builder-library-list > div > div,
#view-workout-builder [style*="color:var(--text-main)"],
#view-workout-builder [style*="color: var(--text-main)"],
#view-program-builder [style*="color:var(--text-main)"],
#view-program-builder [style*="color: var(--text-main)"],
#view-profile [style*="color:var(--text-main)"],
#view-profile [style*="color: var(--text-main)"],
#workout-picker-modal [style*="color: var(--text-main)"],
#workout-subcategory-picker [style*="color: var(--text-main)"],
#calendar-workout-action-modal [style*="color: var(--text-main)"],
#replacement-picker-modal [style*="color: var(--text-main)"],
#calendar-activity-modal [style*="color: var(--text-main)"],
#replacement-subcategory-modal [style*="color: var(--text-main)"],
#replacement-duration-modal [style*="color: var(--text-main)"] {
    color: #fffaf2 !important;
}

#view-workout-builder [style*="color:#334155"],
#view-workout-builder [style*="color: #334155"],
#view-workout-builder [style*="color:#64748b"],
#view-workout-builder [style*="color: #64748b"],
#view-workout-builder [style*="color:var(--text-muted)"],
#view-workout-builder [style*="color: var(--text-muted)"],
#view-program-builder [style*="color:var(--text-muted)"],
#view-program-builder [style*="color: var(--text-muted)"],
#view-profile [style*="color:var(--text-muted)"],
#view-profile [style*="color: var(--text-muted)"],
#workout-picker-modal [style*="color: var(--text-muted)"],
#workout-subcategory-picker [style*="color: var(--text-muted)"],
#calendar-workout-action-modal [style*="color: var(--text-muted)"],
#replacement-picker-modal [style*="color: var(--text-muted)"],
#calendar-activity-modal [style*="color: var(--text-muted)"],
#replacement-subcategory-modal [style*="color: var(--text-muted)"],
#replacement-duration-modal [style*="color: var(--text-muted)"] {
    color: rgba(248, 243, 255, 0.64) !important;
}

#view-workout-builder svg,
#view-program-builder svg,
#view-profile svg,
#workout-picker-modal svg,
#workout-subcategory-picker svg,
#calendar-workout-action-modal svg,
#replacement-picker-modal svg,
#calendar-activity-modal svg,
#replacement-subcategory-modal svg,
#replacement-duration-modal svg {
    fill: rgba(248, 243, 255, 0.72) !important;
}

#builder-floating-action,
#view-program-builder > div[style*="position: fixed"][style*="bottom: 0"] {
    background: rgba(0, 0, 0, 0.86) !important;
    border-top: 1px solid var(--pbb-widget-glass-border) !important;
    box-shadow: 0 -18px 42px rgba(0, 0, 0, 0.48) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
    padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
}

#builder-floating-action button:first-child {
    background: var(--pbb-widget-glass-soft) !important;
    border-color: rgba(216, 178, 94, 0.44) !important;
    color: #f5d98a !important;
}

#builder-floating-action button:last-child,
#save-program-btn,
#view-profile button[style*="background:var(--primary)"],
#view-profile button[style*="background: var(--primary)"] {
    background: linear-gradient(135deg, rgba(245, 217, 138, 0.95), rgba(216, 178, 94, 0.92)) !important;
    color: #07130d !important;
    box-shadow: 0 12px 28px rgba(216, 178, 94, 0.18) !important;
}

#workout-picker-modal,
#workout-subcategory-picker,
#calendar-workout-action-modal,
#replacement-picker-modal,
#calendar-activity-modal,
#replacement-subcategory-modal,
#replacement-duration-modal,
#workout-variations-modal,
#workout-exercises-modal {
    background: rgba(3, 1, 8, 0.62) !important;
    backdrop-filter: blur(14px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(118%) !important;
}

#workout-picker-modal > div,
#workout-subcategory-picker > div,
#calendar-workout-action-modal > div,
#replacement-picker-modal > div,
#calendar-activity-modal > div,
#replacement-subcategory-modal > div,
#replacement-duration-modal > div,
#workout-variations-modal > div,
#workout-exercises-modal > div {
    background: var(--pbb-widget-glass) !important;
    border: 1px solid var(--pbb-widget-glass-border) !important;
    color: #fffaf2 !important;
    box-shadow: 0 -26px 70px rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

#workout-picker-modal [style*="background: #f1f5f9"],
#workout-picker-modal [style*="background:#f1f5f9"],
#workout-subcategory-picker [style*="background: #f1f5f9"],
#workout-subcategory-picker [style*="background:#f1f5f9"],
#calendar-workout-action-modal [style*="background: #f8fafc"],
#calendar-workout-action-modal [style*="background:#f8fafc"],
#calendar-workout-action-modal [style*="background: white"],
#calendar-workout-action-modal [style*="background:white"],
#replacement-picker-modal [style*="background: #f1f5f9"],
#replacement-picker-modal [style*="background:#f1f5f9"],
#calendar-activity-modal [style*="background: #f8fafc"],
#calendar-activity-modal [style*="background:#f8fafc"],
#calendar-activity-modal [style*="background: white"],
#calendar-activity-modal [style*="background:white"],
#replacement-subcategory-modal [style*="background: #f1f5f9"],
#replacement-subcategory-modal [style*="background:#f1f5f9"],
#replacement-duration-modal [style*="background: #f8fafc"],
#replacement-duration-modal [style*="background:#f8fafc"],
#replacement-duration-modal [style*="background: white"],
#replacement-duration-modal [style*="background:white"] {
    background: var(--pbb-widget-glass-soft) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #fffaf2 !important;
}

#macro-settings-modal-overlay [style*="background:#f8fafc"],
#macro-settings-modal-overlay [style*="background: #f8fafc"],
#macro-settings-modal-overlay [style*="background:white"],
#macro-settings-modal-overlay [style*="background: white"] {
    background: var(--pbb-widget-glass-soft) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #fffaf2 !important;
}

#macro-settings-modal-overlay [style*="linear-gradient(135deg, #e0f2f1"],
#macro-settings-modal-overlay [style*="linear-gradient(135deg,#e0f2f1"],
#macro-settings-modal-overlay [style*="linear-gradient(135deg, #e8f5e9"],
#macro-settings-modal-overlay [style*="linear-gradient(135deg,#e8f5e9"] {
    background: rgba(216, 178, 94, 0.14) !important;
    border-color: rgba(216, 178, 94, 0.34) !important;
}

#macro-settings-modal-overlay label,
#macro-settings-modal-overlay [style*="color:var(--text-main)"],
#macro-settings-modal-overlay [style*="color: var(--text-main)"] {
    color: #fffaf2 !important;
}

#macro-settings-modal-overlay [style*="color:var(--text-muted)"],
#macro-settings-modal-overlay [style*="color: var(--text-muted)"] {
    color: rgba(248, 243, 255, 0.66) !important;
}

#action-modal-replacement-notice {
    background: rgba(216, 178, 94, 0.14) !important;
    border-color: rgba(216, 178, 94, 0.34) !important;
}

/* Obsidian/gold pass: keep the new theme expensive, not purple. */
body,
.container,
#view-dashboard,
#view-profile,
.app-view {
    background:
        radial-gradient(circle at 14% 0%, rgba(216, 178, 94, 0.14), transparent 28%),
        radial-gradient(circle at 92% 10%, rgba(255, 255, 255, 0.055), transparent 28%),
        linear-gradient(180deg, #101010 0%, #050505 48%, #000000 100%) !important;
}

.app-header,
.bottom-nav {
    background: rgba(5, 5, 5, 0.92) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
}

.app-header h1,
.app-header h2,
.app-header h3,
.app-logo,
#view-profile h3 {
    color: #f8f7f2 !important;
}

.nav-item.active {
    color: #f5d98a !important;
}

.header-msg-icon,
.profile-icon {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
    color: #ffffff !important;
}

#daily-weigh-in-card,
#daily-weigh-in-done-card,
#mood-checkin-card,
#mood-checkin-done-card,
#daily-quiz-card,
#daily-quiz-done-card,
#weekly-goals-card,
#home-challenges-empty,
.calorie-widget-card,
#fitbit-performance-card {
    background:
        radial-gradient(circle at 88% 12%, rgba(245, 217, 138, 0.18), transparent 25%),
        linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
}

#pwa-install-banner {
    background:
        radial-gradient(circle at 16% 0%, rgba(245, 217, 138, 0.18), transparent 34%),
        linear-gradient(135deg, #151515 0%, #050505 100%) !important;
    border-bottom: 1px solid rgba(245, 217, 138, 0.18) !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.46) !important;
}

#pwa-install-banner .pwa-install-btn {
    background: linear-gradient(135deg, #f8f7f2, #d8b25e) !important;
    color: #090909 !important;
}

#tamagotchi-fallback,
#tamagotchi-stats-bar {
    background:
        radial-gradient(circle at 50% 0%, rgba(245, 217, 138, 0.12), transparent 32%),
        linear-gradient(180deg, #151515 0%, #080808 100%) !important;
}

#tamagotchi-widget-container {
    background-color: #080808 !important;
}

#home-challenges-empty {
    background:
        radial-gradient(circle at 18% 16%, rgba(245, 217, 138, 0.3), transparent 30%),
        linear-gradient(135deg, #241d10 0%, #111111 54%, #050505 100%) !important;
}

#view-profile .profile-photo-container {
    background: linear-gradient(135deg, #171717, #2a2418) !important;
    border: 1px solid rgba(245, 217, 138, 0.26) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.46) !important;
}

#profile-default-initial {
    color: #f5d98a !important;
}

#btn-edit-profile,
#view-profile button[style*="background:white"],
#view-profile button[style*="background: white"],
#view-profile button[style*="background:#f1f5f9"],
#view-profile button[style*="background: #f1f5f9"] {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(245, 217, 138, 0.22) !important;
    color: #f8f7f2 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 12px 26px rgba(0, 0, 0, 0.24) !important;
}

#btn-edit-profile {
    background: linear-gradient(135deg, rgba(245, 217, 138, 0.2), rgba(255, 255, 255, 0.08)) !important;
    color: #f5d98a !important;
}

#view-profile button[style*="background:var(--primary)"],
#view-profile button[style*="background: var(--primary)"],
#push-notif-settings-btn,
#settings-clear-cache-btn,
#settings-change-password button {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 48%, #9f7628 100%) !important;
    color: #090909 !important;
    border: 1px solid rgba(245, 217, 138, 0.48) !important;
    box-shadow: 0 12px 28px rgba(216, 178, 94, 0.22) !important;
}

#view-profile button svg {
    fill: currentColor !important;
    stroke: currentColor !important;
}

#theme-selector,
#view-profile input[type="time"],
#builder-search,
#program-name-input {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(245, 217, 138, 0.24) !important;
    color: #f8f7f2 !important;
}

#push-notif-refresh-btn {
    color: #f5d98a !important;
    border-color: rgba(245, 217, 138, 0.36) !important;
}

#profile-equipment-display,
#profile-diet-display,
#view-profile [style*="color:var(--primary)"],
#view-profile [style*="color: var(--primary)"] {
    color: #f5d98a !important;
}

#challenge-type-picker,
#create-challenge-modal,
#challenge-results-modal,
#challenge-leaderboard-modal {
    background: rgba(0, 0, 0, 0.82) !important;
    backdrop-filter: blur(14px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(118%) !important;
}

#challenge-type-picker > div,
#create-challenge-modal > div,
#challenge-results-modal > div,
#challenge-leaderboard-modal {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.18), transparent 30%),
        linear-gradient(145deg, #1a1a1a 0%, #0a0a0a 55%, #000000 100%) !important;
    border: 1px solid rgba(245, 217, 138, 0.2) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.62), 0 0 42px rgba(216, 178, 94, 0.12) !important;
}

#challenge-type-picker h3,
#create-challenge-modal h3,
#challenge-result-headline,
#challenge-result-winner-name {
    color: #f5d98a !important;
    text-shadow: 0 0 24px rgba(216, 178, 94, 0.26) !important;
}

.challenge-type-card {
    background:
        radial-gradient(circle at 80% 0%, rgba(245, 217, 138, 0.14), transparent 36%),
        rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(245, 217, 138, 0.22) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

.challenge-type-card:hover,
.challenge-type-card:active {
    border-color: rgba(245, 217, 138, 0.46) !important;
    background:
        radial-gradient(circle at 80% 0%, rgba(245, 217, 138, 0.24), transparent 36%),
        rgba(255, 255, 255, 0.1) !important;
}

#create-challenge-modal input,
#create-challenge-modal [style*="background: rgba(255,255,255,0.08)"],
#create-challenge-modal [style*="background: rgba(255,255,255,0.06)"],
#create-challenge-modal [style*="background: rgba(255,255,255,0.05)"],
#challenge-friends-list {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
    color: #f8f7f2 !important;
}

#create-challenge-modal [style*="rgba(59,130,246"],
#create-challenge-modal [style*="rgba(168,85,247"],
#challenge-random-drop-info {
    background: rgba(216, 178, 94, 0.1) !important;
    border-color: rgba(216, 178, 94, 0.24) !important;
}

#create-challenge-modal [style*="color: #60a5fa"],
#create-challenge-modal [style*="color: #93c5fd"],
#create-challenge-modal [style*="color: #c084fc"],
#create-challenge-modal [style*="color: #4ade80"],
#create-challenge-modal [style*="color:#60a5fa"],
#create-challenge-modal [style*="color:#93c5fd"],
#create-challenge-modal [style*="color:#c084fc"],
#create-challenge-modal [style*="color:#4ade80"] {
    color: #f5d98a !important;
}

.create-challenge-bet-btn {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
    color: #f8f7f2 !important;
}

.create-challenge-bet-btn.active {
    background: linear-gradient(135deg, rgba(245, 217, 138, 0.24), rgba(216, 178, 94, 0.14)) !important;
    border-color: rgba(245, 217, 138, 0.54) !important;
    color: #f5d98a !important;
}

#create-challenge-btn,
#challenge-results-modal button[onclick*="closeChallengeResults"],
#challenge-type-picker button[onclick*="closeChallengeTypePicker"] + button {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 48%, #9f7628 100%) !important;
    color: #090909 !important;
    box-shadow: 0 14px 32px rgba(216, 178, 94, 0.24) !important;
}

@media (max-width: 520px) {
    .modal-overlay,
    .onboarding-overlay,
    .completion-modal-overlay,
    .adaptive-modal-overlay,
    #guest-signup-modal,
    #change-password-modal-overlay,
    #health-connect-modal {
        padding: calc(16px + env(safe-area-inset-top, 0px)) 16px calc(16px + env(safe-area-inset-bottom, 0px)) 16px !important;
    }
}

/* App-wide obsidian and gold sweep. This sits last because several older
   widgets still paint themselves with inline purple styles. */
html,
:root {
    --primary: #d8b25e !important;
    --primary-light: #f5d98a !important;
    --secondary: #f8f7f2 !important;
    --secondary-light: #ffffff !important;
    --accent-green: rgba(216, 178, 94, 0.14) !important;
    --bg: #050505 !important;
    --surface: rgba(13, 13, 13, 0.94) !important;
    --text-main: #f8f7f2 !important;
    --text-muted: rgba(248, 247, 242, 0.66) !important;
    --chat-bg-user: #d8b25e !important;
    --chat-text-user: #090909 !important;
    --chat-bg-coach: rgba(255, 255, 255, 0.08) !important;
    --chat-text-coach: #f8f7f2 !important;
    --chat-border-coach: rgba(245, 217, 138, 0.18) !important;
}

body,
.container,
.app-view,
#view-dashboard,
#view-meals,
#meals-content-container,
#calorie-tracker,
#movement-tab,
#view-log-activity,
#view-workout-library,
#view-prebuilt-programs,
#view-workout-subcategories,
#view-workout-list,
#view-workout-overview,
#view-workout-builder,
#view-program-builder,
#view-your-workouts,
#view-week-workouts,
#view-week-session,
#view-workout-journal-detail,
#view-learning,
#view-cycle,
#view-friends,
#view-user-profile,
#view-profile {
    background: linear-gradient(180deg, #101010 0%, #050505 52%, #000000 100%) !important;
    color: #f8f7f2 !important;
}

.app-header,
.bottom-nav,
.app-view > div[style*="position: sticky"],
.app-view > div[style*="position:sticky"] {
    background: rgba(5, 5, 5, 0.92) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.44) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

.nav-item {
    color: rgba(248, 247, 242, 0.58) !important;
}

.nav-item.active,
.profile-icon,
.header-msg-icon {
    color: #ffffff !important;
}

.nav-item.active svg,
.nav-item.active path,
.profile-icon svg,
.header-msg-icon svg {
    fill: currentColor !important;
    stroke: currentColor !important;
}

.modal-overlay,
.onboarding-overlay,
.completion-modal-overlay,
.adaptive-modal-overlay,
#guest-signup-modal,
#home-friends-modal,
#change-password-modal-overlay,
#health-connect-modal,
#weekly-goals-modal,
#share-referral-modal,
#store-review-modal,
#last-volume-popup,
.meal-breakdown-popup,
#feed-messages-panel,
#add-friend-modal,
#create-group-chat-modal,
#story-choice-modal,
#story-upload-modal,
#workout-picker-modal,
#workout-subcategory-picker,
#calendar-workout-action-modal,
#replacement-picker-modal,
#calendar-activity-modal,
#replacement-subcategory-modal,
#replacement-duration-modal,
#workout-variations-modal,
#workout-exercises-modal,
#challenge-type-picker,
#create-challenge-modal,
#challenge-results-modal,
#challenge-leaderboard-modal,
#macro-settings-modal-overlay {
    background: rgba(0, 0, 0, 0.84) !important;
    backdrop-filter: blur(14px) saturate(116%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(116%) !important;
}

.modal-content,
.onboarding-modal,
.completion-modal,
.adaptive-modal,
#guest-signup-modal > div,
#home-friends-modal > div,
#change-password-modal-overlay > div,
#health-connect-modal > div,
#share-referral-modal > div,
#store-review-modal > div,
#last-volume-popup > div,
.meal-breakdown-card,
#feed-messages-panel-content,
#add-friend-modal > div,
#create-group-chat-modal > div,
#story-choice-modal > div,
#story-upload-modal > div,
#workout-picker-modal > div,
#workout-subcategory-picker > div,
#calendar-workout-action-modal > div,
#replacement-picker-modal > div,
#calendar-activity-modal > div,
#replacement-subcategory-modal > div,
#replacement-duration-modal > div,
#workout-variations-modal > div,
#workout-exercises-modal > div,
#challenge-type-picker > div,
#create-challenge-modal > div,
#challenge-results-modal > div,
#challenge-leaderboard-modal,
#macro-settings-modal-overlay > div {
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.97), rgba(5, 5, 5, 0.98)) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.62) !important;
}

#daily-weigh-in-card,
#daily-weigh-in-done-card,
#weekly-progress-photo-card,
#weekly-progress-photo-done-card,
#mood-checkin-card,
#mood-checkin-done-card,
#fitness-diary-card,
#fitness-diary-done-card,
#daily-quiz-card,
#daily-quiz-done-card,
#daily-meal-tip-card,
#daily-workout-trend-card,
#movement-workout-trend-card,
#home-challenges-empty,
#fitbit-performance-card,
#weekly-goals-card,
.calorie-widget-card,
.calorie-tracker-summary,
.nutrition-score-card,
.streak-tracker-card,
.weekly-metrics-card,
.meal-journal-card,
.multi-week-card,
.meal-pattern-card,
#ai-meal-plan-container,
#form-check-quick-card,
#movement-grid-container > div,
#build-custom-card,
#workout-library-card,
.health-iq-card,
#cycle-hero-card,
.calendar-day-row,
.monthly-calendar-container,
#feed-post-incentive,
#friends-feed-empty,
#group-chats-empty,
#friends-cards-container,
#user-profile-posts-empty,
.feed-post-card,
#view-profile .profile-header,
#view-profile .settings-card,
#view-profile > div[style*="padding: 0 25px"] > div,
#view-user-profile [style*="background: white"],
#view-user-profile [style*="background:white"],
#active-games-container > div,
#builder-library-list > div,
#program-weekly-schedule > div {
    background: linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
}

.app-view [style*="background: white"],
.app-view [style*="background:white"],
.app-view [style*="background: #ffffff"],
.app-view [style*="background:#ffffff"],
.app-view [style*="background: #fff"],
.app-view [style*="background:#fff"],
.app-view [style*="background: #f8fafc"],
.app-view [style*="background:#f8fafc"],
.app-view [style*="background: #f8f9fa"],
.app-view [style*="background:#f8f9fa"],
.app-view [style*="background: #f1f5f9"],
.app-view [style*="background:#f1f5f9"],
.modal-content [style*="background: white"],
.modal-content [style*="background:white"],
#macro-settings-modal-overlay [style*="background:white"],
#macro-settings-modal-overlay [style*="background: white"] {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
}

#feed-composer-share-menu,
#feed-composer-media-source-menu {
    background: rgba(255, 255, 255, 0.98) !important;
    border-color: #e5e7eb !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

#feed-composer-share-menu button,
#feed-composer-media-source-menu button,
#feed-composer-share-menu button *,
#feed-composer-media-source-menu button * {
    background: #ffffff !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

#feed-composer-share-menu button + button,
#feed-composer-media-source-menu button + button {
    border-top-color: #f1f5f9 !important;
}

.app-view [style*="background"][style*="#6366f1"],
.app-view [style*="background"][style*="#8b5cf6"],
.app-view [style*="background"][style*="#7c3aed"],
.app-view [style*="background"][style*="#a855f7"],
.app-view [style*="background"][style*="#c084fc"],
.app-view [style*="background"][style*="#4f46e5"],
.app-view [style*="background"][style*="#6b21a8"],
.app-view [style*="background"][style*="#9333ea"],
.app-view [style*="background"][style*="rgba(99,102,241"],
.app-view [style*="background"][style*="rgba(124,58,237"],
.app-view [style*="background"][style*="rgba(139,92,246"],
.app-view [style*="background"][style*="rgba(168,85,247"],
.app-view [style*="background"][style*="rgba(192,132,252"],
.modal-overlay [style*="background"][style*="#6366f1"],
.modal-overlay [style*="background"][style*="#8b5cf6"],
.modal-overlay [style*="background"][style*="#7c3aed"],
.modal-overlay [style*="background"][style*="#a855f7"],
#challenge-type-picker [style*="background"][style*="#6366f1"],
#challenge-type-picker [style*="background"][style*="#7c3aed"],
#create-challenge-modal [style*="background"][style*="#6366f1"],
#create-challenge-modal [style*="background"][style*="#7c3aed"],
#create-challenge-modal [style*="background"][style*="rgba(124,58,237"],
#create-challenge-modal [style*="background"][style*="rgba(168,85,247"] {
    background: linear-gradient(135deg, #1c1c1c 0%, #0b0b0b 62%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.36) !important;
}

.app-view [style*="color: #6366f1"],
.app-view [style*="color:#6366f1"],
.app-view [style*="color: #8b5cf6"],
.app-view [style*="color:#8b5cf6"],
.app-view [style*="color: #7c3aed"],
.app-view [style*="color:#7c3aed"],
.app-view [style*="color: #a855f7"],
.app-view [style*="color:#a855f7"],
.app-view [style*="color: #c084fc"],
.app-view [style*="color:#c084fc"],
.app-view [style*="color: #6b21a8"],
.app-view [style*="color:#6b21a8"],
.app-view [style*="color: #9333ea"],
.app-view [style*="color:#9333ea"],
#challenge-type-picker [style*="color: #c084fc"],
#create-challenge-modal [style*="color: #c084fc"],
#create-challenge-modal [style*="color:#c084fc"] {
    color: #f5d98a !important;
}

.app-view [style*="border"][style*="#6366f1"],
.app-view [style*="border"][style*="#8b5cf6"],
.app-view [style*="border"][style*="#7c3aed"],
.app-view [style*="border"][style*="#a855f7"],
.app-view [style*="border"][style*="rgba(99,102,241"],
.app-view [style*="border"][style*="rgba(124,58,237"],
.app-view [style*="border"][style*="rgba(139,92,246"],
.app-view [style*="border"][style*="rgba(168,85,247"],
#create-challenge-modal [style*="border"][style*="rgba(124,58,237"],
#create-challenge-modal [style*="border"][style*="rgba(168,85,247"] {
    border-color: rgba(245, 217, 138, 0.24) !important;
}

.app-view svg[style*="fill: #6366f1"],
.app-view svg[style*="fill:#6366f1"],
.app-view svg[style*="fill: #8b5cf6"],
.app-view svg[style*="fill:#8b5cf6"],
.app-view svg[style*="fill: #7c3aed"],
.app-view svg[style*="fill:#7c3aed"],
.app-view svg[style*="fill: rgba(139,92,246"],
.app-view svg[style*="fill:rgba(139,92,246"] {
    fill: #f5d98a !important;
}

.ai-msg-user .ai-msg-bubble,
#guided-tour-bubble .tour-next,
.camera-btn-widget,
#view-friends button[onclick*="openStoryCamera"],
#friends-feed-empty button,
#story-upload-button,
#preview-post-btn,
#post-story-btn,
#builder-floating-action button:last-child,
#save-program-btn,
#create-challenge-btn,
#share-nutrition-btn,
button[style*="background:var(--primary)"],
button[style*="background: var(--primary)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 52%, #9f7628 100%) !important;
    color: #090909 !important;
    border-color: rgba(245, 217, 138, 0.3) !important;
    box-shadow: 0 14px 32px rgba(216, 178, 94, 0.18) !important;
}

.calendar-day-row.is-today,
.monthly-day-cell.is-today,
.weekly-goal-target-chip.selected,
.create-challenge-bet-btn.active,
.duration-option-btn.selected,
.duration-option-btn[style*="var(--primary)"],
.calendar-activity-intensity-btn.selected,
.calendar-activity-weeks-btn.selected {
    background: rgba(216, 178, 94, 0.16) !important;
    border-color: rgba(245, 217, 138, 0.48) !important;
    color: #f5d98a !important;
}

h1,
h2,
h3,
h4,
.app-logo,
.calorie-current,
.macro-value,
.calorie-widget-title h3,
.macro-detail-name,
.macro-detail-value {
    color: #f8f7f2 !important;
}

p,
.calorie-widget-meta,
.nutrition-period-date,
.calorie-separator,
.calorie-goal,
.calorie-unit,
.macro-label,
.tracker-micro-header,
.weekly-day-calories,
.cal-day-name,
.monthly-calendar-weekdays span,
.monthly-day-workout {
    color: rgba(248, 247, 242, 0.66) !important;
}

#tamagotchi-stats-bar,
#battle-stats-row,
.battle-stats-row {
    background: linear-gradient(180deg, #151515 0%, #080808 100%) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.42) !important;
}

.battle-stat,
.story-battle-stat {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
    color: #f8f7f2 !important;
}

.battle-stat-bar,
.story-stat-bar {
    background: rgba(255, 255, 255, 0.09) !important;
}

.battle-stat-fill,
.story-stat-fill,
.battle-stat.str .battle-stat-fill,
.battle-stat.hp .battle-stat-fill,
.battle-stat.mana .battle-stat-fill,
.story-stat-fill.str,
.story-stat-fill.hp,
.story-stat-fill.mana {
    background: linear-gradient(90deg, #f5d98a, #d8b25e) !important;
}

.battle-stat-value,
.battle-stat.str .battle-stat-value,
.battle-stat.hp .battle-stat-value,
.battle-stat.mana .battle-stat-value {
    color: #f8f7f2 !important;
}

.pref-wizard-overlay {
    background: rgba(0, 0, 0, 0.84) !important;
    backdrop-filter: blur(14px) saturate(116%);
    -webkit-backdrop-filter: blur(14px) saturate(116%);
}

.pref-wizard-modal {
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.97), rgba(5, 5, 5, 0.98)) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.62) !important;
}

.pref-wizard-header {
    background: linear-gradient(135deg, #1b1b1b 0%, #080808 58%, #000000 100%) !important;
    border-bottom: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
}

.pref-wizard-step h3,
.pref-option .option-label,
.pref-wizard-progress .step-dot.completed {
    color: #f5d98a !important;
}

.pref-option,
.pref-checkbox,
.pref-wizard-btn.secondary {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: #f8f7f2 !important;
}

.pref-option.selected,
.pref-option:hover,
.pref-checkbox.selected,
.pref-checkbox:hover {
    background: rgba(216, 178, 94, 0.16) !important;
    border-color: rgba(245, 217, 138, 0.42) !important;
}

.pref-option .option-desc,
.pref-wizard-header p {
    color: rgba(248, 247, 242, 0.66) !important;
}

.pref-wizard-footer {
    border-color: rgba(245, 217, 138, 0.14) !important;
}

.pref-wizard-btn.primary {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 52%, #9f7628 100%) !important;
    color: #090909 !important;
}

.app-view [style*="background"][style*="#1a1a2e"],
.app-view [style*="background"][style*="#16213e"],
.app-view [style*="background"][style*="#0f3460"],
.app-view [style*="background"][style*="#3b82f6"],
.app-view [style*="background"][style*="#2563eb"],
.app-view [style*="background"][style*="rgba(59,130,246"],
.modal-overlay [style*="background"][style*="#1a1a2e"],
.modal-overlay [style*="background"][style*="#16213e"],
.modal-overlay [style*="background"][style*="#0f3460"],
.modal-overlay [style*="background"][style*="#3b82f6"],
.modal-overlay [style*="background"][style*="#2563eb"],
body > div[id*="modal"] [style*="background"][style*="#1a1a2e"],
body > div[id*="modal"] [style*="background"][style*="#16213e"],
body > div[id*="modal"] [style*="background"][style*="#0f3460"],
body > div[id*="modal"] [style*="background"][style*="#3b82f6"],
body > div[id*="modal"] [style*="background"][style*="#2563eb"] {
    background: linear-gradient(135deg, #1c1c1c 0%, #0b0b0b 62%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #f8f7f2 !important;
}

.app-view [style*="color: #3b82f6"],
.app-view [style*="color:#3b82f6"],
.app-view [style*="color: #2563eb"],
.app-view [style*="color:#2563eb"],
body > div[id*="modal"] [style*="color: #3b82f6"],
body > div[id*="modal"] [style*="color:#3b82f6"],
body > div[id*="modal"] [style*="color: #2563eb"],
body > div[id*="modal"] [style*="color:#2563eb"] {
    color: #f5d98a !important;
}

.app-view [style*="border"][style*="#3b82f6"],
.app-view [style*="border"][style*="#2563eb"],
.app-view [style*="border"][style*="rgba(59,130,246"],
body > div[id*="modal"] [style*="border"][style*="#3b82f6"],
body > div[id*="modal"] [style*="border"][style*="#2563eb"],
body > div[id*="modal"] [style*="border"][style*="rgba(59,130,246"] {
    border-color: rgba(245, 217, 138, 0.24) !important;
}

.app-view > div[style*="position: sticky"][style*="background: white"],
.app-view > div[style*="position:sticky"][style*="background:white"],
.app-view > div[style*="position: sticky"][style*="background:white"],
.app-view > div[style*="position:sticky"][style*="background: white"] {
    background: rgba(5, 5, 5, 0.92) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.44) !important;
}

#friends-referral-banner,
#active-games-container > div[style],
#active-games-container [style*="rgba(31, 20, 45"],
#active-games-container [style*="rgba(18, 11, 31"],
#active-games-container [style*="#321a55"],
#active-games-container [style*="#4a2575"] {
    background: linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
}

#movement-grid-container > div:nth-child(1),
#movement-grid-container > div:nth-child(2),
#movement-grid-container > div:nth-child(3),
#movement-grid-container > div:nth-child(4),
#movement-grid-container > div:nth-child(5),
#movement-grid-container > div:nth-child(6),
#movement-grid-container > div:nth-child(7),
#movement-grid-container > div:nth-child(8),
#form-check-quick-card,
#today-workout-card,
#workout-library-card,
#mvmt-week-workouts-card,
.health-iq-card {
    background: linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    color: #f8f7f2 !important;
}

#weekly-goals-modal .weekly-goal-sheet > div[style*="position:sticky"][style*="bottom:0"],
#weekly-goals-modal .weekly-goal-sheet > div[style*="position: sticky"][style*="bottom:0"] {
    background: rgba(5, 5, 5, 0.94) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
}

.cohort-waiting-card,
.cohort-active-card,
.cohort-acceptance-card,
#home-challenges-list [style*="#00d4aa"],
#home-challenges-list [style*="#00a37e"],
#home-challenges-list [style*="#006d54"],
#home-challenges-list [style*="0,212,170"],
#home-challenges-list [style*="0,163,126"],
#home-challenges-list [style*="#f97316"],
#home-challenges-list [style*="#c2410c"] {
    background: linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border: 1px solid rgba(245, 217, 138, 0.18) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
    color: #f8f7f2 !important;
}

.cohort-waiting-card [style*="rgba(255,255,255,0.22)"],
.cohort-active-card [style*="rgba(255,255,255,0.22)"],
.cohort-acceptance-card [style*="rgba(255,255,255,0.22)"],
#cohort-info-hero [style*="rgba(255,255,255,0.22)"],
#cohort-info-hero [style*="rgba(0,212,170"] {
    background: rgba(216, 178, 94, 0.18) !important;
    border: 1px solid rgba(245, 217, 138, 0.24) !important;
}

#cohort-info-modal {
    background: #050505 !important;
}

#cohort-info-modal > div[style*="position: sticky"],
#cohort-info-hero {
    background: linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
}

#cohort-info-modal [style*="#1e293b"] {
    background: rgba(18, 18, 18, 0.94) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
}

#cohort-info-title,
#cohort-info-hero [style*="font-weight: 800"][style*="color: white"],
.cohort-card-title {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    font-weight: 900 !important;
    opacity: 1 !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.68) !important;
}

#cohort-info-status-line,
.cohort-card-subtitle {
    color: rgba(248, 247, 242, 0.86) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.86) !important;
    opacity: 1 !important;
}

#cohort-info-participant-list .cohort-info-participant-row {
    background: rgba(255, 255, 255, 0.035) !important;
    border: 1px solid rgba(245, 217, 138, 0.08) !important;
    border-radius: 12px !important;
    padding: 10px 12px !important;
}

#cohort-info-participant-list .cohort-info-participant-name {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
    font-weight: 850 !important;
    opacity: 1 !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.55) !important;
}

#cohort-info-participant-list .cohort-info-you-badge {
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

#cohort-info-modal [style*="rgba(165,180,252"],
#cohort-info-modal [style*="rgba(0,212,170"],
#cohort-info-modal [style*="#00d4aa"],
#cohort-info-modal [style*="#00a37e"] {
    color: #f5d98a !important;
}

#cohort-info-modal [style*="rgba(124,58,237"],
#cohort-info-modal [style*="rgba(0,212,170"],
#cohort-info-modal [style*="rgba(59,130,246"] {
    background: rgba(216, 178, 94, 0.18) !important;
}

#challenge-leaderboard-chat-card,
#lp-welcome-overlay {
    background: linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
}

#challenge-leaderboard-chat-card [style*="#0ea5e9"],
#challenge-leaderboard-chat-card [style*="#14b8a6"],
#challenge-leaderboard-chat-btn,
#lp-welcome-start-btn {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #9f7628 100%) !important;
    color: #090909 !important;
}

#feed-messages-panel,
#message-selector-modal,
#direct-message-modal,
#coach-chat-modal,
#group-chat-modal,
#create-group-chat-modal {
    background: rgba(0, 0, 0, 0.86) !important;
    backdrop-filter: blur(15px) saturate(116%) !important;
    -webkit-backdrop-filter: blur(15px) saturate(116%) !important;
}

#feed-messages-panel-content,
#message-selector-modal > div,
#direct-message-modal > div,
#coach-chat-modal > div,
#group-chat-modal > div,
#create-group-chat-modal > div {
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(5, 5, 5, 0.99)) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.62) !important;
}

#feed-messages-panel-content > div,
#message-selector-modal > div > div,
#direct-message-modal > div > div,
#coach-chat-modal > div > div,
#group-chat-modal > div > div,
#create-group-chat-modal > div > div,
#gc-members-popover > div,
#gc-chat-menu {
    background: transparent !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: #f8f7f2 !important;
}

#feed-messages-panel-content h3,
#feed-messages-panel-content h4,
#message-selector-modal h3,
#direct-message-modal [style*="color: var(--text-main)"],
#coach-chat-modal [style*="color: var(--text-main)"],
#group-chat-modal [style*="color: var(--text-main)"],
#create-group-chat-modal h3,
#create-group-chat-modal label,
#gc-chat-name,
#gc-members-popover [style*="color: #0f172a"] {
    color: #f8f7f2 !important;
}

#feed-messages-panel-content [style*="color: var(--text-muted)"],
#message-selector-modal [style*="color: var(--text-muted)"],
#direct-message-modal [style*="color: var(--text-muted)"],
#coach-chat-modal [style*="color: var(--text-muted)"],
#group-chat-modal [style*="color: var(--text-muted)"],
#create-group-chat-modal [style*="color: var(--text-muted)"],
#gc-chat-members,
#gc-members-popover [style*="color: #64748b"],
#gc-members-popover [style*="color:#64748b"] {
    color: rgba(248, 247, 242, 0.62) !important;
}

#panel-group-chats > div,
#panel-friends-list > div,
#message-selector-list > div,
.panel-friend-row,
#group-chats-container > div,
#quick-share-chats-list > div {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    border-radius: 12px !important;
    color: #f8f7f2 !important;
}

#panel-group-chats > div:hover,
#panel-friends-list > div:hover,
#message-selector-list > div:hover,
.panel-friend-row:hover {
    background: rgba(216, 178, 94, 0.14) !important;
}

#panel-group-chats [style*="linear-gradient(135deg, var(--primary), #10b981)"],
#panel-friends-list [style*="linear-gradient(135deg, var(--primary), #10b981)"],
#message-selector-list [style*="background: var(--secondary)"],
#gc-chat-icon,
#dm-recipient-photo,
#coach-chat-modal [style*="background: var(--primary)"],
#group-chat-modal [style*="background: linear-gradient(135deg, var(--primary), #10b981)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #9f7628 100%) !important;
    color: #090909 !important;
}

#feed-messages-panel-content button,
#message-selector-modal button,
#direct-message-modal button,
#coach-chat-modal button,
#group-chat-modal button,
#create-group-chat-modal button {
    border-color: rgba(245, 217, 138, 0.18) !important;
}

#feed-messages-panel-content button[style*="var(--primary)"],
#feed-messages-panel-content button[style*="#10b981"],
#message-selector-modal button[style*="var(--primary)"],
#direct-message-modal button[style*="var(--primary)"],
#coach-chat-modal button[style*="var(--primary)"],
#group-chat-modal button[style*="var(--primary)"],
#create-group-chat-modal button[style*="var(--primary)"],
#group-chat-modal button[style*="#f59e0b"],
#group-chat-modal button[style*="#eab308"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #9f7628 100%) !important;
    color: #090909 !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28) !important;
}

#feed-messages-panel-content button[style*="background: none"],
#message-selector-modal button[style*="background: none"],
#direct-message-modal button[style*="background: none"],
#coach-chat-modal button[style*="background: none"],
#group-chat-modal button[style*="background: transparent"],
#group-chat-modal button[style*="background: #f1f5f9"],
#create-group-chat-modal button[style*="background: none"],
#direct-message-modal button[style*="background: #f1f5f9"],
#coach-chat-modal button[style*="background: #f1f5f9"],
#gc-chat-menu-btn {
    background: rgba(255, 255, 255, 0.07) !important;
    color: #f8f7f2 !important;
}

#dm-messages-container,
#chat-messages-container,
#gc-messages-container,
#message-selector-list,
#create-group-chat-modal [style*="max-height: calc(85vh - 140px)"] {
    background: #070707 !important;
    color: #f8f7f2 !important;
}

#dm-input,
#coach-chat-input,
#gc-message-input,
#new-group-name,
#create-group-chat-modal input,
#direct-message-modal input[type="text"],
#coach-chat-modal input[type="text"],
#group-chat-modal input[type="text"] {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    color: #f8f7f2 !important;
}

#dm-input::placeholder,
#coach-chat-input::placeholder,
#gc-message-input::placeholder,
#new-group-name::placeholder {
    color: rgba(248, 247, 242, 0.44) !important;
}

.dm-bubble,
#dm-messages-container [style*="background: white"],
#chat-messages-container [style*="background: white"],
#gc-messages-container [style*="background: white"],
#gc-messages-container [id^="win-card-"] {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(245, 217, 138, 0.14) !important;
    color: #f8f7f2 !important;
}

#dm-messages-container .dm-bubble[style*="var(--primary)"],
#chat-messages-container [style*="var(--chat-bg-user)"],
#gc-messages-container [style*="var(--primary)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #9f7628 100%) !important;
    color: #090909 !important;
}

#gc-chat-menu button:hover,
#feed-messages-panel-content button:hover,
#direct-message-modal button:hover,
#coach-chat-modal button:hover,
#group-chat-modal button:hover {
    filter: brightness(1.06);
}

#direct-message-modal #dm-messages-container,
#coach-chat-modal #chat-messages-container,
#group-chat-modal #gc-messages-container,
#message-selector-modal #message-selector-list,
#create-group-chat-modal [style*="max-height: calc(85vh - 140px)"] {
    background: #070707 !important;
    color: #f8f7f2 !important;
}

/* Meal, workout, and game modal sweep. */
#quick-meal-text-overlay,
#quick-manual-entry-overlay,
.meal-input-modal,
.meal-text-modal,
.recent-meals-modal,
.meal-builder-modal,
.meal-builder-text-modal,
.meal-detail-popup,
.edit-items-modal,
.score-popup-overlay,
#barcode-result-modal,
#workout-rating-modal,
#quick-share-modal,
#game-challenge-modal,
#game-invite-modal,
#game-result-overlay,
#coin-shop-modal,
#challenge-pass-modal,
#rare-rewards-modal,
#badge-collection-modal,
#share-win-modal,
#water-entry-overlay {
    background: rgba(0, 0, 0, 0.88) !important;
    backdrop-filter: blur(16px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
    color: #f8f7f2 !important;
}

.meal-input-container,
.meal-text-modal-container,
.recent-meals-container,
.meal-builder-container,
.meal-builder-text-container,
.meal-detail-container,
.edit-items-container,
.score-popup-modal,
#barcode-result-modal > div,
#workout-rating-modal > div,
#quick-share-modal > div,
#game-challenge-modal > div,
#game-invite-modal > div,
#game-result-overlay > div,
#coin-shop-modal > div,
#challenge-pass-modal > div,
#rare-rewards-modal > div,
#badge-collection-modal > div,
#share-win-modal > div,
#water-entry-sheet {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.14), transparent 30%),
        linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(5, 5, 5, 0.99)) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 26px 72px rgba(0, 0, 0, 0.66) !important;
}

.meal-input-header,
.recent-meals-header,
.meal-builder-header,
.meal-builder-footer,
.edit-items-header,
.edit-items-actions,
#quick-share-modal > div > div:first-child,
#workout-rating-modal > div > div:first-child {
    background: rgba(5, 5, 5, 0.92) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
}

.meal-input-header h3,
.meal-text-modal-header h3,
.meal-builder-header h3,
.meal-builder-text-header h4,
.recent-meals-header h3,
.edit-items-header h3,
.score-popup-header,
.recent-meal-name,
.recent-meal-confirm-name,
.meal-detail-foods,
.meal-detail-calories-value,
.meal-breakdown-total-value,
#workout-rating-modal h2,
#quick-share-modal [style*="font-weight: 800"],
#quick-share-modal [style*="font-weight: 700"],
#barcode-product-name,
#water-entry-sheet h3 {
    color: #f8f7f2 !important;
}

.meal-input-close,
.meal-text-modal-close,
.recent-meals-close,
.meal-builder-close,
.meal-builder-text-close,
.edit-items-close,
.score-popup-close,
#workout-rating-modal [style*="color:var(--text-muted)"],
#workout-rating-modal [style*="color: var(--text-muted)"],
#quick-share-modal [style*="color:var(--text-muted)"],
#quick-share-modal [style*="color: var(--text-muted)"],
.meal-detail-time,
.meal-detail-calories-label,
.meal-detail-macro-label,
.meal-detail-item-cals,
.meal-builder-total-label,
.meal-builder-macro,
.recent-meals-empty,
.recent-meal-macros,
.recent-meal-confirm-macros,
.recent-meal-confirm-back button,
.input-method-desc,
.meal-type-label,
.score-breakdown-item,
.calorie-projection-text,
.calorie-projection-unit,
.calorie-projection-subtext,
#quick-meal-subtitle,
#barcode-product-brand,
#barcode-product-quantity,
#barcode-serving-size-label,
#barcode-custom-unit,
#barcode-custom-hint {
    color: rgba(248, 247, 242, 0.64) !important;
}

.meal-type-selector,
.meal-text-examples,
.voice-transcript,
.meal-builder-totals,
.meal-builder-item,
.meal-builder-empty,
.meal-builder-add-row,
.recent-meal-item,
.recent-meals-tab,
.recent-meal-icon,
.recent-meal-btn-quick,
.meal-detail-calories,
.meal-detail-macro,
.meal-detail-photo-placeholder,
.edit-items-item,
.edit-items-add,
.nutrition-score-card,
.calorie-projection-section,
.streak-tracker-card,
.multi-week-card,
.week-compare-stat,
#quick-share-preview,
#quick-share-preview > div,
#quick-share-modal [style*="background: #f8fafc"],
#quick-share-modal [style*="background:#f8fafc"],
#quick-share-modal [style*="background: white"],
#quick-share-modal [style*="background:white"],
#quick-share-modal [style*="background: #f1f5f9"],
#quick-share-modal [style*="background:#f1f5f9"],
#quick-share-modal [style*="background: #f0fdf4"],
#quick-share-modal [style*="background:#f0fdf4"],
#quick-share-modal [style*="background: #e2e8f0"],
#quick-share-modal [style*="background:#e2e8f0"],
#quick-share-no-chats,
#barcode-result-modal [style*="background:rgba(255,255,255,0.05)"],
#barcode-result-modal [style*="background:rgba(255,255,255,0.06)"],
#barcode-result-modal [style*="background:rgba(255,255,255,0.1)"],
#water-entry-sheet [style*="background: #f8fafc"],
#water-entry-sheet [style*="background:#f8fafc"] {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
}

.meal-type-btn,
.input-method-btn,
.simple-meal-type-bubble,
.recent-meals-tab,
.meal-builder-add-btn,
.edit-items-cancel,
.edit-items-add input,
.meal-text-input,
.simple-meal-textarea,
.meal-builder-name-input,
.meal-builder-text-input,
.meal-input-modal textarea,
.meal-input-modal input,
#quick-meal-text-input,
#quick-manual-entry-overlay input,
#barcode-custom-amount,
#workout-rating-modal textarea,
#quick-share-modal input,
#quick-share-modal textarea,
#water-entry-sheet input {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    color: #f8f7f2 !important;
}

.meal-type-btn.active,
.simple-meal-type-bubble.active,
.recent-meals-tab.active,
.quick-meal-type-pill.active,
.quick-manual-type-pill.active,
.meal-photo-type-pill.active,
#barcode-mode-servings,
#barcode-mode-custom[style*="var(--primary)"] {
    background: rgba(216, 178, 94, 0.18) !important;
    border-color: rgba(245, 217, 138, 0.46) !important;
    color: #f5d98a !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

.meal-type-btn.active .meal-type-label,
.meal-detail-macro.protein .meal-detail-macro-value,
.meal-detail-macro.carbs .meal-detail-macro-value,
.meal-detail-macro.fat .meal-detail-macro-value,
#barcode-calories,
#barcode-protein,
#barcode-carbs,
#barcode-fat,
.calorie-projection-value,
.streak-count,
.streak-label,
.streak-next-bonus,
.week-compare-stat .stat-value,
#quick-share-modal [style*="color: #166534"],
#quick-share-modal [style*="color:#166534"],
#quick-share-modal [style*="color: #15803d"],
#quick-share-modal [style*="color:#15803d"],
#quick-share-modal [style*="color: #16a34a"],
#quick-share-modal [style*="color:#16a34a"],
#quick-share-modal [style*="color: #2563eb"],
#quick-share-modal [style*="color:#2563eb"] {
    color: #f5d98a !important;
}

.meal-submit-btn,
.simple-meal-submit,
.recent-meal-add,
.recent-meal-btn-photo,
.meal-builder-save-btn,
.meal-builder-text-submit,
.edit-items-add button,
.edit-items-recalculate,
.meal-detail-edit-btn,
#quick-meal-submit-btn,
#quick-manual-submit-btn,
#daily-log-btn,
#barcode-result-modal button[onclick*="logBarcodeAsMeal"],
#popup-claim-btn,
#popup-finish-day-btn,
#save-rating-btn,
#quick-share-modal button[onclick*="shareWin"],
#quick-share-modal button[onclick*="copyWinMessage"],
#quick-share-modal button[onclick*="quickShareToChat"],
#quick-share-modal button[onclick*="goToGroupChatsToShare"],
#coin-shop-modal button,
#challenge-pass-modal button,
#share-win-modal button,
#water-entry-sheet button[onclick*="save"],
#water-entry-sheet button[onclick*="add"],
#water-entry-sheet button[style*="var(--primary)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #9f7628 100%) !important;
    color: #090909 !important;
    border-color: rgba(245, 217, 138, 0.34) !important;
    box-shadow: 0 14px 32px rgba(216, 178, 94, 0.2) !important;
}

#barcode-result-modal button[onclick*="closeBarcodeResult"],
#workout-rating-modal button[onclick*="skipWorkoutRating"],
#quick-share-modal button[onclick*="closeQuickShareModal"],
#quick-meal-text-overlay button[onclick*="closeQuickMealTextInput"],
#quick-manual-entry-overlay button[onclick*="closeQuickManualEntry"],
#water-entry-sheet button[onclick*="close"] {
    background: rgba(255, 255, 255, 0.07) !important;
    color: rgba(248, 247, 242, 0.68) !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
    box-shadow: none !important;
}

.recent-meal-item > svg {
    stroke: rgba(248, 247, 242, 0.64) !important;
}

/* Quick nutrition logging opens with the phone keyboard, so keep this flow light and readable. */
#daily-workout-trend-card,
#movement-workout-trend-card {
    display: none !important;
}

#quick-meal-text-overlay,
#quick-manual-entry-overlay {
    background: rgba(248, 245, 238, 0.98) !important;
    color: #151515 !important;
    backdrop-filter: blur(12px) saturate(112%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(112%) !important;
}

#quick-meal-text-overlay > div > div:first-child > div:first-child,
#quick-manual-entry-overlay > div > div:first-child > div:first-child {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#quick-meal-subtitle,
#quick-manual-entry-overlay > div > div:first-child > div:nth-child(2),
#quick-manual-entry-overlay label span {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

#quick-meal-text-input,
#quick-manual-entry-overlay input {
    background: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(184, 137, 43, 0.26) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    box-shadow: 0 12px 30px rgba(57, 47, 31, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.78) !important;
}

#quick-meal-text-input::placeholder,
#quick-manual-entry-overlay input::placeholder {
    color: rgba(21, 21, 21, 0.46) !important;
    -webkit-text-fill-color: rgba(21, 21, 21, 0.46) !important;
}

#quick-meal-text-overlay button[onclick*="openSavedMealsFromQuickLog"] {
    background: rgba(17, 17, 17, 0.06) !important;
    color: #111111 !important;
    border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

#quick-meal-text-overlay .quick-meal-type-pill,
#quick-manual-entry-overlay .quick-manual-type-pill {
    background: rgba(255, 255, 255, 0.78) !important;
    border-color: rgba(17, 17, 17, 0.12) !important;
    color: #4b5563 !important;
    box-shadow: none !important;
}

#quick-meal-text-overlay .quick-meal-type-pill.active,
#quick-manual-entry-overlay .quick-manual-type-pill.active {
    background: #111111 !important;
    border-color: #111111 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#quick-meal-submit-btn,
#quick-manual-submit-btn {
    background: #111111 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 14px 32px rgba(17, 17, 17, 0.16) !important;
}

#quick-meal-text-overlay button[onclick*="closeQuickMealTextInput"],
#quick-manual-entry-overlay button[onclick*="closeQuickManualEntry"] {
    background: rgba(255, 255, 255, 0.72) !important;
    color: #4b5563 !important;
    -webkit-text-fill-color: #4b5563 !important;
    border-color: rgba(17, 17, 17, 0.1) !important;
}

.meal-breakdown-insight,
.meal-breakdown-total-stat,
.meal-breakdown-ingredient,
.meal-breakdown-macro-pill,
.verified-badge-pill {
    background: rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
}

.meal-breakdown-logged-label,
.meal-breakdown-insight-label,
.meal-breakdown-ingredient-cals,
.meal-breakdown-macro-pill.p,
.meal-breakdown-macro-pill.c,
.meal-breakdown-macro-pill.f,
.meal-breakdown-macro-pill.fi {
    color: #f5d98a !important;
}

/* Meal logged breakdown: keep the post-log nutrition modal readable in both themes. */
.meal-breakdown-popup.visible,
.meal-breakdown-popup.visible .meal-breakdown-card {
    opacity: 1 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.12), transparent 30%),
        linear-gradient(180deg, #ffffff 0%, #fffdf8 55%, #f8f5ee 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    box-shadow: 0 24px 58px rgba(57, 47, 31, 0.2) !important;
}

html[data-pbb-theme="light"] .meal-breakdown-logged-label,
html[data-pbb-theme="light"] .meal-breakdown-insight-label,
html[data-pbb-theme="light"] .meal-breakdown-ingredient-cals {
    color: #8c5500 !important;
    -webkit-text-fill-color: #8c5500 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-meal-name,
html[data-pbb-theme="light"] .meal-breakdown-total-value,
html[data-pbb-theme="light"] .meal-breakdown-ingredient-name {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-total-label,
html[data-pbb-theme="light"] .meal-breakdown-ingredients-title,
html[data-pbb-theme="light"] .meal-breakdown-ingredient-portion {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-total-stat,
html[data-pbb-theme="light"] .meal-breakdown-ingredient,
html[data-pbb-theme="light"] .meal-breakdown-insight {
    background: rgba(255, 255, 255, 0.76) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-total-stat + .meal-breakdown-total-stat {
    border-left-color: rgba(184, 137, 43, 0.16) !important;
}

html[data-pbb-theme="light"] .meal-breakdown-divider {
    background: rgba(184, 137, 43, 0.2) !important;
}

html[data-pbb-theme="light"] .meal-breakdown-dismiss {
    background: rgba(17, 17, 17, 0.06) !important;
    border: 1px solid rgba(17, 17, 17, 0.08) !important;
    color: #4b5563 !important;
    -webkit-text-fill-color: #4b5563 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-insight {
    border-left-color: #b8892b !important;
}

html[data-pbb-theme="light"] .meal-breakdown-insight-text {
    color: #374151 !important;
    -webkit-text-fill-color: #374151 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-macro-pill.p {
    background: rgba(239, 68, 68, 0.1) !important;
    color: #b91c1c !important;
}

html[data-pbb-theme="light"] .meal-breakdown-macro-pill.c {
    background: rgba(245, 158, 11, 0.12) !important;
    color: #92400e !important;
}

html[data-pbb-theme="light"] .meal-breakdown-macro-pill.f {
    background: rgba(59, 130, 246, 0.1) !important;
    color: #1d4ed8 !important;
}

html[data-pbb-theme="light"] .meal-breakdown-macro-pill.fi {
    background: rgba(123, 168, 131, 0.14) !important;
    color: #2f6b39 !important;
}

html:not([data-pbb-theme="light"]) .meal-breakdown-meal-name,
html:not([data-pbb-theme="light"]) .meal-breakdown-total-value,
html:not([data-pbb-theme="light"]) .meal-breakdown-ingredient-name {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) .meal-breakdown-total-label,
html:not([data-pbb-theme="light"]) .meal-breakdown-ingredients-title,
html:not([data-pbb-theme="light"]) .meal-breakdown-ingredient-portion,
html:not([data-pbb-theme="light"]) .meal-breakdown-insight-text {
    color: rgba(248, 247, 242, 0.72) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.72) !important;
}

html:not([data-pbb-theme="light"]) .meal-breakdown-divider {
    background: rgba(245, 217, 138, 0.2) !important;
}

html:not([data-pbb-theme="light"]) .meal-breakdown-dismiss {
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

#view-workout-success,
#view-activity-success {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.16), transparent 32%),
        linear-gradient(180deg, #101010 0%, #050505 52%, #000000 100%) !important;
    color: #f8f7f2 !important;
}

/* Activity completion is a full themed surface, not the fixed black workout
   overlay. Keep brand gold for accents and use explicit readable foregrounds
   in both supported Balance modes. */
html[data-pbb-theme="light"] #view-activity-success {
    background:
        radial-gradient(circle at 82% 2%, rgba(216, 178, 94, 0.2), transparent 30%),
        linear-gradient(180deg, #fffdf8 0%, #f8f5ee 56%, #eee6d7 100%) !important;
    color: #211b12 !important;
    -webkit-text-fill-color: #211b12 !important;
}

html:not([data-pbb-theme="light"]) #view-activity-success {
    background:
        radial-gradient(circle at 82% 2%, rgba(245, 217, 138, 0.13), transparent 30%),
        linear-gradient(180deg, #121212 0%, #090909 58%, #050505 100%) !important;
    color: #f8f1df !important;
    -webkit-text-fill-color: #f8f1df !important;
}

html[data-pbb-theme="light"] #view-activity-success h1,
html[data-pbb-theme="light"] #view-activity-success #activity-success-label,
html[data-pbb-theme="light"] #view-activity-success .activity-success-stat,
html[data-pbb-theme="light"] #view-activity-success .activity-share-title {
    color: #211b12 !important;
    -webkit-text-fill-color: #211b12 !important;
}

html:not([data-pbb-theme="light"]) #view-activity-success h1,
html:not([data-pbb-theme="light"]) #view-activity-success #activity-success-label,
html:not([data-pbb-theme="light"]) #view-activity-success .activity-success-stat,
html:not([data-pbb-theme="light"]) #view-activity-success .activity-share-title {
    color: #f8f1df !important;
    -webkit-text-fill-color: #f8f1df !important;
}

html[data-pbb-theme="light"] #view-activity-success .activity-success-stat,
html[data-pbb-theme="light"] #view-activity-success #activity-share-section {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(184, 137, 43, 0.24) !important;
    box-shadow: 0 14px 34px rgba(70, 53, 25, 0.09) !important;
}

html:not([data-pbb-theme="light"]) #view-activity-success .activity-success-stat,
html:not([data-pbb-theme="light"]) #view-activity-success #activity-share-section {
    background: rgba(24, 24, 24, 0.94) !important;
    border: 1px solid rgba(245, 217, 138, 0.2) !important;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.32) !important;
}

html[data-pbb-theme="light"] #view-activity-success .activity-success-stat-label,
html[data-pbb-theme="light"] #view-activity-success .activity-share-helper {
    color: #6f6252 !important;
    -webkit-text-fill-color: #6f6252 !important;
    opacity: 1 !important;
}

html:not([data-pbb-theme="light"]) #view-activity-success .activity-success-stat-label,
html:not([data-pbb-theme="light"]) #view-activity-success .activity-share-helper {
    color: #c7bda8 !important;
    -webkit-text-fill-color: #c7bda8 !important;
    opacity: 1 !important;
}

#view-activity-success #activity-share-photo-btn {
    background: rgba(216, 178, 94, 0.12) !important;
    border: 1px dashed #b8892b !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
}

#view-activity-success #activity-xp-status,
#view-activity-success #activity-no-xp-hint {
    background: rgba(216, 178, 94, 0.14) !important;
    border: 1px solid rgba(184, 137, 43, 0.42) !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
}

#view-activity-success #activity-share-destination-actions button,
#view-activity-success .activity-done-btn {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 58%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.4) !important;
    color: #17130d !important;
    -webkit-text-fill-color: #17130d !important;
    box-shadow: 0 12px 28px rgba(147, 105, 21, 0.2) !important;
}

#view-activity-success #activity-share-photo-btn:focus-visible,
#view-activity-success #activity-share-destination-actions button:focus-visible,
#view-activity-success .activity-done-btn:focus-visible {
    outline: 3px solid #d8b25e !important;
    outline-offset: 3px;
}

#workout-capture-area,
#success-improvements,
#success-milestones > div,
#view-workout-success [style*="rgba(255,255,255,0.1)"],
#view-workout-success [style*="rgba(255,255,255,0.15)"],
#view-workout-success [style*="rgba(255,255,255,0.18)"],
#view-activity-success [style*="rgba(255,255,255,0.15)"],
#view-activity-success [style*="rgba(255,255,255,0.2)"],
#activity-share-section {
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
    color: #f8f7f2 !important;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.32) !important;
}

#share-section-combined {
    background:
        radial-gradient(circle at 82% 0%, rgba(245, 217, 138, 0.16), transparent 34%),
        rgba(255, 255, 255, 0.07) !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
}

#share-take-photo-btn,
#share-workout-card-btn,
#share-workout-groupchat-btn,
#view-workout-success button[onclick*="closeSuccessScreen"],
#activity-share-btn,
#activity-done-btn,
#activity-save-btn {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #9f7628 100%) !important;
    color: #090909 !important;
    border: 1px solid rgba(245, 217, 138, 0.34) !important;
    box-shadow: 0 14px 32px rgba(216, 178, 94, 0.2) !important;
}

#workout-points-awarded,
#share-step-share [style*="rgba(34,197,94"],
#share-option-workout,
#quick-share-modal [style*="#7ba883"],
#quick-share-modal [style*="#4ade80"],
#quick-share-modal [style*="#25D366"],
#quick-share-modal [style*="#0084FF"] {
    background: rgba(216, 178, 94, 0.16) !important;
    border-color: rgba(245, 217, 138, 0.36) !important;
    color: #f5d98a !important;
}

#workout-rating-modal input[type="range"] {
    background: linear-gradient(to right, #3a3a3a, #d8b25e) !important;
}

#workout-rating-modal input[type="range"]::-webkit-slider-thumb {
    background: #f8f7f2 !important;
    border-color: #d8b25e !important;
}

#workout-rating-modal input[type="range"]::-moz-range-thumb {
    background: #f8f7f2 !important;
    border-color: #d8b25e !important;
}

#quick-share-modal > div,
#quick-share-modal > div[style*="background: white"],
#quick-share-modal > div[style*="background:white"],
#view-workout-success #share-section-combined {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.14), transparent 30%),
        linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(5, 5, 5, 0.99)) !important;
    border: 1px solid rgba(245, 217, 138, 0.18) !important;
    color: #f8f7f2 !important;
}

/* Movement: keep Coach Shan's weekly workout card as the gold feature card. */
#movement-grid-container > #mvmt-week-workouts-card {
    background: linear-gradient(135deg, #fff0b8 0%, #e4bd55 42%, #8f681f 100%) !important;
    border-color: rgba(255, 244, 203, 0.68) !important;
    box-shadow: 0 20px 46px rgba(0, 0, 0, 0.46), inset 0 1px 0 rgba(255, 255, 255, 0.46) !important;
    color: #17130d !important;
}

#movement-grid-container > #mvmt-week-workouts-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0) 42%) !important;
    z-index: 0 !important;
}

#movement-grid-container > #mvmt-week-workouts-card > div {
    position: relative !important;
    z-index: 1 !important;
}

#movement-grid-container > #mvmt-week-workouts-card,
#movement-grid-container > #mvmt-week-workouts-card * {
    color: #17130d !important;
}

#movement-grid-container > #mvmt-week-workouts-card #mvmt-week-workouts-chips > div {
    background: rgba(255, 255, 255, 0.26) !important;
    border-color: rgba(23, 19, 13, 0.18) !important;
}

/* Light mode: white, black, grey, and gold with the same premium app structure. */
html[data-pbb-theme="light"] {
    color-scheme: light;
    --primary: #111111 !important;
    --primary-light: #2f2f2f !important;
    --secondary: #b8892b !important;
    --secondary-light: #e4bd55 !important;
    --accent-green: #f4f0e7 !important;
    --bg: #f8f5ee !important;
    --surface: #ffffff !important;
    --text-main: #151515 !important;
    --text-muted: #6f6a61 !important;
    --chat-bg-user: #111111 !important;
    --chat-text-user: #ffffff !important;
    --chat-bg-coach: #f4f0e7 !important;
    --chat-text-coach: #151515 !important;
    --chat-border-coach: #ddd3bf !important;
    --pbb-luxe-night: #f8f5ee;
    --pbb-luxe-plum: #151515;
    --pbb-luxe-violet: #ece7dc;
    --pbb-luxe-gold: #b8892b;
    --pbb-luxe-gold-light: #e4bd55;
    --pbb-luxe-cream: #151515;
    --pbb-luxe-soft: #f4f0e7;
    --pbb-luxe-ink: #151515;
    --pbb-luxe-muted: #6f6a61;
    --pbb-luxe-border: rgba(184, 137, 43, 0.22);
    --pbb-luxe-shadow: 0 24px 58px rgba(57, 47, 31, 0.13);
    --pbb-luxe-card: rgba(255, 255, 255, 0.92);
    --pbb-luxe-card-2: rgba(248, 245, 238, 0.94);
    --pbb-widget-glass: rgba(255, 255, 255, 0.86);
    --pbb-widget-glass-soft: rgba(17, 17, 17, 0.045);
    --pbb-widget-glass-faint: rgba(17, 17, 17, 0.03);
    --pbb-widget-glass-border: rgba(184, 137, 43, 0.18);
    --pbb-widget-green: #b8892b;
    --pbb-widget-green-soft: rgba(184, 137, 43, 0.12);
}

html[data-pbb-theme="light"] body,
html[data-pbb-theme="light"] .container,
html[data-pbb-theme="light"] #view-dashboard,
html[data-pbb-theme="light"] #view-meals,
html[data-pbb-theme="light"] #meals-content-container,
html[data-pbb-theme="light"] #calorie-tracker,
html[data-pbb-theme="light"] #view-profile,
html[data-pbb-theme="light"] #view-learning,
html[data-pbb-theme="light"] #view-cycle,
html[data-pbb-theme="light"] #view-friends,
html[data-pbb-theme="light"] .app-view {
    background:
        linear-gradient(180deg, #fffdf8 0%, #f8f5ee 48%, #eee8dc 100%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .app-header,
html[data-pbb-theme="light"] .bottom-nav,
html[data-pbb-theme="light"] .app-view > div[style*="position: sticky"],
html[data-pbb-theme="light"] .app-view > div[style*="position:sticky"] {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    box-shadow: 0 14px 38px rgba(57, 47, 31, 0.12) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

html[data-pbb-theme="light"] .app-header h1,
html[data-pbb-theme="light"] .app-header h2,
html[data-pbb-theme="light"] .app-header h3,
html[data-pbb-theme="light"] .app-logo,
html[data-pbb-theme="light"] #view-profile h3,
html[data-pbb-theme="light"] #view-meals h1,
html[data-pbb-theme="light"] #view-meals h2,
html[data-pbb-theme="light"] #view-meals h3,
html[data-pbb-theme="light"] #view-friends h2,
html[data-pbb-theme="light"] #view-friends h3,
html[data-pbb-theme="light"] #view-learning h2,
html[data-pbb-theme="light"] #view-learning h3,
html[data-pbb-theme="light"] #view-cycle h2,
html[data-pbb-theme="light"] #view-cycle h3,
html[data-pbb-theme="light"] #cycle-phase-name,
html[data-pbb-theme="light"] .app-view h1,
html[data-pbb-theme="light"] .app-view h2,
html[data-pbb-theme="light"] .app-view h3 {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-meals p,
html[data-pbb-theme="light"] #view-learning p,
html[data-pbb-theme="light"] #view-cycle p,
html[data-pbb-theme="light"] #cycle-phase-desc {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .nav-item {
    color: rgba(21, 21, 21, 0.56) !important;
}

html[data-pbb-theme="light"] .nav-item.active {
    color: #111111 !important;
}

html[data-pbb-theme="light"] .nav-item svg path[fill="none"] {
    fill: none !important;
}

html[data-pbb-theme="light"] .header-msg-icon,
html[data-pbb-theme="light"] .profile-icon {
    background: rgba(255, 255, 255, 0.78) !important;
    border: 1px solid rgba(184, 137, 43, 0.24) !important;
    color: #151515 !important;
    box-shadow: 0 10px 24px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #view-friends [onclick*="openAddFriendModal"][style*="background: #f1f5f9"],
html[data-pbb-theme="light"] #view-friends [onclick*="openFeedMessagesPanel"][style*="background: #f1f5f9"] {
    background: linear-gradient(135deg, #fffdf8 0%, #f4ead4 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    box-shadow: 0 10px 24px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #view-friends [onclick*="openAddFriendModal"] svg,
html[data-pbb-theme="light"] #view-friends [onclick*="openFeedMessagesPanel"] svg {
    fill: #151515 !important;
}

html[data-pbb-theme="light"] #guest-mode-banner {
    background: linear-gradient(135deg, rgba(17, 17, 17, 0.92), rgba(184, 137, 43, 0.74)) !important;
    color: #ffffff !important;
    border-bottom: 1px solid rgba(184, 137, 43, 0.22) !important;
    box-shadow: 0 12px 30px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #guest-mode-banner button[onclick*="login"] {
    background: #ffffff !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #daily-weigh-in-card,
html[data-pbb-theme="light"] #daily-weigh-in-done-card,
html[data-pbb-theme="light"] #mood-checkin-card,
html[data-pbb-theme="light"] #mood-checkin-done-card,
html[data-pbb-theme="light"] #daily-quiz-card,
html[data-pbb-theme="light"] #daily-quiz-done-card,
html[data-pbb-theme="light"] #daily-meal-tip-card,
html[data-pbb-theme="light"] #weekly-goals-card,
html[data-pbb-theme="light"] #weekly-progress-photo-card,
html[data-pbb-theme="light"] #weekly-progress-photo-done-card,
html[data-pbb-theme="light"] #home-challenges-empty,
html[data-pbb-theme="light"] .calorie-widget-card,
html[data-pbb-theme="light"] #fitbit-performance-card,
html[data-pbb-theme="light"] #view-feed [onclick*="openGameChallengeModal"],
html[data-pbb-theme="light"] #view-friends [onclick*="openGameChallengeModal"],
html[data-pbb-theme="light"] #active-games-container > div[style],
html[data-pbb-theme="light"] #movement-grid-container > div,
html[data-pbb-theme="light"] #form-check-quick-card,
html[data-pbb-theme="light"] #today-workout-card,
html[data-pbb-theme="light"] #workout-library-card,
html[data-pbb-theme="light"] .health-iq-card {
    background:
        linear-gradient(135deg, #ffffff 0%, #f7f3e9 58%, #ece4d3 100%) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.14) !important;
}

html[data-pbb-theme="light"] #view-meals .card,
html[data-pbb-theme="light"] #view-meals [style*="background: white"],
html[data-pbb-theme="light"] #view-meals [style*="background:white"],
html[data-pbb-theme="light"] #view-meals [style*="background: #ffffff"],
html[data-pbb-theme="light"] #view-meals [style*="background:#ffffff"],
html[data-pbb-theme="light"] #calorie-tracker [style*="background: white"],
html[data-pbb-theme="light"] #calorie-tracker [style*="background:white"],
html[data-pbb-theme="light"] #meals-content-container [style*="background: white"],
html[data-pbb-theme="light"] #meals-content-container [style*="background:white"],
html[data-pbb-theme="light"] .meal-journal-card,
html[data-pbb-theme="light"] .multi-week-card,
html[data-pbb-theme="light"] .meal-pattern-card,
html[data-pbb-theme="light"] #ai-meal-plan-container,
html[data-pbb-theme="light"] .calorie-tracker-summary,
html[data-pbb-theme="light"] .nutrition-score-card,
html[data-pbb-theme="light"] .streak-tracker-card,
html[data-pbb-theme="light"] .weekly-metrics-card,
html[data-pbb-theme="light"] #learning-content [style*="background: white"],
html[data-pbb-theme="light"] #learning-content [style*="background:white"],
html[data-pbb-theme="light"] #learning-content [style*="background: #ffffff"],
html[data-pbb-theme="light"] #learning-content [style*="background:#ffffff"],
html[data-pbb-theme="light"] #learning-content [onclick*="showQuizBattleInviteModal"],
html[data-pbb-theme="light"] #cycle-hero-card,
html[data-pbb-theme="light"] #view-cycle .card,
html[data-pbb-theme="light"] #view-cycle [style*="background: white"],
html[data-pbb-theme="light"] #view-cycle [style*="background:white"],
html[data-pbb-theme="light"] .calendar-day-row,
html[data-pbb-theme="light"] .monthly-calendar-container {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #learning-content [onclick*="showQuizBattleInviteModal"] *,
html[data-pbb-theme="light"] #learning-content [onclick*="showQuizBattleInviteModal"] [style*="color: white"],
html[data-pbb-theme="light"] #learning-content [onclick*="showQuizBattleInviteModal"] [style*="color: rgba(255,255,255"] {
    color: #151515 !important;
    fill: #9f7628 !important;
}

html[data-pbb-theme="light"] #learning-content [onclick*="showQuizBattleInviteModal"] > div:first-child {
    background: rgba(184, 137, 43, 0.14) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
}

html[data-pbb-theme="light"] #view-meals .pill-btn,
html[data-pbb-theme="light"] .meal-icon-btn {
    background: linear-gradient(135deg, #ffffff 0%, #f4f0e7 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    box-shadow: 0 12px 26px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #view-meals .pill-btn[style*="var(--accent-green)"],
html[data-pbb-theme="light"] #view-meals .pill-btn.active {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
    border-color: rgba(184, 137, 43, 0.34) !important;
    color: #ffffff !important;
}

html[data-pbb-theme="light"] #ai-plan-header {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(244, 240, 231, 0.9)) !important;
    border-bottom-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #ai-plan-name {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #ai-plan-desc {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #ai-plan-meals-list .card-header {
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom: 1px solid rgba(184, 137, 43, 0.12) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #ai-plan-meals-list .card-body {
    background: rgba(255, 255, 255, 0.78) !important;
    border-top: 1px solid rgba(184, 137, 43, 0.12) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #ai-plan-meals-list .meal-title,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body h4,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body [style*="color:var(--text-main)"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #ai-plan-meals-list .meta,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body p,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body ul,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body li,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body [style*="color:var(--text-muted)"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #ai-plan-meals-list .card-body h4 {
    border-bottom-color: rgba(184, 137, 43, 0.22) !important;
}

html[data-pbb-theme="light"] #ai-plan-day-nutrition .ai-plan-macro-pill,
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body [style*="background: #f1f5f9"],
html[data-pbb-theme="light"] #ai-plan-meals-list .card-body [style*="background:#f1f5f9"] {
    background: rgba(17, 17, 17, 0.045) !important;
    border: 1px solid rgba(184, 137, 43, 0.12) !important;
}

html[data-pbb-theme="light"] #ai-plan-day-nutrition .ai-plan-macro-pill,
html[data-pbb-theme="light"] #ai-plan-day-nutrition .ai-plan-macro-pill * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .nutrition-range-toggle {
    background: rgba(17, 17, 17, 0.055) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
}

html[data-pbb-theme="light"] .nutrition-range-toggle button {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .nutrition-range-toggle button.active {
    background: #ffffff !important;
    color: #151515 !important;
    box-shadow: 0 8px 20px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] .calorie-tracker-summary h2,
html[data-pbb-theme="light"] .calorie-tracker-summary h3,
html[data-pbb-theme="light"] .calorie-circle-current,
html[data-pbb-theme="light"] .calorie-circle-goal,
html[data-pbb-theme="light"] .macro-ring-pct,
html[data-pbb-theme="light"] .macro-detail-name,
html[data-pbb-theme="light"] .macro-detail-value {
    color: #151515 !important;
}

html[data-pbb-theme="light"] .calorie-circle-separator,
html[data-pbb-theme="light"] .calorie-circle-label,
html[data-pbb-theme="light"] .macro-ring-label,
html[data-pbb-theme="light"] .tracker-micro-header,
html[data-pbb-theme="light"] .weekly-day-calories {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .calorie-circle-bg {
    stroke: rgba(17, 17, 17, 0.12) !important;
}

html[data-pbb-theme="light"] .macro-detail-item,
html[data-pbb-theme="light"] .micro-tracker-item,
html[data-pbb-theme="light"] .weekly-day-item {
    background: rgba(17, 17, 17, 0.035) !important;
    border: 1px solid rgba(184, 137, 43, 0.12) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .progress-bar-medium,
html[data-pbb-theme="light"] .progress-bar,
html[data-pbb-theme="light"] .progress-bar-small {
    background: rgba(17, 17, 17, 0.09) !important;
}

html[data-pbb-theme="light"] #learning-content [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #learning-content [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #view-cycle [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #view-cycle [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #view-meals [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #view-meals [style*="color:var(--text-main)"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #learning-content [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #learning-content [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #view-cycle [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #view-cycle [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #view-meals [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #view-meals [style*="color:var(--text-muted)"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #cycle-hero-card .card-body,
html[data-pbb-theme="light"] #cycle-hero-card .card-body.active {
    background: transparent !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .calendar-view-toggle {
    background: rgba(17, 17, 17, 0.045) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
}

html[data-pbb-theme="light"] .calendar-view-toggle .toggle-btn {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .calendar-view-toggle .toggle-btn.active {
    background: #151515 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(57, 47, 31, 0.14) !important;
}

html[data-pbb-theme="light"] #weekly-goals-card,
html[data-pbb-theme="light"] #home-challenges-empty,
html[data-pbb-theme="light"] #view-feed [onclick*="openGameChallengeModal"],
html[data-pbb-theme="light"] #view-friends [onclick*="openGameChallengeModal"] {
    background:
        linear-gradient(135deg, #fff9e8 0%, #f1d78a 48%, #ffffff 100%) !important;
}

html[data-pbb-theme="light"] #movement-grid-container > #mvmt-week-workouts-card {
    background: linear-gradient(135deg, #fff4c8 0%, #e4bd55 48%, #b8892b 100%) !important;
    border-color: rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    box-shadow: 0 20px 46px rgba(57, 47, 31, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.58) !important;
}

html[data-pbb-theme="light"] #movement-grid-container > #mvmt-week-workouts-card *,
html[data-pbb-theme="light"] #movement-grid-container > div *,
html[data-pbb-theme="light"] #view-feed [onclick*="openGameChallengeModal"] *,
html[data-pbb-theme="light"] #view-friends [onclick*="openGameChallengeModal"] *,
html[data-pbb-theme="light"] #weekly-goals-card *,
html[data-pbb-theme="light"] #daily-weigh-in-card *,
html[data-pbb-theme="light"] #weekly-progress-photo-card *,
html[data-pbb-theme="light"] #mood-checkin-card *,
html[data-pbb-theme="light"] .calorie-widget-card * {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #friends-feed-empty,
html[data-pbb-theme="light"] #group-chats-empty,
html[data-pbb-theme="light"] .feed-post-card {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #friends-feed-empty {
    margin: 0 15px !important;
    border-radius: 14px !important;
}

html[data-pbb-theme="light"] #friends-feed-empty [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #friends-feed-empty [style*="color:var(--text-main)"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #friends-feed-empty [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #friends-feed-empty [style*="color:var(--text-muted)"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] input,
html[data-pbb-theme="light"] textarea,
html[data-pbb-theme="light"] select,
html[data-pbb-theme="light"] #theme-selector,
html[data-pbb-theme="light"] #builder-search,
html[data-pbb-theme="light"] #program-name-input,
html[data-pbb-theme="light"] #calendar-activity-name-input,
html[data-pbb-theme="light"] #view-profile input[type="time"] {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.24) !important;
    color: #151515 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
}

html[data-pbb-theme="light"] input::placeholder,
html[data-pbb-theme="light"] textarea::placeholder {
    color: rgba(21, 21, 21, 0.42) !important;
}

html[data-pbb-theme="light"] .modal-overlay,
html[data-pbb-theme="light"] .onboarding-overlay,
html[data-pbb-theme="light"] .completion-modal-overlay,
html[data-pbb-theme="light"] .adaptive-modal-overlay,
html[data-pbb-theme="light"] #guest-signup-modal,
html[data-pbb-theme="light"] #home-friends-modal,
html[data-pbb-theme="light"] #change-password-modal-overlay,
html[data-pbb-theme="light"] #health-connect-modal,
html[data-pbb-theme="light"] #weekly-goals-modal,
html[data-pbb-theme="light"] #share-referral-modal,
html[data-pbb-theme="light"] #store-review-modal,
html[data-pbb-theme="light"] #last-volume-popup,
html[data-pbb-theme="light"] .meal-breakdown-popup {
    background: rgba(248, 245, 238, 0.78) !important;
    backdrop-filter: blur(12px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(118%) !important;
}

html[data-pbb-theme="light"] .modal-content,
html[data-pbb-theme="light"] .adaptive-modal-card,
html[data-pbb-theme="light"] .completion-modal-content,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet,
html[data-pbb-theme="light"] #view-profile .settings-card,
html[data-pbb-theme="light"] #view-profile > div[style*="padding: 0 25px"] > div,
html[data-pbb-theme="light"] #macro-settings-modal-overlay > div,
html[data-pbb-theme="light"] #feed-messages-panel-content {
    background: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 24px 58px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #view-profile .profile-header {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 240, 231, 0.92) 100%) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #view-profile .profile-name-large,
html[data-pbb-theme="light"] #view-profile h2,
html[data-pbb-theme="light"] #view-profile h3,
html[data-pbb-theme="light"] #view-profile [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #view-profile [style*="color: var(--text-main)"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-profile .profile-email,
html[data-pbb-theme="light"] #view-profile [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #view-profile [style*="color: var(--text-muted)"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-profile [style*="color:var(--primary)"],
html[data-pbb-theme="light"] #view-profile [style*="color: var(--primary)"] {
    color: #9f7628 !important;
}

html[data-pbb-theme="light"] #view-profile .profile-photo-container {
    background: linear-gradient(135deg, #ffffff, #f0e5ca) !important;
    border: 1px solid rgba(184, 137, 43, 0.26) !important;
    box-shadow: 0 18px 36px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #profile-default-initial {
    color: #b8892b !important;
}

html[data-pbb-theme="light"] #macro-settings-modal-overlay input[type="number"],
html[data-pbb-theme="light"] #macro-settings-modal-overlay input[type="text"] {
    background: #ffffff !important;
    border: 1px solid rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    caret-color: #151515 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
}

html[data-pbb-theme="light"] #macro-settings-modal-overlay input[type="number"]:focus,
html[data-pbb-theme="light"] #macro-settings-modal-overlay input[type="text"]:focus {
    background: #fff9e8 !important;
    border-color: rgba(184, 137, 43, 0.52) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(184, 137, 43, 0.12) !important;
}

html[data-pbb-theme="light"] #macro-settings-modal-overlay button[onclick="closeMacroSettingsModal()"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #macro-settings-modal-overlay .adaptive-modal-confirm {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #macro-settings-modal-overlay .adaptive-modal-cancel {
    background: rgba(255, 255, 255, 0.82) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-profile .settings-card > div:first-child,
html[data-pbb-theme="light"] #view-profile .setting-row,
html[data-pbb-theme="light"] #view-profile [id^="settings-"],
html[data-pbb-theme="light"] #view-profile [style*="border-bottom:1px solid #f1f5f9"],
html[data-pbb-theme="light"] #view-profile [style*="border-bottom: 1px solid #f1f5f9"],
html[data-pbb-theme="light"] #view-profile [style*="border-top:1px solid #f1f5f9"],
html[data-pbb-theme="light"] #view-profile [style*="border-top: 1px solid #f1f5f9"] {
    border-color: rgba(184, 137, 43, 0.16) !important;
}

html[data-pbb-theme="light"] #view-profile button[style*="background:var(--primary)"],
html[data-pbb-theme="light"] #view-profile button[style*="background: var(--primary)"],
html[data-pbb-theme="light"] #push-notif-settings-btn,
html[data-pbb-theme="light"] #settings-clear-cache-btn,
html[data-pbb-theme="light"] #settings-change-password button,
html[data-pbb-theme="light"] #share-take-photo-btn,
html[data-pbb-theme="light"] #share-workout-card-btn,
html[data-pbb-theme="light"] #share-workout-groupchat-btn,
html[data-pbb-theme="light"] #activity-share-btn,
html[data-pbb-theme="light"] #activity-done-btn,
html[data-pbb-theme="light"] #activity-save-btn {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    color: #151515 !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    box-shadow: 0 14px 32px rgba(184, 137, 43, 0.18) !important;
}

html[data-pbb-theme="light"] #view-profile button[style*="background:white"],
html[data-pbb-theme="light"] #view-profile button[style*="background: white"],
html[data-pbb-theme="light"] #view-profile button[style*="background:#f1f5f9"],
html[data-pbb-theme="light"] #view-profile button[style*="background: #f1f5f9"],
html[data-pbb-theme="light"] #view-workout-builder button[style*="background:white"],
html[data-pbb-theme="light"] #view-workout-builder button[style*="background: white"],
html[data-pbb-theme="light"] #view-program-builder button[style*="background:white"],
html[data-pbb-theme="light"] #view-program-builder button[style*="background: white"] {
    background: rgba(255, 255, 255, 0.82) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #tamagotchi-fallback,
html[data-pbb-theme="light"] #tamagotchi-stats-bar,
html[data-pbb-theme="light"] #tamagotchi-widget-container {
    background: linear-gradient(180deg, #ffffff 0%, #f3eee3 100%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] [style*="color: white"],
html[data-pbb-theme="light"] [style*="color:white"],
html[data-pbb-theme="light"] [style*="color:#fff"],
html[data-pbb-theme="light"] [style*="color: #fff"],
html[data-pbb-theme="light"] [style*="color:#f8f7f2"],
html[data-pbb-theme="light"] [style*="color: #f8f7f2"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] .feed-meal-card .feed-meal-card-title,
html[data-pbb-theme="light"] .feed-meal-card .feed-meal-card-food,
html[data-pbb-theme="light"] .feed-meal-card .feed-meal-card-calories,
html[data-pbb-theme="light"] .feed-meal-card .feed-meal-card-macro-value {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    opacity: 1 !important;
}

html[data-pbb-theme="light"] .feed-meal-card .feed-meal-card-muted {
    color: rgba(248, 247, 242, 0.84) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.84) !important;
    opacity: 1 !important;
}

html[data-pbb-theme="light"] .feed-fitness-diary-card,
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color:white"],
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color: white"],
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color:#fff"],
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color: #fff"],
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color:rgba(255,255,255"],
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color: rgba(255,255,255"],
html[data-pbb-theme="light"] .feed-fitness-diary-card [style*="color: rgba(255, 255, 255"] {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    opacity: 1 !important;
}

html[data-pbb-theme="light"] .coin-header-widget,
html[data-pbb-theme="light"] .streak-header-widget,
html[data-pbb-theme="light"] #pwa-install-banner .pwa-install-btn {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 58%, #b8892b 100%) !important;
    color: #151515 !important;
    box-shadow: 0 10px 24px rgba(184, 137, 43, 0.18) !important;
}

/* Light-mode messaging pass: inbox, DM, coach chat, and group chat. */
html[data-pbb-theme="light"] #feed-messages-panel,
html[data-pbb-theme="light"] #message-selector-modal,
html[data-pbb-theme="light"] #direct-message-modal,
html[data-pbb-theme="light"] #coach-chat-modal,
html[data-pbb-theme="light"] #group-chat-modal,
html[data-pbb-theme="light"] #create-group-chat-modal {
    background: rgba(248, 245, 238, 0.74) !important;
    backdrop-filter: blur(16px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
}

html[data-pbb-theme="light"] #feed-messages-panel-content,
html[data-pbb-theme="light"] #message-selector-modal > div,
html[data-pbb-theme="light"] #direct-message-modal > div,
html[data-pbb-theme="light"] #coach-chat-modal > div,
html[data-pbb-theme="light"] #group-chat-modal > div,
html[data-pbb-theme="light"] #create-group-chat-modal > div {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.16), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 240, 231, 0.96) 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 24px 58px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #feed-messages-panel-content > div,
html[data-pbb-theme="light"] #message-selector-modal > div > div,
html[data-pbb-theme="light"] #direct-message-modal > div > div,
html[data-pbb-theme="light"] #coach-chat-modal > div > div,
html[data-pbb-theme="light"] #group-chat-modal > div > div,
html[data-pbb-theme="light"] #create-group-chat-modal > div > div,
html[data-pbb-theme="light"] #gc-members-popover > div,
html[data-pbb-theme="light"] #gc-chat-menu {
    background: transparent !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #feed-messages-panel-content h3,
html[data-pbb-theme="light"] #feed-messages-panel-content h4,
html[data-pbb-theme="light"] #message-selector-modal h3,
html[data-pbb-theme="light"] #direct-message-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #coach-chat-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #group-chat-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #create-group-chat-modal h3,
html[data-pbb-theme="light"] #create-group-chat-modal label,
html[data-pbb-theme="light"] #gc-chat-name,
html[data-pbb-theme="light"] #gc-members-popover [style*="color: #0f172a"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #feed-messages-panel-content [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #message-selector-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #direct-message-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #coach-chat-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #group-chat-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #create-group-chat-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #gc-chat-members,
html[data-pbb-theme="light"] #gc-members-popover [style*="color: #64748b"],
html[data-pbb-theme="light"] #gc-members-popover [style*="color:#64748b"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #panel-group-chats > div,
html[data-pbb-theme="light"] #panel-friends-list > div,
html[data-pbb-theme="light"] #message-selector-list > div,
html[data-pbb-theme="light"] .panel-friend-row,
html[data-pbb-theme="light"] #group-chats-container > div,
html[data-pbb-theme="light"] #quick-share-chats-list > div {
    background: rgba(255, 255, 255, 0.82) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #panel-group-chats > div:hover,
html[data-pbb-theme="light"] #panel-friends-list > div:hover,
html[data-pbb-theme="light"] #message-selector-list > div:hover,
html[data-pbb-theme="light"] .panel-friend-row:hover {
    background: rgba(255, 249, 232, 0.95) !important;
}

html[data-pbb-theme="light"] #panel-group-chats [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #panel-group-chats [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #panel-friends-list [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #panel-friends-list [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #message-selector-list [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #message-selector-list [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] .panel-friend-row [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] .panel-friend-row [style*="color:var(--text-main)"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #panel-group-chats [style*="linear-gradient(135deg, var(--primary), #10b981)"],
html[data-pbb-theme="light"] #panel-friends-list [style*="linear-gradient(135deg, var(--primary), #10b981)"],
html[data-pbb-theme="light"] #message-selector-list [style*="background: var(--secondary)"],
html[data-pbb-theme="light"] #gc-chat-icon,
html[data-pbb-theme="light"] #dm-recipient-photo,
html[data-pbb-theme="light"] #coach-chat-modal [style*="background: var(--primary)"],
html[data-pbb-theme="light"] #group-chat-modal [style*="background: linear-gradient(135deg, var(--primary), #10b981)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #feed-messages-panel-content button[style*="var(--primary)"],
html[data-pbb-theme="light"] #feed-messages-panel-content button[style*="#10b981"],
html[data-pbb-theme="light"] #message-selector-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #direct-message-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #coach-chat-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #group-chat-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #create-group-chat-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #group-chat-modal button[style*="#f59e0b"],
html[data-pbb-theme="light"] #group-chat-modal button[style*="#eab308"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    box-shadow: 0 14px 32px rgba(184, 137, 43, 0.18) !important;
}

html[data-pbb-theme="light"] #feed-messages-panel-content button[style*="background: none"],
html[data-pbb-theme="light"] #message-selector-modal button[style*="background: none"],
html[data-pbb-theme="light"] #direct-message-modal button[style*="background: none"],
html[data-pbb-theme="light"] #coach-chat-modal button[style*="background: none"],
html[data-pbb-theme="light"] #group-chat-modal button[style*="background: transparent"],
html[data-pbb-theme="light"] #group-chat-modal button[style*="background: #f1f5f9"],
html[data-pbb-theme="light"] #create-group-chat-modal button[style*="background: none"],
html[data-pbb-theme="light"] #direct-message-modal button[style*="background: #f1f5f9"],
html[data-pbb-theme="light"] #coach-chat-modal button[style*="background: #f1f5f9"],
html[data-pbb-theme="light"] #gc-chat-menu-btn {
    background: rgba(255, 255, 255, 0.76) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #dm-messages-container,
html[data-pbb-theme="light"] #chat-messages-container,
html[data-pbb-theme="light"] #gc-messages-container,
html[data-pbb-theme="light"] #message-selector-list,
html[data-pbb-theme="light"] #create-group-chat-modal [style*="max-height: calc(85vh - 140px)"] {
    background: rgba(244, 240, 231, 0.84) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #dm-input,
html[data-pbb-theme="light"] #coach-chat-input,
html[data-pbb-theme="light"] #gc-message-input,
html[data-pbb-theme="light"] #new-group-name,
html[data-pbb-theme="light"] #create-group-chat-modal input,
html[data-pbb-theme="light"] #direct-message-modal input[type="text"],
html[data-pbb-theme="light"] #coach-chat-modal input[type="text"],
html[data-pbb-theme="light"] #group-chat-modal input[type="text"] {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.24) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .dm-bubble,
html[data-pbb-theme="light"] #dm-messages-container [style*="background: white"],
html[data-pbb-theme="light"] #chat-messages-container [style*="background: white"],
html[data-pbb-theme="light"] #gc-messages-container [style*="background: white"],
html[data-pbb-theme="light"] #gc-messages-container [id^="win-card-"] {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #dm-messages-container .dm-bubble[style*="var(--primary)"],
html[data-pbb-theme="light"] #chat-messages-container [style*="var(--chat-bg-user)"],
html[data-pbb-theme="light"] #gc-messages-container [style*="var(--primary)"] {
    background: linear-gradient(135deg, #151515 0%, #34302a 62%, #b8892b 100%) !important;
    color: #ffffff !important;
}

html[data-pbb-theme="light"] #guest-signup-modal {
    background: rgba(248, 245, 238, 0.74) !important;
}

html[data-pbb-theme="light"] #guest-signup-modal > div {
    background:
        radial-gradient(circle at 84% 0%, rgba(216, 178, 94, 0.18), transparent 32%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 240, 231, 0.96)) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 24px 58px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #guest-signup-title {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #guest-signup-message,
html[data-pbb-theme="light"] #guest-signup-modal button[onclick*="closeGuestSignupModal"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #guest-signup-modal button[onclick*="login"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    color: #151515 !important;
    box-shadow: 0 14px 32px rgba(184, 137, 43, 0.18) !important;
}

/* Light-mode readability pass: home, Movement, and calendar. */
html[data-pbb-theme="light"] #view-dashboard,
html[data-pbb-theme="light"] #movement-tab,
html[data-pbb-theme="light"] #view-log-activity,
html[data-pbb-theme="light"] #view-workout-library,
html[data-pbb-theme="light"] #view-prebuilt-programs,
html[data-pbb-theme="light"] #view-workout-subcategories,
html[data-pbb-theme="light"] #view-workout-list,
html[data-pbb-theme="light"] #view-workout-overview,
html[data-pbb-theme="light"] #view-workout-builder,
html[data-pbb-theme="light"] #view-program-builder,
html[data-pbb-theme="light"] #view-your-workouts,
html[data-pbb-theme="light"] #view-week-workouts,
html[data-pbb-theme="light"] #view-week-session,
html[data-pbb-theme="light"] #view-workout-journal-detail,
html[data-pbb-theme="light"] #view-cycle {
    background: linear-gradient(180deg, #fffdf8 0%, #f8f5ee 48%, #eee8dc 100%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-dashboard h1,
html[data-pbb-theme="light"] #view-dashboard h2,
html[data-pbb-theme="light"] #view-dashboard h3,
html[data-pbb-theme="light"] #view-dashboard h4,
html[data-pbb-theme="light"] #view-dashboard .app-logo,
html[data-pbb-theme="light"] #daily-progress-counter,
html[data-pbb-theme="light"] #tamagotchi-level,
html[data-pbb-theme="light"] #tamagotchi-xp-text,
html[data-pbb-theme="light"] #tamagotchi-rank,
html[data-pbb-theme="light"] #battle-stats-row,
html[data-pbb-theme="light"] #battle-stats-row *,
html[data-pbb-theme="light"] .battle-stats-row,
html[data-pbb-theme="light"] .battle-stats-row *,
html[data-pbb-theme="light"] .battle-stat-name,
html[data-pbb-theme="light"] .battle-stat-value {
    color: #151515 !important;
}

/* Personal Home welcome header */
#view-dashboard .app-header {
    gap: 10px;
}

.home-welcome-block {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
}

.home-welcome-title {
    overflow: hidden;
    color: #fffaf2;
    font-family: 'Outfit', sans-serif;
    font-size: 1.55rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.45px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-welcome-date {
    overflow: hidden;
    color: #cfc5ad;
    font-family: 'Inter', sans-serif;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.2px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-header-actions {
    min-width: 0;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 8px;
}

html.pbb-fitgotchi-hidden .dashboard-welcome {
    background: transparent !important;
}

.balance-level-label {
    color: #d8b25e;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.55px;
    text-transform: uppercase;
}

.balance-level-rank {
    margin-left: 8px;
    color: #fffaf2;
    font-family: 'Outfit', sans-serif;
    font-size: 0.98rem;
    font-weight: 750;
    letter-spacing: 0;
    text-transform: none;
}

.balance-level-xp-text {
    flex: 0 0 auto;
    color: #cfc5ad;
    font-size: 0.67rem;
    font-weight: 700;
    white-space: nowrap;
}

html[data-pbb-theme="light"] .home-welcome-title {
    color: #151515 !important;
}

html[data-pbb-theme="light"] .home-welcome-date {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #balance-level-bar {
    background: linear-gradient(180deg, #fffdf8 0%, #f8f5ee 100%);
    border-bottom-color: rgba(184,137,43,0.2);
    color: #151515;
}

html[data-pbb-theme="light"] .balance-level-card {
    background: rgba(255,255,255,0.88);
    border-color: rgba(184,137,43,0.18);
    box-shadow: 0 8px 24px rgba(57,47,31,0.06);
}

html[data-pbb-theme="light"] .balance-level-label {
    color: #765914;
}

html[data-pbb-theme="light"] .balance-level-rank {
    color: #151515;
}

html[data-pbb-theme="light"] .balance-level-xp-text {
    color: #6f6a61;
}

html[data-pbb-theme="light"] .balance-level-progress-track {
    background: #e7dfd0;
}

@media (max-width: 390px) {
    #view-dashboard .app-header {
        gap: 7px;
    }

    .home-welcome-title {
        font-size: 1.35rem;
    }

    .home-welcome-date {
        font-size: 0.68rem;
    }

    .home-header-actions {
        gap: 6px;
    }

    .home-header-actions .streak-header-widget {
        padding-right: 8px;
        padding-left: 7px;
    }
}

html[data-pbb-theme="light"] #view-dashboard p,
html[data-pbb-theme="light"] #view-dashboard .text-muted,
html[data-pbb-theme="light"] #tamagotchi-fallback-msg,
html[data-pbb-theme="light"] .battle-stat-label {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #tamagotchi-stats-bar,
html[data-pbb-theme="light"] #battle-stats-row,
html[data-pbb-theme="light"] .battle-stats-row {
    background: linear-gradient(180deg, #ffffff 0%, #f3eee3 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 14px 34px rgba(57, 47, 31, 0.1) !important;
}

html[data-pbb-theme="light"] .battle-stat,
html[data-pbb-theme="light"] .story-battle-stat,
html[data-pbb-theme="light"] #tamagotchi-stats-bar > div {
    background: rgba(17, 17, 17, 0.035) !important;
    border: 1px solid rgba(184, 137, 43, 0.12) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #home-friends-pill {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 16px 36px rgba(57, 47, 31, 0.12) !important;
}

html[data-pbb-theme="light"] #home-friends-pill span:first-child,
html[data-pbb-theme="light"] #home-friends-pill [style*="color: var(--text-main)"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #home-friends-pill-count,
html[data-pbb-theme="light"] #home-friends-pill [style*="color: var(--text-muted)"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #home-friends-pill > div:first-child {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #home-friends-pill > div:first-child svg {
    fill: #ffffff !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.2), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f6f1e5 58%, #e8dcc4 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.14) !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card > div:first-child [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] #performance-manual-stats > div,
html[data-pbb-theme="light"] #fitbit-perf-connected > div > div,
html[data-pbb-theme="light"] #fitbit-perf-disconnected {
    background: rgba(255, 255, 255, 0.68) !important;
    border: 1px solid rgba(184, 137, 43, 0.14) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card > div:first-child [style*="background: rgba(255,255,255"] {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card div,
html[data-pbb-theme="light"] #fitbit-performance-card span,
html[data-pbb-theme="light"] #fitbit-performance-card [id^="perf-"],
html[data-pbb-theme="light"] #fitbit-performance-card [id^="fitbit-perf-"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card [style*="rgba(255,255,255,0.55)"],
html[data-pbb-theme="light"] #fitbit-performance-card [style*="rgba(255,255,255,0.6)"],
html[data-pbb-theme="light"] #fitbit-performance-card [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] #fitbit-performance-card [style*="rgba(255,255,255,0.75)"],
html[data-pbb-theme="light"] #fitbit-performance-card [style*="rgba(255,255,255,0.85)"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card svg {
    fill: #151515 !important;
}

html[data-pbb-theme="light"] #fitbit-performance-card > div:first-child [style*="background: rgba(255,255,255"] svg {
    fill: #ffffff !important;
}

html[data-pbb-theme="light"] #daily-quiz-card {
    background:
        radial-gradient(circle at 90% 0%, rgba(255, 255, 255, 0.46), transparent 28%),
        linear-gradient(135deg, #fff1bd 0%, #e1b64f 52%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.18) !important;
}

html[data-pbb-theme="light"] #daily-quiz-card h3,
html[data-pbb-theme="light"] #daily-quiz-card p,
html[data-pbb-theme="light"] #daily-quiz-card #daily-quiz-lesson-title,
html[data-pbb-theme="light"] #daily-quiz-card #daily-quiz-lesson-context,
html[data-pbb-theme="light"] #daily-quiz-card [style*="color: white"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #daily-quiz-card [style*="background: rgba(255,255,255,0.2)"] {
    background: rgba(21, 21, 21, 0.08) !important;
    border: 1px solid rgba(21, 21, 21, 0.1) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #daily-quiz-lesson-info {
    background: rgba(255, 255, 255, 0.78) !important;
    border: 1px solid rgba(21, 21, 21, 0.14) !important;
    box-shadow: 0 12px 26px rgba(57, 47, 31, 0.13), inset 0 1px 0 rgba(255, 255, 255, 0.68) !important;
}

html[data-pbb-theme="light"] #daily-quiz-icon {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
    color: #ffffff !important;
    border: 0 !important;
}

html[data-pbb-theme="light"] #daily-quiz-card #daily-quiz-icon {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
    color: #ffffff !important;
    border: 0 !important;
}

html[data-pbb-theme="light"] #daily-quiz-card svg {
    fill: #151515 !important;
}

html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"],
html[data-pbb-theme="light"] .cohort-waiting-card,
html[data-pbb-theme="light"] .cohort-active-card,
html[data-pbb-theme="light"] .cohort-acceptance-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.2), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f7f2e7 58%, #e8dcc4 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.14) !important;
}

html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] .cohort-active-card [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="background: rgba(255,255,255"] {
    background: rgba(21, 21, 21, 0.055) !important;
    border: 1px solid rgba(184, 137, 43, 0.14) !important;
}

html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="color: white"],
html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="color:white"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="color: white"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="color:white"],
html[data-pbb-theme="light"] #home-challenges-empty [style*="color: white"],
html[data-pbb-theme="light"] #home-challenges-empty [style*="color:white"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="color: white"],
html[data-pbb-theme="light"] .cohort-active-card [style*="color: white"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="color: white"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.5)"],
html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.8)"],
html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.85)"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.5)"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.8)"],
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] [style*="rgba(255,255,255,0.85)"],
html[data-pbb-theme="light"] #home-challenges-empty [style*="rgba(255,255,255,0.5)"],
html[data-pbb-theme="light"] #home-challenges-empty [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] #home-challenges-empty [style*="rgba(255,255,255,0.8)"],
html[data-pbb-theme="light"] #home-challenges-empty [style*="rgba(255,255,255,0.85)"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="rgba(255,255,255,0.5)"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="rgba(255,255,255,0.8)"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="rgba(255,255,255,0.85)"],
html[data-pbb-theme="light"] .cohort-waiting-card [style*="rgba(255,255,255,0.92)"],
html[data-pbb-theme="light"] .cohort-active-card [style*="rgba(255,255,255,0.5)"],
html[data-pbb-theme="light"] .cohort-active-card [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] .cohort-active-card [style*="rgba(255,255,255,0.8)"],
html[data-pbb-theme="light"] .cohort-active-card [style*="rgba(255,255,255,0.85)"],
html[data-pbb-theme="light"] .cohort-active-card [style*="rgba(255,255,255,0.92)"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="rgba(255,255,255,0.5)"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="rgba(255,255,255,0.7)"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="rgba(255,255,255,0.8)"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="rgba(255,255,255,0.85)"],
html[data-pbb-theme="light"] .cohort-acceptance-card [style*="rgba(255,255,255,0.92)"] {
    color: #6f6a61 !important;
    fill: #6f6a61 !important;
}

html[data-pbb-theme="light"] #home-challenges-list > div[style*="border-radius: 20px"] svg,
html[data-pbb-theme="light"] #extra-challenges-list > div[style*="border-radius: 20px"] svg,
html[data-pbb-theme="light"] #home-challenges-empty svg,
html[data-pbb-theme="light"] .cohort-waiting-card svg,
html[data-pbb-theme="light"] .cohort-active-card svg,
html[data-pbb-theme="light"] .cohort-acceptance-card svg {
    fill: #6f6a61 !important;
}

html[data-pbb-theme="light"] #home-challenges-list button[onclick*="leaveChallengeFromCard"],
html[data-pbb-theme="light"] #home-challenges-list button[onclick*="declineChallengeInvite"],
html[data-pbb-theme="light"] #extra-challenges-list button[onclick*="leaveChallengeFromCard"] {
    background: #151515 !important;
    border: 1px solid #151515 !important;
    color: #ffffff !important;
}

/* Workout add/create exercise sheets: override legacy inline white surfaces for both themes. */
html:not([data-pbb-theme="light"]) #add-exercise-modal,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal {
    background: rgba(0, 0, 0, 0.72) !important;
    color: #fffaf2 !important;
    backdrop-filter: blur(12px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(118%) !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal > div,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal > div {
    background:
        radial-gradient(circle at 86% 0%, rgba(245, 217, 138, 0.12), transparent 30%),
        linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(5, 5, 5, 0.99)) !important;
    border-left: 1px solid rgba(245, 217, 138, 0.12) !important;
    border-right: 1px solid rgba(245, 217, 138, 0.12) !important;
    color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal > div > div[style*="position: sticky"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal > div > div[style*="position: sticky"] {
    background: rgba(12, 12, 12, 0.94) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.36) !important;
    backdrop-filter: blur(16px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal > div > div[style*="background: #f8fafc"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [onclick*="openCreateCustomExerciseModal"],
html:not([data-pbb-theme="light"]) #add-exercise-results > div,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background: #f8fafc"],
html:not([data-pbb-theme="light"]) #my-custom-exercises-list > div {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="background: white"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background: white"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="background:white"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background:white"] {
    background: rgba(255, 255, 255, 0.07) !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal input,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal input,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal textarea,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal select {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    caret-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal input::placeholder,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal input::placeholder,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal textarea::placeholder {
    color: rgba(248, 247, 242, 0.48) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.48) !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal label,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal label,
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color: var(--text-main)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: var(--text-main)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color:var(--text-main)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:var(--text-main)"] {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color: var(--text-muted)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: var(--text-muted)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color:var(--text-muted)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:var(--text-muted)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color: #94a3b8"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: #94a3b8"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color:#94a3b8"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:#94a3b8"] {
    color: rgba(248, 247, 242, 0.68) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.68) !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color: var(--primary)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: var(--primary)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="fill: var(--primary)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="fill: var(--primary)"] {
    color: #f5d98a !important;
    fill: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html[data-pbb-theme="light"] #add-exercise-modal,
html[data-pbb-theme="light"] #create-custom-exercise-modal {
    background: rgba(21, 21, 21, 0.26) !important;
    color: #151515 !important;
    backdrop-filter: blur(10px) saturate(112%) !important;
    -webkit-backdrop-filter: blur(10px) saturate(112%) !important;
}

html[data-pbb-theme="light"] #add-exercise-modal > div,
html[data-pbb-theme="light"] #create-custom-exercise-modal > div {
    background: linear-gradient(180deg, #ffffff 0%, #f8f5ee 100%) !important;
    border-left: 1px solid rgba(184, 137, 43, 0.14) !important;
    border-right: 1px solid rgba(184, 137, 43, 0.14) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #add-exercise-modal > div > div[style*="position: sticky"],
html[data-pbb-theme="light"] #create-custom-exercise-modal > div > div[style*="position: sticky"] {
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.1) !important;
    backdrop-filter: blur(16px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
}

html[data-pbb-theme="light"] #add-exercise-modal > div > div[style*="background: #f8fafc"],
html[data-pbb-theme="light"] #add-exercise-modal [onclick*="openCreateCustomExerciseModal"],
html[data-pbb-theme="light"] #add-exercise-results > div,
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="background: #f8fafc"],
html[data-pbb-theme="light"] #my-custom-exercises-list > div {
    background: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 10px 24px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #add-exercise-modal input,
html[data-pbb-theme="light"] #create-custom-exercise-modal input,
html[data-pbb-theme="light"] #create-custom-exercise-modal textarea,
html[data-pbb-theme="light"] #create-custom-exercise-modal select {
    background: #ffffff !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    caret-color: #151515 !important;
}

html[data-pbb-theme="light"] #add-exercise-modal input::placeholder,
html[data-pbb-theme="light"] #create-custom-exercise-modal input::placeholder,
html[data-pbb-theme="light"] #create-custom-exercise-modal textarea::placeholder {
    color: rgba(21, 21, 21, 0.42) !important;
    -webkit-text-fill-color: rgba(21, 21, 21, 0.42) !important;
}

html[data-pbb-theme="light"] #add-exercise-modal label,
html[data-pbb-theme="light"] #create-custom-exercise-modal label,
html[data-pbb-theme="light"] #add-exercise-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #add-exercise-modal [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color:var(--text-main)"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #add-exercise-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #add-exercise-modal [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #add-exercise-modal [style*="color: #94a3b8"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color: #94a3b8"],
html[data-pbb-theme="light"] #add-exercise-modal [style*="color:#94a3b8"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color:#94a3b8"] {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #add-exercise-modal [style*="color: var(--primary)"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="color: var(--primary)"],
html[data-pbb-theme="light"] #add-exercise-modal [style*="fill: var(--primary)"],
html[data-pbb-theme="light"] #create-custom-exercise-modal [style*="fill: var(--primary)"] {
    color: #9f7628 !important;
    fill: #9f7628 !important;
    -webkit-text-fill-color: #9f7628 !important;
}

/* Final light-mode specificity pass for older modal descendants. */
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header h2,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [onclick*="_startQuizBattleVsAI"] div,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card div,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card,
html[data-pbb-theme="light"] #game-challenge-modal h3,
html[data-pbb-theme="light"] #story-choice-modal h3,
html[data-pbb-theme="light"] #story-choice-modal button,
html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option,
html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option *,
html[data-pbb-theme="light"] #calendar-workout-action-modal h3,
html[data-pbb-theme="light"] #calendar-workout-action-modal button,
html[data-pbb-theme="light"] #calendar-workout-action-modal button * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [onclick*="_startQuizBattleVsAI"] div:last-child,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-close,
html[data-pbb-theme="light"] #game-challenge-modal p,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card div:last-child,
html[data-pbb-theme="light"] #story-choice-modal p,
html[data-pbb-theme="light"] #calendar-workout-action-modal p {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay .qb-bet-btn,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-close,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"],
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn),
html[data-pbb-theme="light"] #story-choice-modal button:last-child {
    background: rgba(255, 255, 255, 0.84) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"] svg,
html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"] path,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn) svg,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn) path {
    color: #6f6a61 !important;
    fill: #6f6a61 !important;
    stroke: #6f6a61 !important;
}

/* Cross-theme modal readability guard.
   This final pass catches older inline modal styles after the light/dark theme merge. */
:root,
html[data-pbb-theme="dark"] {
    --pbb-readable-overlay: rgba(0, 0, 0, 0.74);
    --pbb-readable-sheet: #090909;
    --pbb-readable-surface: #141414;
    --pbb-readable-surface-soft: rgba(255, 255, 255, 0.075);
    --pbb-readable-surface-strong: rgba(255, 255, 255, 0.12);
    --pbb-readable-text: #fffaf2;
    --pbb-readable-muted: rgba(248, 247, 242, 0.72);
    --pbb-readable-faint: rgba(248, 247, 242, 0.52);
    --pbb-readable-border: rgba(245, 217, 138, 0.18);
    --pbb-readable-border-soft: rgba(255, 255, 255, 0.12);
    --pbb-readable-input: rgba(255, 255, 255, 0.09);
    --pbb-readable-action-bg: linear-gradient(135deg, #f5d98a 0%, #d8b25e 58%, #b8892b 100%);
    --pbb-readable-action-text: #111111;
    --pbb-readable-danger: #fca5a5;
    --pbb-readable-success: #8fe7b4;
    --pbb-readable-shadow: 0 24px 58px rgba(0, 0, 0, 0.48);
}

html[data-pbb-theme="light"] {
    --pbb-readable-overlay: rgba(21, 21, 21, 0.26);
    --pbb-readable-sheet: #fffdf7;
    --pbb-readable-surface: #ffffff;
    --pbb-readable-surface-soft: rgba(21, 21, 21, 0.045);
    --pbb-readable-surface-strong: rgba(245, 217, 138, 0.22);
    --pbb-readable-text: #151515;
    --pbb-readable-muted: #6f6a61;
    --pbb-readable-faint: rgba(21, 21, 21, 0.44);
    --pbb-readable-border: rgba(184, 137, 43, 0.18);
    --pbb-readable-border-soft: rgba(21, 21, 21, 0.08);
    --pbb-readable-input: #ffffff;
    --pbb-readable-action-bg: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%);
    --pbb-readable-action-text: #ffffff;
    --pbb-readable-danger: #b91c1c;
    --pbb-readable-success: #047857;
    --pbb-readable-shadow: 0 24px 58px rgba(57, 47, 31, 0.16);
}

/* Daily Score popup: Capacitor/WebKit can retain an inherited text fill when
   the app theme changes, so every readable text role is explicit here. */
html[data-pbb-theme] .score-popup-modal {
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] .score-popup-modal :where(
    .score-popup-header,
    .nutrition-score-value,
    #popup-score-grade,
    .calorie-projection-value
) {
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] .score-popup-modal :where(
    .score-popup-close,
    .score-breakdown-item,
    .daily-insight-item,
    .calorie-projection-text,
    .calorie-projection-unit,
    .calorie-projection-subtext,
    #popup-claim-hint,
    #popup-finish-hint
) {
    color: var(--pbb-readable-muted) !important;
    -webkit-text-fill-color: var(--pbb-readable-muted) !important;
}

html[data-pbb-theme] .score-popup-modal .daily-insight-item,
html[data-pbb-theme] .score-popup-modal .calorie-projection-section {
    background: var(--pbb-readable-surface-soft) !important;
    border: 1px solid var(--pbb-readable-border-soft) !important;
}

html[data-pbb-theme] .score-popup-modal :where(#popup-claim-btn, #popup-finish-day-btn) {
    color: var(--pbb-readable-action-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-action-text) !important;
}

html[data-pbb-theme] .score-popup-modal :where(#popup-claim-btn, #popup-finish-day-btn) span {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

html[data-pbb-theme] :where(
    .modal-overlay,
    .adaptive-modal-overlay,
    .completion-modal-overlay,
    .score-popup-overlay,
    .meal-detail-popup,
    .meal-breakdown-popup,
    .edit-items-modal,
    .meal-input-modal,
    .meal-text-modal,
    .recent-meals-modal,
    .meal-builder-modal,
    .meal-builder-text-modal,
    .pref-wizard-overlay,
    .stat-alloc-overlay,
    .image-modal-overlay,
    .workout-summary-modal,
    .avatar-customizer-modal,
    .avatar-customizer-overlay,
    .animation-selector-backdrop,
    #guest-signup-modal,
    #home-friends-modal,
    #direct-message-modal,
    #coach-chat-modal,
    #message-selector-modal,
    #group-chat-modal,
    #create-group-chat-modal,
    #create-challenge-modal,
    #challenge-results-modal,
    #challenge-pass-modal,
    #coin-shop-modal,
    #rare-rewards-modal,
    #badge-collection-modal,
    #share-win-modal,
    #store-review-modal,
    #workout-rating-modal,
    #quick-share-modal,
    #checkin-modal,
    #check-in-modal,
    #cycle-tracking-modal,
    #weigh-in-modal,
    #friday-weigh-share-modal,
    #weigh-in-editor-modal,
    #shared-weigh-trend-modal,
    #calories-macro-actions-overlay,
    #macro-settings-modal-overlay,
    #low-energy-popup,
    #game-challenge-modal,
    #game-result-overlay,
    #quiz-battle-invite-overlay,
    #battle-invite-overlay,
    #arena-invite-overlay,
    #pb-share-options-modal,
    #reflection-modal,
    #progress-photo-modal,
    #pb-picker-overlay,
    #weekly-goals-modal,
    #weekly-checkin-preview-overlay,
    #custom-quiz-modal,
    #custom-checklist-modal,
    #custom-tracker-modal,
    #custom-challenge-modal,
    #camera-permission-dialog-overlay,
    #workout-picker-modal,
    #calendar-workout-action-modal,
    #replacement-picker-modal,
    #calendar-activity-modal,
    #replacement-subcategory-modal,
    #replacement-duration-modal,
    #workout-variations-modal,
    #workout-exercises-modal,
    #equipment-picker-overlay,
    #dietary-picker-overlay,
    #health-connect-modal,
    #change-password-modal-overlay,
    #water-entry-overlay,
    #bulk-entry-modal,
    #quick-entry-tutorial-modal,
    #exercise-chart-modal,
    #weight-goal-picker-modal,
    #add-exercise-modal,
    #create-custom-exercise-modal
) {
    color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] :where(
    .modal-content,
    .onboarding-modal,
    .completion-modal,
    .adaptive-modal,
    .adaptive-modal-card,
    .completion-modal-content,
    .score-popup-modal,
    .meal-detail-container,
    .meal-detail-content,
    .meal-breakdown-card,
    .edit-items-container,
    .meal-input-container,
    .meal-text-modal-container,
    .recent-meals-container,
    .meal-builder-container,
    .meal-builder-text-container,
    .pref-wizard-modal,
    .stat-alloc-modal,
    .weekly-goal-sheet,
    .battle-invite-modal,
    .game-result-card,
    .workout-summary-modal > div,
    .avatar-customizer-content,
    .animation-selector-modal,
    #guest-signup-modal > div,
    #home-friends-modal > div,
    #direct-message-modal > div,
    #coach-chat-modal > div,
    #message-selector-modal > div,
    #group-chat-modal > div,
    #create-group-chat-modal > div,
    #create-challenge-modal > div,
    #challenge-results-modal > div,
    #challenge-pass-modal > div,
    #coin-shop-modal > div,
    #rare-rewards-modal > div,
    #badge-collection-modal > div,
    #share-win-modal > div,
    #store-review-modal > div,
    #workout-rating-modal > div,
    #quick-share-modal > div,
    #checkin-modal > div,
    #check-in-modal > div,
    #cycle-tracking-modal > div,
    #weigh-in-modal > div,
    #friday-weigh-share-modal > div,
    #weigh-in-editor-modal > div,
    #shared-weigh-trend-modal > div,
    #calories-macro-actions-overlay > div,
    #macro-settings-modal-overlay > div,
    #low-energy-popup > div,
    #game-challenge-modal > div,
    #game-result-overlay > div,
    #battle-invite-overlay > div,
    #arena-invite-overlay > div,
    #pb-share-options-modal > div,
    #reflection-modal > div,
    #progress-photo-modal > div,
    #pb-picker-overlay > div,
    #weekly-goals-modal > div,
    #weekly-checkin-preview-overlay > div,
    #custom-quiz-modal > div,
    #custom-checklist-modal > div,
    #custom-tracker-modal > div,
    #custom-challenge-modal > div,
    #camera-permission-dialog-overlay > div,
    #workout-picker-modal > div,
    #calendar-workout-action-modal > div,
    #replacement-picker-modal > div,
    #calendar-activity-modal > div,
    #replacement-subcategory-modal > div,
    #replacement-duration-modal > div,
    #workout-variations-modal > div,
    #workout-exercises-modal > div,
    #equipment-picker-overlay > div,
    #dietary-picker-overlay > div,
    #health-connect-modal > div,
    #change-password-modal-overlay > div,
    #water-entry-sheet,
    #bulk-entry-modal > div,
    #quick-entry-tutorial-modal > div,
    #exercise-chart-modal > div,
    #weight-goal-picker-modal > div,
    #add-exercise-modal > div,
    #create-custom-exercise-modal > div
) {
    background:
        radial-gradient(circle at 88% 0%, var(--pbb-readable-surface-strong), transparent 32%),
        linear-gradient(180deg, var(--pbb-readable-surface), var(--pbb-readable-sheet)) !important;
    border-color: var(--pbb-readable-border) !important;
    color: var(--pbb-readable-text) !important;
    box-shadow: var(--pbb-readable-shadow) !important;
}

html[data-pbb-theme] :where(
    .modal-content,
    .onboarding-modal,
    .adaptive-modal,
    .completion-modal,
    .completion-modal-content,
    .score-popup-modal,
    .meal-detail-container,
    .meal-breakdown-card,
    .edit-items-container,
    .meal-input-container,
    .meal-text-modal-container,
    .recent-meals-container,
    .meal-builder-container,
    .meal-builder-text-container,
    .pref-wizard-modal,
    .weekly-goal-sheet,
    .workout-summary-modal > div,
    .avatar-customizer-content,
    .animation-selector-modal,
    #checkin-modal > div,
    #check-in-modal > div,
    #bulk-entry-modal > div,
    #quick-entry-tutorial-modal > div,
    #exercise-chart-modal > div,
    #weight-goal-picker-modal > div,
    #add-exercise-modal > div,
    #create-custom-exercise-modal > div,
    #water-entry-sheet
) :where(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    strong,
    label,
    legend,
    th,
    [style*="color:var(--text-main)"],
    [style*="color: var(--text-main)"],
    [style*="color:#0f172a"],
    [style*="color: #0f172a"],
    [style*="color:#111827"],
    [style*="color: #111827"],
    [style*="color:#1f2937"],
    [style*="color: #1f2937"],
    [style*="color:#334155"],
    [style*="color: #334155"]
) {
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] :where(
    .modal-content,
    .onboarding-modal,
    .adaptive-modal,
    .completion-modal,
    .completion-modal-content,
    .score-popup-modal,
    .meal-detail-container,
    .meal-breakdown-card,
    .edit-items-container,
    .meal-input-container,
    .meal-text-modal-container,
    .recent-meals-container,
    .meal-builder-container,
    .meal-builder-text-container,
    .pref-wizard-modal,
    .weekly-goal-sheet,
    .workout-summary-modal > div,
    .avatar-customizer-content,
    .animation-selector-modal,
    #checkin-modal > div,
    #check-in-modal > div,
    #bulk-entry-modal > div,
    #quick-entry-tutorial-modal > div,
    #exercise-chart-modal > div,
    #weight-goal-picker-modal > div,
    #add-exercise-modal > div,
    #create-custom-exercise-modal > div,
    #water-entry-sheet
) :where(
    p,
    small,
    td,
    li,
    [style*="color:var(--text-muted)"],
    [style*="color: var(--text-muted)"],
    [style*="color:#475569"],
    [style*="color: #475569"],
    [style*="color:#64748b"],
    [style*="color: #64748b"],
    [style*="color:#6b7280"],
    [style*="color: #6b7280"],
    [style*="color:#718096"],
    [style*="color: #718096"],
    [style*="color:#94a3b8"],
    [style*="color: #94a3b8"],
    [style*="color:#999"],
    [style*="color: #999"],
    [style*="color:#666"],
    [style*="color: #666"],
    [style*="rgba(255,255,255,0.4)"],
    [style*="rgba(255, 255, 255, 0.4)"],
    [style*="rgba(255,255,255,.4)"],
    [style*="rgba(255, 255, 255, .4)"],
    [style*="rgba(255,255,255,0.5)"],
    [style*="rgba(255, 255, 255, 0.5)"],
    [style*="rgba(255,255,255,.5)"],
    [style*="rgba(255, 255, 255, .5)"],
    [style*="rgba(255,255,255,0.6)"],
    [style*="rgba(255, 255, 255, 0.6)"],
    [style*="rgba(255,255,255,.6)"],
    [style*="rgba(255, 255, 255, .6)"],
    [style*="rgba(255,255,255,0.7)"],
    [style*="rgba(255, 255, 255, 0.7)"],
    [style*="rgba(255,255,255,.7)"],
    [style*="rgba(255, 255, 255, .7)"]
) {
    color: var(--pbb-readable-muted) !important;
    -webkit-text-fill-color: var(--pbb-readable-muted) !important;
}

html[data-pbb-theme] :where(
    .modal-content,
    .adaptive-modal,
    .completion-modal,
    .score-popup-modal,
    .meal-detail-container,
    .meal-breakdown-card,
    .edit-items-container,
    .meal-input-container,
    .meal-text-modal-container,
    .recent-meals-container,
    .meal-builder-container,
    .meal-builder-text-container,
    .pref-wizard-modal,
    .weekly-goal-sheet,
    .workout-summary-modal > div,
    .avatar-customizer-content,
    .animation-selector-modal,
    #checkin-modal > div,
    #check-in-modal > div,
    #bulk-entry-modal > div,
    #quick-entry-tutorial-modal > div,
    #exercise-chart-modal > div,
    #weight-goal-picker-modal > div,
    #add-exercise-modal > div,
    #create-custom-exercise-modal > div,
    #water-entry-sheet
) :where(input, textarea, select) {
    background: var(--pbb-readable-input) !important;
    border-color: var(--pbb-readable-border) !important;
    color: var(--pbb-readable-text) !important;
    caret-color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] :where(
    .modal-content,
    .adaptive-modal,
    .completion-modal,
    .score-popup-modal,
    .meal-detail-container,
    .meal-breakdown-card,
    .edit-items-container,
    .meal-input-container,
    .meal-text-modal-container,
    .recent-meals-container,
    .meal-builder-container,
    .meal-builder-text-container,
    .pref-wizard-modal,
    .weekly-goal-sheet,
    .workout-summary-modal > div,
    .avatar-customizer-content,
    .animation-selector-modal,
    #checkin-modal > div,
    #check-in-modal > div,
    #bulk-entry-modal > div,
    #quick-entry-tutorial-modal > div,
    #exercise-chart-modal > div,
    #weight-goal-picker-modal > div,
    #add-exercise-modal > div,
    #create-custom-exercise-modal > div,
    #water-entry-sheet
) :where(
    [style*="background: white"],
    [style*="background:white"],
    [style*="background: #fff"],
    [style*="background:#fff"],
    [style*="background: #ffffff"],
    [style*="background:#ffffff"],
    [style*="background: #f8fafc"],
    [style*="background:#f8fafc"],
    [style*="background: #f1f5f9"],
    [style*="background:#f1f5f9"],
    [style*="background: #e2e8f0"],
    [style*="background:#e2e8f0"]
) {
    background: var(--pbb-readable-surface-soft) !important;
    border-color: var(--pbb-readable-border-soft) !important;
}

html[data-pbb-theme="light"] .recent-meals-container {
    background:
        radial-gradient(circle at 86% 0%, rgba(245, 217, 138, 0.2), transparent 30%),
        linear-gradient(180deg, #fffef9 0%, #ffffff 48%, #fffdf7 100%) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .recent-meals-header {
    background: rgba(255, 253, 247, 0.98) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .recent-meals-header h3,
html[data-pbb-theme="light"] .recent-meal-name,
html[data-pbb-theme="light"] .recent-meal-confirm-name,
html[data-pbb-theme="light"] .recent-meal-btn-quick {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .recent-meals-close,
html[data-pbb-theme="light"] .recent-meals-empty,
html[data-pbb-theme="light"] .recent-meals-empty span,
html[data-pbb-theme="light"] .recent-meal-macros,
html[data-pbb-theme="light"] .recent-meal-confirm-macros,
html[data-pbb-theme="light"] .recent-meal-confirm-back button {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .recent-meal-item,
html[data-pbb-theme="light"] .recent-meals-tab,
html[data-pbb-theme="light"] .recent-meal-icon,
html[data-pbb-theme="light"] .recent-meal-btn-quick {
    background: rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(184, 137, 43, 0.14) !important;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .recent-meal-item:active,
html[data-pbb-theme="light"] .recent-meal-item:hover,
html[data-pbb-theme="light"] .recent-meal-btn-quick:hover {
    background: rgba(245, 217, 138, 0.16) !important;
}

html[data-pbb-theme="light"] .recent-meal-btn-quick {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .recent-meals-tab {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .recent-meals-tab.active {
    background: rgba(245, 217, 138, 0.58) !important;
    border-color: rgba(184, 137, 43, 0.28) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .recent-meal-add,
html[data-pbb-theme="light"] .recent-meal-btn-photo,
html[data-pbb-theme="light"] .recent-meal-btn-photo *,
html[data-pbb-theme="light"] .recent-meal-btn-photo .xp-badge {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .recent-meal-btn-photo .xp-badge {
    background: rgba(255, 255, 255, 0.46) !important;
}

html[data-pbb-theme="light"] .recent-meal-item > svg,
html[data-pbb-theme="light"] .recent-meals-empty svg {
    color: #8a8174 !important;
    stroke: #8a8174 !important;
}

html[data-pbb-theme="light"] .meal-detail-container,
html[data-pbb-theme="light"] .meal-detail-content {
    background:
        radial-gradient(circle at 86% 0%, rgba(245, 217, 138, 0.18), transparent 30%),
        linear-gradient(180deg, #fffef9 0%, #ffffff 50%, #fffdf7 100%) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-detail-photo-placeholder {
    background: linear-gradient(135deg, #fffdf7 0%, #f7f1e2 100%) !important;
    color: #8a8174 !important;
    -webkit-text-fill-color: #8a8174 !important;
}

html[data-pbb-theme="light"] .meal-detail-close {
    background: rgba(255, 255, 255, 0.94) !important;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
    border: 1px solid rgba(184, 137, 43, 0.14) !important;
}

html[data-pbb-theme="light"] .meal-detail-time,
html[data-pbb-theme="light"] .meal-detail-calories-label,
html[data-pbb-theme="light"] .meal-detail-macro-label,
html[data-pbb-theme="light"] .meal-detail-items-title,
html[data-pbb-theme="light"] .meal-detail-item-cals {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .meal-detail-foods,
html[data-pbb-theme="light"] .meal-detail-calories-value,
html[data-pbb-theme="light"] .meal-detail-item-name {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-detail-calories,
html[data-pbb-theme="light"] .meal-detail-macro {
    background: rgba(255, 255, 255, 0.82) !important;
    border: 1px solid rgba(184, 137, 43, 0.12) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-detail-macro.protein .meal-detail-macro-value,
html[data-pbb-theme="light"] .meal-detail-macro.carbs .meal-detail-macro-value,
html[data-pbb-theme="light"] .meal-detail-macro.fat .meal-detail-macro-value {
    color: #b8892b !important;
    -webkit-text-fill-color: #b8892b !important;
}

html[data-pbb-theme="light"] .meal-detail-items {
    border-top-color: rgba(21, 21, 21, 0.08) !important;
}

html[data-pbb-theme="light"] .meal-detail-item {
    border-bottom-color: rgba(21, 21, 21, 0.08) !important;
}

html[data-pbb-theme="light"] .meal-detail-edit-btn,
html[data-pbb-theme="light"] .meal-detail-edit-btn * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

.edit-items-header h3 {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

.edit-items-close {
    background: rgba(255, 255, 255, 0.94) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
}

html[data-pbb-theme="light"] #weight-goal-picker-modal button {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .stat-alloc-header h2 {
    color: #8a641c !important;
    -webkit-text-fill-color: #8a641c !important;
    text-shadow: none !important;
}

html[data-pbb-theme="light"] .stat-alloc-points-left {
    color: #4b5563 !important;
    -webkit-text-fill-color: #4b5563 !important;
}

html[data-pbb-theme="light"] .stat-alloc-points-left span {
    color: #b8892b !important;
    -webkit-text-fill-color: #b8892b !important;
}

html[data-pbb-theme="light"] .stat-alloc-row {
    background: rgba(21, 21, 21, 0.045) !important;
    border-color: rgba(21, 21, 21, 0.08) !important;
}

html[data-pbb-theme="light"] .stat-alloc-name {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .stat-alloc-desc {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .stat-alloc-confirm:disabled {
    background: rgba(21, 21, 21, 0.08) !important;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .animation-selector-modal,
html[data-pbb-theme="light"] .animation-selector-modal * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .animation-selector-modal :where(.animation-selector-close, .animation-selector-content) {
    color: var(--pbb-readable-muted) !important;
    -webkit-text-fill-color: var(--pbb-readable-muted) !important;
}

html[data-pbb-theme] #quick-entry-tutorial-modal > div > div:first-child h2,
html[data-pbb-theme] #quick-entry-tutorial-modal > div > div:first-child p {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-pbb-theme="light"] :where(
    #monthly-raffle-popup,
    #monthly-raffle-popup *,
    #challenge-leaderboard-modal,
    #challenge-leaderboard-modal *,
    #cohort-info-modal,
    #cohort-info-modal *,
    #challenge-xp-guide-modal,
    #challenge-xp-guide-modal *,
    #battle-mode-overlay,
    #battle-mode-overlay *,
    #tamagotchi-levelup-overlay,
    #tamagotchi-levelup-overlay *,
    #story-viewer-modal,
    #story-viewer-modal *,
    #story-camera-modal,
    #story-camera-modal *,
    #text-editor-overlay,
    #text-editor-overlay *
) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

/* Full-screen media and camera flows are intentionally dark in every theme. */
html[data-pbb-theme="light"] :where(
    #story-preview-modal,
    #meal-preview-modal,
    #workout-preview-modal,
    #workout-camera-modal,
    #unified-camera-modal,
    #exercise-video-modal,
    #video-modal
) {
    background: #000000 !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] :where(
    #story-preview-modal,
    #meal-preview-modal,
    #workout-preview-modal,
    #workout-camera-modal,
    #unified-camera-modal,
    #exercise-video-modal,
    #video-modal
) :where(button, label, span, div, h3, p, input, textarea) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] :where(
    #story-preview-modal,
    #meal-preview-modal,
    #workout-preview-modal,
    #workout-camera-modal,
    #unified-camera-modal,
    #exercise-video-modal,
    #video-modal
) :where(svg, path) {
    color: #fffaf2 !important;
    fill: #fffaf2 !important;
    stroke: #fffaf2 !important;
}

html[data-pbb-theme] :where(#checkin-modal, #check-in-modal) .checkin-btn,
html[data-pbb-theme] :where(#checkin-modal, #check-in-modal) .checkin-btn * {
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme="light"] #meal-preview-modal input,
html[data-pbb-theme="light"] #meal-preview-modal textarea,
html[data-pbb-theme="light"] #unified-camera-modal input,
html[data-pbb-theme="light"] #unified-camera-modal textarea {
    background: rgba(0, 0, 0, 0.72) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
    color: #fffaf2 !important;
    caret-color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #meal-preview-modal input::placeholder,
html[data-pbb-theme="light"] #meal-preview-modal textarea::placeholder,
html[data-pbb-theme="light"] #unified-camera-modal input::placeholder,
html[data-pbb-theme="light"] #unified-camera-modal textarea::placeholder {
    color: rgba(248, 247, 242, 0.62) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.62) !important;
}

html[data-pbb-theme="light"] #meal-preview-modal .meal-photo-type-pill:not(.active) {
    background: rgba(0, 0, 0, 0.56) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
    color: rgba(248, 247, 242, 0.78) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.78) !important;
}

html[data-pbb-theme="light"] #rest-timer-card,
html[data-pbb-theme="light"] #rest-timer-card * {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #rest-timer-card :where(svg, path) {
    fill: #fffaf2 !important;
    stroke: #fffaf2 !important;
}

html[data-pbb-theme="light"] #rest-timer-card :where(
    [style*="#94a3b8"],
    [style*="rgba(255,255,255,0.8)"],
    [style*="rgba(255, 255, 255, 0.8)"]
) {
    color: rgba(248, 247, 242, 0.74) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.74) !important;
    fill: rgba(248, 247, 242, 0.74) !important;
}

/* Legacy inline overlays that keep their own theme-independent layouts. */
html[data-pbb-theme="light"] #lp-welcome-overlay,
html[data-pbb-theme="light"] #lp-welcome-overlay :where(h1, h2, h3, p, div, span, strong) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #lp-welcome-overlay #lp-welcome-start-btn,
html[data-pbb-theme="light"] #lp-welcome-overlay #lp-welcome-start-btn * {
    color: #090909 !important;
    -webkit-text-fill-color: #090909 !important;
}

html[data-pbb-theme="light"] #water-entry-overlay {
    background: rgba(21, 21, 21, 0.26) !important;
}

html[data-pbb-theme="light"] #water-entry-sheet {
    background:
        radial-gradient(circle at 88% 0%, rgba(56, 189, 248, 0.12), transparent 32%),
        linear-gradient(180deg, #ffffff, #fffdf7) !important;
    border-color: rgba(14, 165, 233, 0.18) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #water-entry-sheet :where(div, label, h3, span) {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #water-entry-sheet :where(
    h3,
    [style*="#0284c7"],
    [style*="#0369a1"],
    [style*="#38bdf8"]
) {
    color: #0369a1 !important;
    -webkit-text-fill-color: #0369a1 !important;
}

html[data-pbb-theme="light"] #water-entry-sheet :where(
    [style*="#374151"],
    [style*="#6b7280"],
    [style*="#9ca3af"]
) {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #water-entry-sheet input {
    background: #ffffff !important;
    border-color: rgba(14, 165, 233, 0.24) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #water-entry-sheet .water-amount-btn {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(14, 165, 233, 0.18) !important;
}
/* Other-user profile polish */
#view-user-profile.user-profile-view {
    --up-safe-top: env(safe-area-inset-top, 0px);
    position: fixed;
    inset: 0;
    width: 100%;
    z-index: 10000;
    --up-bg: linear-gradient(180deg, #17130f 0%, #0b0b0a 48%, #050505 100%);
    --up-panel: rgba(255, 250, 242, 0.96);
    --up-panel-soft: rgba(255, 255, 255, 0.08);
    --up-panel-faint: rgba(255, 255, 255, 0.045);
    --up-border: rgba(226, 189, 99, 0.22);
    --up-text: #fffaf2;
    --up-muted: rgba(255, 250, 242, 0.72);
    --up-card-text: #151515;
    --up-card-muted: #655e54;
    --up-accent: #e2bd63;
    --up-green: #92d5a3;
    background: var(--up-bg) !important;
    color: var(--up-text) !important;
    height: 100vh;
    height: 100dvh;
    max-height: 100vh;
    max-height: 100dvh;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding: 0 0 calc(24px + env(safe-area-inset-bottom, 0px)) !important;
    box-sizing: border-box;
}

html[data-pbb-theme="light"] #view-user-profile.user-profile-view {
    --up-bg: linear-gradient(180deg, #fffdf8 0%, #f8f3e8 52%, #ebe2d0 100%);
    --up-panel: rgba(255, 255, 255, 0.94);
    --up-panel-soft: rgba(21, 21, 21, 0.055);
    --up-panel-faint: rgba(21, 21, 21, 0.035);
    --up-border: rgba(184, 137, 43, 0.2);
    --up-text: #151515;
    --up-muted: #6f6a61;
    --up-card-text: #151515;
    --up-card-muted: #6f6a61;
    --up-accent: #9f7628;
    --up-green: #24794b;
    background: var(--up-bg) !important;
    color: var(--up-text) !important;
}

#view-user-profile.user-profile-view,
#view-user-profile.user-profile-view * {
    box-sizing: border-box;
}

#view-user-profile .user-profile-sticky-header {
    position: sticky;
    top: 0;
    z-index: 40;
    min-height: calc(52px + var(--up-safe-top));
    padding: calc(14px + var(--up-safe-top)) max(18px, env(safe-area-inset-right, 0px)) 12px max(18px, env(safe-area-inset-left, 0px)) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(8, 8, 8, 0.9) !important;
    border-bottom: 1px solid var(--up-border) !important;
    color: var(--up-text) !important;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.34) !important;
    backdrop-filter: blur(18px) saturate(120%);
    -webkit-backdrop-filter: blur(18px) saturate(120%);
}

/* Edge-to-edge phone WebViews can report zero under the system status bar. */
@media (max-width: 560px), (max-height: 560px) and (pointer: coarse) {
    #view-user-profile.user-profile-view {
        --up-safe-top: max(42px, env(safe-area-inset-top, 0px));
    }
}

html[data-pbb-theme="light"] #view-user-profile .user-profile-sticky-header {
    background: rgba(255, 255, 255, 0.9) !important;
    box-shadow: 0 12px 30px rgba(57, 47, 31, 0.1) !important;
}

#view-user-profile .user-profile-header-title {
    width: 100%;
    max-width: 520px;
    margin: 0 !important;
    overflow: hidden;
    color: var(--up-text) !important;
    -webkit-text-fill-color: var(--up-text) !important;
    font-family: 'Playfair Display', serif;
    font-size: 1.22rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#view-user-profile .user-profile-hero,
#view-user-profile .user-profile-character-section,
#view-user-profile .user-profile-section {
    width: calc(100% - 28px);
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}

#view-user-profile .user-profile-hero {
    margin-top: 14px;
    margin-bottom: 14px;
    padding: 18px 14px 14px;
    overflow: hidden;
    text-align: center;
    background:
        radial-gradient(circle at 50% 0%, rgba(226, 189, 99, 0.22), transparent 36%),
        linear-gradient(180deg, rgba(28, 24, 20, 0.98), rgba(12, 12, 11, 0.98)) !important;
    border: 1px solid var(--up-border) !important;
    border-radius: 8px;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34) !important;
    color: var(--up-text) !important;
}

html[data-pbb-theme="light"] #view-user-profile .user-profile-hero {
    background:
        radial-gradient(circle at 50% 0%, rgba(226, 189, 99, 0.28), transparent 38%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 241, 226, 0.94)) !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.11) !important;
}

#view-user-profile .user-profile-avatar {
    width: 92px;
    height: 92px;
    margin: 0 auto 12px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #e6c96f, #78572a 56%, #1f1710) !important;
    border: 2px solid rgba(226, 189, 99, 0.66) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28);
}

#view-user-profile .user-profile-avatar-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 50%;
}

#view-user-profile .user-profile-avatar-initial {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    font-size: 2.35rem;
    font-weight: 900;
    line-height: 1;
}

#view-user-profile .user-profile-name {
    max-width: 100%;
    margin: 0 0 8px !important;
    overflow-wrap: anywhere;
    color: var(--up-text) !important;
    -webkit-text-fill-color: var(--up-text) !important;
    font-size: 1.45rem;
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: 0;
}

#view-user-profile .user-profile-level-badge {
    display: inline-flex;
    max-width: 100%;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin: 0 0 14px;
    padding: 7px 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #fff2bc, #e2bd63) !important;
    border: 1px solid rgba(226, 189, 99, 0.78) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    font-size: 0.82rem;
    font-weight: 800;
    line-height: 1.1;
    box-shadow: 0 10px 20px rgba(226, 189, 99, 0.16);
}

#view-user-profile .user-profile-level-badge span {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #water-entry-sheet button[onclick*="confirmWaterEntry"] {
    background: linear-gradient(135deg, #38bdf8, #0284c7) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-pbb-theme="light"] #water-entry-sheet button[onclick*="closeWaterEntrySheet"] {
    background: transparent !important;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html:not([data-pbb-theme="light"]) #store-review-modal :where(
    button[style*="background:white"],
    button[style*="background: white"],
    textarea[style*="background:white"],
    textarea[style*="background: white"]
) {
    background: #ffffff !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html:not([data-pbb-theme="light"]) #store-review-modal :where(
    button[style*="background:transparent"],
    button[style*="background: transparent"]
) {
    color: rgba(248, 247, 242, 0.7) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.7) !important;
}
#view-user-profile .user-profile-stats-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
}

#view-user-profile .user-profile-stat-card {
    min-width: 0;
    padding: 10px 6px;
    border-radius: 8px;
    background: var(--up-panel-faint) !important;
    border: 1px solid var(--up-border) !important;
}

#view-user-profile .user-profile-stat-value {
    color: var(--up-text) !important;
    -webkit-text-fill-color: var(--up-text) !important;
    font-size: 1.12rem;
    font-weight: 900;
    line-height: 1.05;
}

#view-user-profile .user-profile-stat-label {
    margin-top: 5px;
    color: var(--up-muted) !important;
    -webkit-text-fill-color: var(--up-muted) !important;
    font-size: 0.64rem;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
    text-transform: uppercase;
}

#view-user-profile .user-profile-character-section {
    margin-bottom: 18px;
}

#view-user-profile .user-profile-character-card {
    height: clamp(190px, 38vh, 260px);
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    background:
        radial-gradient(circle at 50% 18%, rgba(226, 189, 99, 0.12), transparent 34%),
        linear-gradient(180deg, #191919, #050505) !important;
    border: 1px solid var(--up-border) !important;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.32) !important;
}

#view-user-profile .user-profile-character-fallback {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    padding: 20px;
    text-align: center;
    background: #111111 !important;
    color: var(--up-text) !important;
}

#view-user-profile .user-profile-character-fallback > div:first-child {
    width: 56px;
    height: 56px;
    margin: 0 !important;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #fff2bc, #e2bd63) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    font-size: 0 !important;
}

#view-user-profile .user-profile-character-fallback > div:first-child::before {
    content: "B";
    font-size: 1.6rem;
    font-weight: 900;
    line-height: 1;
}

#view-user-profile .user-profile-character-fallback-label {
    color: var(--up-muted) !important;
    -webkit-text-fill-color: var(--up-muted) !important;
    font-size: 0.9rem;
    font-weight: 800;
}

#view-user-profile .user-profile-section {
    margin-bottom: 18px;
}

#view-user-profile .user-profile-section-title {
    margin: 0 0 10px !important;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--up-text) !important;
    -webkit-text-fill-color: var(--up-text) !important;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: 0;
}

#view-user-profile .user-profile-section-title > span:first-child {
    min-width: 28px;
    height: 24px;
    padding: 0 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--up-panel-soft) !important;
    border: 1px solid var(--up-border) !important;
    color: var(--up-accent) !important;
    -webkit-text-fill-color: var(--up-accent) !important;
    font-size: 0.72rem !important;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
}

#user-profile-pbs-section .user-profile-section-title > span:first-child,
#user-profile-badges-section .user-profile-section-title > span:first-child,
#user-profile-posts-section .user-profile-section-title > span:first-child {
    font-size: 0 !important;
}

#user-profile-pbs-section .user-profile-section-title > span:first-child::before,
#user-profile-badges-section .user-profile-section-title > span:first-child::before,
#user-profile-posts-section .user-profile-section-title > span:first-child::before {
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1;
}

#user-profile-pbs-section .user-profile-section-title > span:first-child::before {
    content: "PR";
}

#user-profile-badges-section .user-profile-section-title > span:first-child::before {
    content: "TOP";
}

#user-profile-posts-section .user-profile-section-title > span:first-child::before {
    content: "POSTS";
}

#user-profile-pbs-grid.user-profile-pbs-grid,
#user-profile-badges-grid.user-profile-badges-grid,
#user-profile-posts-grid.user-profile-posts-grid {
    width: 100%;
    min-width: 0;
}

#user-profile-pbs-grid.user-profile-pbs-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

#view-user-profile .up-pb-card {
    min-width: 0;
    padding: 12px 10px;
    overflow: hidden;
    text-align: left;
    border-radius: 8px;
    background: var(--up-panel) !important;
    border: 1px solid rgba(226, 189, 99, 0.18) !important;
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18) !important;
}

html[data-pbb-theme="light"] #view-user-profile .up-pb-card {
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.08) !important;
}

#view-user-profile .up-pb-exercise {
    min-height: 2.28em;
    margin: 0 0 7px;
    overflow: hidden;
    color: var(--up-card-muted) !important;
    -webkit-text-fill-color: var(--up-card-muted) !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow-wrap: anywhere;
    text-overflow: clip;
    font-size: 0.68rem;
    font-weight: 900;
    line-height: 1.14;
    letter-spacing: 0;
    text-transform: uppercase;
}

#view-user-profile .up-pb-weight {
    margin: 0 0 3px;
    color: var(--up-card-text) !important;
    -webkit-text-fill-color: var(--up-card-text) !important;
    font-size: 1.22rem;
    font-weight: 900;
    line-height: 1.05;
}

#view-user-profile .up-pb-reps {
    color: var(--up-green) !important;
    -webkit-text-fill-color: var(--up-green) !important;
    font-size: 0.72rem;
    font-weight: 800;
}

#user-profile-badges-grid.user-profile-badges-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

#view-user-profile .up-badge-card {
    min-width: 0;
    padding: 11px 6px;
    border-radius: 8px;
    background: var(--up-panel) !important;
    border: 1px solid rgba(226, 189, 99, 0.18) !important;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.16) !important;
}

#view-user-profile .up-badge-emoji {
    margin-bottom: 5px;
    font-size: 1.35rem;
    line-height: 1;
}

#view-user-profile .up-badge-label {
    color: var(--up-card-text) !important;
    -webkit-text-fill-color: var(--up-card-text) !important;
    font-size: 0.66rem;
    font-weight: 900;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

#user-profile-posts-grid.user-profile-posts-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 4px !important;
    overflow: hidden;
    border-radius: 8px;
}

#view-user-profile .up-post-thumb,
#view-user-profile .up-post-card-thumb {
    width: 100%;
    min-width: 0;
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0;
    padding: 0;
    margin: 0;
    cursor: pointer;
    background:
        radial-gradient(circle at 30% 16%, rgba(226, 189, 99, 0.28), transparent 34%),
        linear-gradient(135deg, #2a241b, #0b0b0a) !important;
    color: var(--up-text) !important;
}

#view-user-profile .up-post-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

#view-user-profile .up-post-thumb.is-missing-media,
#view-user-profile .up-post-card-thumb {
    flex-direction: column;
    gap: 6px;
    padding: 8px;
    text-align: center;
}

#view-user-profile .up-post-missing-label {
    display: none;
    color: rgba(255, 250, 242, 0.86) !important;
    -webkit-text-fill-color: rgba(255, 250, 242, 0.86) !important;
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.1;
}

#view-user-profile .up-post-thumb.is-missing-media .up-post-missing-label {
    display: flex;
}

#view-user-profile .up-post-video-badge {
    position: absolute;
    top: 7px;
    right: 7px;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.58);
    border: 1px solid rgba(255, 255, 255, 0.22);
}

#view-user-profile .up-post-video-badge svg {
    width: 15px;
    height: 15px;
    fill: #ffffff !important;
}

#view-user-profile .up-post-card-code {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    font-size: 0.95rem !important;
    font-weight: 900;
    line-height: 1;
}

#view-user-profile .up-post-card-label {
    color: rgba(255, 250, 242, 0.74) !important;
    -webkit-text-fill-color: rgba(255, 250, 242, 0.74) !important;
    font-size: 0.64rem;
    font-weight: 800;
    line-height: 1.1;
}

#view-user-profile .user-profile-empty-posts {
    width: 100%;
    min-height: 118px;
    padding: 24px 18px;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    text-align: center;
    border-radius: 8px;
    background: var(--up-panel) !important;
    border: 1px solid rgba(226, 189, 99, 0.18) !important;
    color: var(--up-card-muted) !important;
    -webkit-text-fill-color: var(--up-card-muted) !important;
    font-size: 0.86rem;
    font-weight: 800;
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.16) !important;
}

#view-user-profile .user-profile-empty-posts[style*="display: block"] {
    display: flex !important;
}

#view-user-profile .user-profile-empty-posts > div:first-child {
    width: 36px;
    height: 36px;
    margin: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #fff2bc, #e2bd63) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    font-size: 1rem !important;
    font-weight: 900;
}

@media (max-width: 360px) {
    #view-user-profile .user-profile-hero,
    #view-user-profile .user-profile-character-section,
    #view-user-profile .user-profile-section {
        width: calc(100% - 20px);
    }

    #view-user-profile .user-profile-stat-label {
        font-size: 0.58rem;
    }

    #view-user-profile .up-pb-card {
        padding: 10px 8px;
    }
}

/* Progress photo guide must stay dark and readable in every app theme. */
#progress-photo-shot-guide {
    background: rgba(5, 5, 10, 0.985) !important;
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
    backdrop-filter: blur(8px) saturate(115%);
    -webkit-backdrop-filter: blur(8px) saturate(115%);
}

#progress-photo-shot-guide .progress-photo-guide-panel,
#progress-photo-shot-guide .progress-photo-guide-title,
#progress-photo-shot-guide .progress-photo-guide-copy,
#progress-photo-shot-guide .progress-photo-guide-dot,
#progress-photo-shot-guide .progress-photo-guide-step-label,
#progress-photo-shot-guide .progress-photo-guide-close,
#progress-photo-shot-guide .progress-photo-guide-capture {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#progress-photo-shot-guide .progress-photo-guide-eyebrow {
    color: rgba(248, 247, 242, 0.66) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.66) !important;
}

#progress-photo-shot-guide .progress-photo-guide-card {
    background: rgba(24, 24, 32, 0.96) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 18px 46px rgba(0, 0, 0, 0.36) !important;
}

#progress-photo-shot-guide .progress-photo-guide-kicker,
#progress-photo-shot-guide .progress-photo-guide-helper,
#progress-photo-shot-guide .progress-photo-guide-count {
    color: rgba(248, 247, 242, 0.74) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.74) !important;
}

#progress-photo-shot-guide .progress-photo-guide-close {
    background: rgba(255, 255, 255, 0.16) !important;
}

#progress-photo-shot-guide .progress-photo-guide-capture {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.28);
}

/* Final Learn/recovered-workout readability pass: these surfaces mix inline
   colors with theme variables, so keep the actual text contrast explicit. */
#workout-recovery-dialog > div,
#workout-saving-dialog > div {
    background: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
}

#workout-recovery-dialog h3,
#workout-recovery-dialog p,
#workout-recovery-dialog strong,
#workout-saving-dialog p {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#workout-recovery-dialog button[onclick*="dismissWorkoutRecovery"] {
    background: rgba(17, 17, 17, 0.055) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#learning-content .story-key-insight {
    background: rgba(255, 255, 255, 0.96) !important;
    color: #151515 !important;
}

#learning-content .story-key-insight-text,
#learning-content .learning-game-question-card .learning-game-question {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#learning-content .learning-game-helper {
    color: #4f473b !important;
    -webkit-text-fill-color: #4f473b !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-shell,
html:not([data-pbb-theme="light"]) #learning-content .learning-game-stage {
    color: #151515 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-progress-header {
    background: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-progress-track,
html:not([data-pbb-theme="light"]) #learning-content .learning-game-count-pill {
    background: rgba(17, 17, 17, 0.08) !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-count-pill,
html:not([data-pbb-theme="light"]) #learning-content .learning-game-question-card .learning-game-question,
html:not([data-pbb-theme="light"]) #learning-content .learning-game-stage > div > .learning-game-question {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#learning-content .learning-game-swipe-label-row {
    color: #151515 !important;
}

#learning-content .learning-game-swipe-label {
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

#learning-content .learning-game-swipe-label-false {
    color: #b91c1c !important;
    -webkit-text-fill-color: #b91c1c !important;
}

#learning-content .learning-game-swipe-label-true {
    color: #047857 !important;
    -webkit-text-fill-color: #047857 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-scenario-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-scenario-card .learning-game-scenario,
html:not([data-pbb-theme="light"]) #learning-content .learning-game-scenario-card .learning-game-question {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-game-scenario-question-block {
    border-top-color: rgba(255, 255, 255, 0.42) !important;
}

html:not([data-pbb-theme="light"]) #learning-content .fill-blank-option[style*="background: white"],
html:not([data-pbb-theme="light"]) #learning-content .fill-blank-option[style*="background:white"],
html:not([data-pbb-theme="light"]) #learning-content .tap-all-option[style*="background: white"],
html:not([data-pbb-theme="light"]) #learning-content .tap-all-option[style*="background:white"],
html:not([data-pbb-theme="light"]) #learning-content .match-item[style*="background: white"],
html:not([data-pbb-theme="light"]) #learning-content .match-item[style*="background:white"],
html:not([data-pbb-theme="light"]) #learning-content .order-item[style*="background: white"],
html:not([data-pbb-theme="light"]) #learning-content .order-item[style*="background:white"],
html:not([data-pbb-theme="light"]) #learning-content .scenario-option[style*="background: white"],
html:not([data-pbb-theme="light"]) #learning-content .scenario-option[style*="background:white"] {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

/* Quiz interaction states use pale feedback surfaces in both themes. Keep
   their foreground explicit so dark-mode text-fill rules cannot bleed in. */
#learning-content .learning-answer-selected {
    color: #3b0764 !important;
    -webkit-text-fill-color: #3b0764 !important;
}

#learning-content .learning-answer-correct {
    color: #14532d !important;
    -webkit-text-fill-color: #14532d !important;
}

#learning-content .learning-answer-incorrect {
    color: #7f1d1d !important;
    -webkit-text-fill-color: #7f1d1d !important;
}

#learning-content .learning-answer-selected .tap-checkbox,
#learning-content .learning-answer-correct .tap-checkbox {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-summary-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(245, 217, 138, 0.1), transparent 30%),
        linear-gradient(180deg, rgba(31, 20, 45, 0.94), rgba(18, 11, 31, 0.96)) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
    color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-score-value {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-xp-value {
    color: rgba(248, 243, 255, 0.82) !important;
    -webkit-text-fill-color: rgba(248, 243, 255, 0.82) !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-xp-value.learning-complete-xp-positive {
    color: #8fe7b4 !important;
    -webkit-text-fill-color: #8fe7b4 !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-metric-label,
html:not([data-pbb-theme="light"]) #learning-content .learning-complete-health-iq-label,
html:not([data-pbb-theme="light"]) #learning-content .learning-complete-health-iq-next {
    color: rgba(248, 243, 255, 0.7) !important;
    -webkit-text-fill-color: rgba(248, 243, 255, 0.7) !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-metric-divider,
html:not([data-pbb-theme="light"]) #learning-content .learning-complete-health-iq-mini {
    border-color: rgba(255, 255, 255, 0.16) !important;
}

html:not([data-pbb-theme="light"]) #learning-content .learning-complete-metric-divider,
html:not([data-pbb-theme="light"]) #learning-content .learning-complete-health-iq-track {
    background: rgba(255, 255, 255, 0.14) !important;
}

html[data-pbb-theme="light"] #learning-content p.learning-game-question,
html[data-pbb-theme="light"] #learning-content p.learning-game-scenario {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #learning-content p.learning-game-helper {
    color: #4f473b !important;
    -webkit-text-fill-color: #4f473b !important;
}

#learning-content .learning-game-question-card {
    background: rgba(255, 255, 255, 0.94) !important;
    border: 1px solid rgba(184, 137, 43, 0.14) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-question-label,
html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-question-label-dot {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-question-card {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
}

html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-question-text {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

/* Keep quiz answer labels visible in iOS WebKit, which can retain an inherited
   text-fill colour even when the option's inline `color` changes. */
#daily-quiz-card #hlq-card-root .hlq-fb-opt,
#daily-quiz-card #hlq-card-root .hlq-ta-opt,
#daily-quiz-card #hlq-card-root .hlq-match-left,
#daily-quiz-card #hlq-card-root .hlq-match-right,
#daily-quiz-card #hlq-card-root .hlq-sc-opt,
#daily-quiz-card #hlq-card-root .hlq-order-item {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-fb-opt,
html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-ta-opt,
html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-match-left,
html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-match-right,
html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-sc-opt,
html[data-pbb-theme="light"] #daily-quiz-card #hlq-card-root .hlq-order-item {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#daily-quiz-card #hlq-card-root .hlq-correct,
#daily-quiz-card #hlq-card-root .hlq-wrong {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Activity Insights hub and child insight pages. */
#view-insights.activity-insights-view,
#view-progress,
.weekly-trends-page {
    --pbb-insight-page-bg: #050505;
    --pbb-insight-header-bg: rgba(7, 7, 7, 0.92);
    --pbb-insight-card-bg: rgba(255, 255, 255, 0.07);
    --pbb-insight-soft-bg: rgba(255, 255, 255, 0.06);
    --pbb-insight-softer-bg: rgba(255, 255, 255, 0.04);
    --pbb-insight-border: rgba(245, 217, 138, 0.16);
    --pbb-insight-border-soft: rgba(245, 217, 138, 0.1);
    --pbb-insight-text: #f8f7f2;
    --pbb-insight-muted: rgba(248, 247, 242, 0.68);
    --pbb-insight-axis: rgba(248, 247, 242, 0.7);
    --pbb-insight-grid: rgba(248, 247, 242, 0.12);
    --text-main: var(--pbb-insight-text);
    --text-muted: var(--pbb-insight-muted);
    background:
        radial-gradient(circle at 12% 4%, rgba(216, 178, 94, 0.13), transparent 28%),
        radial-gradient(circle at 92% 2%, rgba(255, 255, 255, 0.055), transparent 30%),
        linear-gradient(180deg, #101010 0%, #050505 48%, #000000 100%) !important;
    color: var(--pbb-insight-text) !important;
    font-family: 'Inter', sans-serif !important;
    letter-spacing: 0 !important;
    -webkit-font-smoothing: antialiased;
}

#view-insights.activity-insights-view *,
#view-progress *,
.weekly-trends-page * {
    font-family: inherit !important;
}

#view-insights > div[style*="position: sticky"],
#view-progress > div[style*="position: sticky"],
.weekly-trends-page-header {
    background: var(--pbb-insight-header-bg) !important;
    border-bottom: 1px solid var(--pbb-insight-border) !important;
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.44) !important;
    color: var(--pbb-insight-text) !important;
    backdrop-filter: blur(18px) saturate(126%);
    -webkit-backdrop-filter: blur(18px) saturate(126%);
}

#view-insights > div[style*="position: sticky"] > div,
#view-progress > div[style*="position: sticky"] > div,
.weekly-trends-page-title {
    color: var(--pbb-insight-text) !important;
    -webkit-text-fill-color: var(--pbb-insight-text) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
}

#view-insights .activity-insights-hub-card {
    --activity-insight-accent: #d8b25e;
    --activity-insight-accent-rgb: 216, 178, 94;
    min-height: 144px;
    background:
        radial-gradient(circle at 88% 0%, rgba(var(--activity-insight-accent-rgb), 0.17), transparent 34%),
        linear-gradient(135deg, #171717 0%, #0a0a0a 58%, #000000 100%) !important;
    border: 1px solid rgba(var(--activity-insight-accent-rgb), 0.28) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
    color: #f8f7f2 !important;
    transition: transform 0.14s ease, border-color 0.14s ease, box-shadow 0.14s ease;
}

#view-insights .activity-insights-hub-card:active {
    transform: scale(0.985);
}

#view-insights .activity-insights-hub-card--nutrition {
    --activity-insight-accent: #46c98b;
    --activity-insight-accent-rgb: 70, 201, 139;
}

#view-insights .activity-insights-hub-card--movement {
    --activity-insight-accent: #69a7ff;
    --activity-insight-accent-rgb: 105, 167, 255;
}

#view-insights .activity-insights-hub-card--transformation {
    --activity-insight-accent: #f472b6;
    --activity-insight-accent-rgb: 244, 114, 182;
}

#view-insights .activity-insights-hub-card--recovery {
    --activity-insight-accent: #c4a2ff;
    --activity-insight-accent-rgb: 196, 162, 255;
}

#view-insights .activity-insights-hub-card > div[style*="width: 40px"] {
    background: rgba(var(--activity-insight-accent-rgb), 0.18) !important;
    border: 1px solid rgba(var(--activity-insight-accent-rgb), 0.28) !important;
}

#view-insights .activity-insights-hub-card > div[style*="opacity: 0.05"] {
    opacity: 0.1 !important;
}

#view-insights .activity-insights-hub-card > div[style*="font-weight: 700"][style*="0.95rem"] {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
    font-size: 0.9rem !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
}

#view-insights .activity-insights-hub-card > div[style*="0.72rem"] {
    color: rgba(248, 247, 242, 0.68) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.68) !important;
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
}

#view-insights .activity-insights-hub-card > div[style*="margin-top: 10px"] {
    color: var(--activity-insight-accent) !important;
    -webkit-text-fill-color: var(--activity-insight-accent) !important;
}

#view-insights [style*="background: white"][style*="border-radius: 20px"]:not(.activity-insights-hub-card),
#view-insights [style*="background:white"][style*="border-radius:20px"]:not(.activity-insights-hub-card),
#view-progress [style*="background: white"],
#view-progress [style*="background:white"],
.weekly-trends-page [style*="background: white"],
.weekly-trends-page [style*="background:white"] {
    background: var(--pbb-insight-card-bg) !important;
    border-color: var(--pbb-insight-border) !important;
    color: var(--pbb-insight-text) !important;
}

#view-progress [style*="background: #f8fafc"],
#view-progress [style*="background:#f8fafc"],
#view-progress [style*="background: #f1f5f9"],
#view-progress [style*="background:#f1f5f9"],
#view-progress [style*="background: #fafafa"],
#view-progress [style*="background:#fafafa"],
#view-progress [style*="background: #eef2ff"],
#view-progress [style*="background:#eef2ff"],
#view-progress [style*="background: #ede9fe"],
#view-progress [style*="background:#ede9fe"],
#view-progress [style*="background: #e0f7fa"],
#view-progress [style*="background:#e0f7fa"],
#view-progress [style*="background: #eff6ff"],
#view-progress [style*="background:#eff6ff"],
#view-progress [style*="background: #f0fdf4"],
#view-progress [style*="background:#f0fdf4"],
#view-progress [style*="background: #fff7ed"],
#view-progress [style*="background:#fff7ed"],
#view-progress [style*="background: #fffbeb"],
#view-progress [style*="background:#fffbeb"],
#view-progress [style*="background: #fef2f2"],
#view-progress [style*="background:#fef2f2"],
#view-progress [style*="background: #f5f3ff"],
#view-progress [style*="background:#f5f3ff"],
#view-progress [style*="background: #f0f9ff"],
#view-progress [style*="background:#f0f9ff"],
.weekly-trends-page [style*="background: #f8fafc"],
.weekly-trends-page [style*="background:#f8fafc"],
.weekly-trends-page [style*="background: #f1f5f9"],
.weekly-trends-page [style*="background:#f1f5f9"],
.weekly-trends-page [style*="background: #fafafa"],
.weekly-trends-page [style*="background:#fafafa"],
.weekly-trends-page [style*="background: #eef2ff"],
.weekly-trends-page [style*="background:#eef2ff"],
.weekly-trends-page [style*="background: #ede9fe"],
.weekly-trends-page [style*="background:#ede9fe"],
.weekly-trends-page [style*="background: #e0f7fa"],
.weekly-trends-page [style*="background:#e0f7fa"],
.weekly-trends-page [style*="background: #eff6ff"],
.weekly-trends-page [style*="background:#eff6ff"],
.weekly-trends-page [style*="background: #f0fdf4"],
.weekly-trends-page [style*="background:#f0fdf4"],
.weekly-trends-page [style*="background: #fff7ed"],
.weekly-trends-page [style*="background:#fff7ed"],
.weekly-trends-page [style*="background: #fffbeb"],
.weekly-trends-page [style*="background:#fffbeb"],
.weekly-trends-page [style*="background: #fef2f2"],
.weekly-trends-page [style*="background:#fef2f2"],
.weekly-trends-page [style*="background: #f5f3ff"],
.weekly-trends-page [style*="background:#f5f3ff"],
.weekly-trends-page [style*="background: #f0f9ff"],
.weekly-trends-page [style*="background:#f0f9ff"],
.weekly-trends-page .week-compare-stat,
.weekly-trends-page .pattern-insight,
#view-progress .week-compare-stat,
#view-progress .pattern-insight {
    background: var(--pbb-insight-soft-bg) !important;
    border-color: var(--pbb-insight-border-soft) !important;
    color: var(--pbb-insight-text) !important;
}

#view-insights [style*="color: var(--text-main)"],
#view-progress [style*="color: var(--text-main)"],
.weekly-trends-page [style*="color: var(--text-main)"] {
    color: var(--pbb-insight-text) !important;
    -webkit-text-fill-color: var(--pbb-insight-text) !important;
}

#view-insights [style*="color: var(--text-muted)"],
#view-progress [style*="color: var(--text-muted)"],
.weekly-trends-page [style*="color: var(--text-muted)"] {
    color: var(--pbb-insight-muted) !important;
    -webkit-text-fill-color: var(--pbb-insight-muted) !important;
}

#view-progress [style*="color:#0f172a"],
#view-progress [style*="color: #0f172a"],
#view-progress [style*="color:#1f2937"],
#view-progress [style*="color: #1f2937"],
#view-progress [style*="color:#334155"],
#view-progress [style*="color: #334155"],
.weekly-trends-page [style*="color:#0f172a"],
.weekly-trends-page [style*="color: #0f172a"],
.weekly-trends-page [style*="color:#1f2937"],
.weekly-trends-page [style*="color: #1f2937"],
.weekly-trends-page [style*="color:#334155"],
.weekly-trends-page [style*="color: #334155"] {
    color: var(--pbb-insight-text) !important;
    -webkit-text-fill-color: var(--pbb-insight-text) !important;
}

#view-progress [style*="color:#475569"],
#view-progress [style*="color: #475569"],
#view-progress [style*="color:#64748b"],
#view-progress [style*="color: #64748b"],
#view-progress [style*="color:#94a3b8"],
#view-progress [style*="color: #94a3b8"],
.weekly-trends-page [style*="color:#475569"],
.weekly-trends-page [style*="color: #475569"],
.weekly-trends-page [style*="color:#64748b"],
.weekly-trends-page [style*="color: #64748b"],
.weekly-trends-page [style*="color:#94a3b8"],
.weekly-trends-page [style*="color: #94a3b8"] {
    color: var(--pbb-insight-muted) !important;
    -webkit-text-fill-color: var(--pbb-insight-muted) !important;
}

html:not([data-pbb-theme="light"]) #view-progress [style*="color:#312e81"],
html:not([data-pbb-theme="light"]) #view-progress [style*="color: #312e81"],
html:not([data-pbb-theme="light"]) .weekly-trends-page [style*="color:#312e81"],
html:not([data-pbb-theme="light"]) .weekly-trends-page [style*="color: #312e81"] {
    color: #a78bfa !important;
    -webkit-text-fill-color: #a78bfa !important;
}

#view-progress [style*="border-bottom: 1px solid #f1f5f9"],
#view-progress [style*="border-bottom:1px solid #f1f5f9"],
#view-progress [style*="border: 1px solid #e2e8f0"],
#view-progress [style*="border:1px solid #e2e8f0"],
.weekly-trends-page [style*="border-bottom: 1px solid #f1f5f9"],
.weekly-trends-page [style*="border-bottom:1px solid #f1f5f9"],
.weekly-trends-page [style*="border: 1px solid #e2e8f0"],
.weekly-trends-page [style*="border:1px solid #e2e8f0"],
.weekly-trends-page .sparkline-row,
#view-progress .sparkline-row {
    border-color: var(--pbb-insight-border-soft) !important;
}

#view-progress svg line[stroke="#f1f5f9"],
.weekly-trends-page svg line[stroke="#f1f5f9"] {
    stroke: var(--pbb-insight-grid) !important;
}

#view-progress svg text[fill="#94a3b8"],
.weekly-trends-page svg text[fill="#94a3b8"] {
    fill: var(--pbb-insight-axis) !important;
}

#view-progress svg circle[fill="white"],
.weekly-trends-page svg circle[fill="white"] {
    fill: var(--pbb-insight-card-bg) !important;
}

#view-insights .multi-week-nav,
.weekly-trends-page .multi-week-nav,
#view-progress .multi-week-nav {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(245, 217, 138, 0.12) !important;
}

#view-insights .multi-week-nav button,
.weekly-trends-page .multi-week-nav button,
#view-progress .multi-week-nav button {
    background: var(--pbb-insight-soft-bg) !important;
    border-color: var(--pbb-insight-border-soft) !important;
    color: rgba(248, 247, 242, 0.66) !important;
}

#view-insights .multi-week-nav button.active,
.weekly-trends-page .multi-week-nav button.active,
#view-progress .multi-week-nav button.active {
    background: rgba(248, 247, 242, 0.94) !important;
    color: #0c0c0c !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28) !important;
}

html[data-pbb-theme="light"] #view-insights.activity-insights-view,
html[data-pbb-theme="light"] #view-progress,
html[data-pbb-theme="light"] .weekly-trends-page {
    --pbb-insight-page-bg: #f8f5ee;
    --pbb-insight-header-bg: rgba(255, 255, 255, 0.92);
    --pbb-insight-card-bg: rgba(255, 255, 255, 0.9);
    --pbb-insight-soft-bg: rgba(255, 255, 255, 0.74);
    --pbb-insight-softer-bg: rgba(244, 240, 231, 0.82);
    --pbb-insight-border: rgba(184, 137, 43, 0.16);
    --pbb-insight-border-soft: rgba(184, 137, 43, 0.1);
    --pbb-insight-text: #151515;
    --pbb-insight-muted: #6f6a61;
    --pbb-insight-axis: #6f6a61;
    --pbb-insight-grid: rgba(17, 17, 17, 0.08);
    background:
        radial-gradient(circle at 12% 4%, rgba(184, 137, 43, 0.12), transparent 28%),
        linear-gradient(180deg, #f8f5ee 0%, #f1eadf 100%) !important;
    color: var(--pbb-insight-text) !important;
}

html[data-pbb-theme="light"] #view-insights > div[style*="position: sticky"],
html[data-pbb-theme="light"] #view-progress > div[style*="position: sticky"],
html[data-pbb-theme="light"] .weekly-trends-page-header {
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom-color: rgba(184, 137, 43, 0.16) !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.1) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-insights > div[style*="position: sticky"] > div,
html[data-pbb-theme="light"] #view-progress > div[style*="position: sticky"] > div,
html[data-pbb-theme="light"] .weekly-trends-page-title {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(var(--activity-insight-accent-rgb), 0.13), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #f7f3e9 58%, #ece4d3 100%) !important;
    border-color: rgba(var(--activity-insight-accent-rgb), 0.28) !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.14) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card > div[style*="font-weight: 700"][style*="0.95rem"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card > div[style*="0.72rem"] {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card > div[style*="width: 40px"] {
    background: rgba(var(--activity-insight-accent-rgb), 0.13) !important;
    border-color: rgba(var(--activity-insight-accent-rgb), 0.24) !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card--nutrition > div[style*="margin-top: 10px"] {
    color: #0f7a49 !important;
    -webkit-text-fill-color: #0f7a49 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card--movement > div[style*="margin-top: 10px"] {
    color: #2458a6 !important;
    -webkit-text-fill-color: #2458a6 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card--transformation > div[style*="margin-top: 10px"] {
    color: #b91c72 !important;
    -webkit-text-fill-color: #b91c72 !important;
}

html[data-pbb-theme="light"] #view-insights .activity-insights-hub-card--recovery > div[style*="margin-top: 10px"] {
    color: #6d28d9 !important;
    -webkit-text-fill-color: #6d28d9 !important;
}

html[data-pbb-theme="light"] #view-insights [style*="background: white"][style*="border-radius: 20px"]:not(.activity-insights-hub-card),
html[data-pbb-theme="light"] #view-insights [style*="background:white"][style*="border-radius:20px"]:not(.activity-insights-hub-card),
html[data-pbb-theme="light"] #view-progress [style*="background: white"],
html[data-pbb-theme="light"] #view-progress [style*="background:white"],
html[data-pbb-theme="light"] .weekly-trends-page [style*="background: white"],
html[data-pbb-theme="light"] .weekly-trends-page [style*="background:white"] {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-insights [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #view-progress [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] .weekly-trends-page [style*="color: var(--text-main)"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-insights [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #view-progress [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] .weekly-trends-page [style*="color: var(--text-muted)"] {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-insights .multi-week-nav,
html[data-pbb-theme="light"] .weekly-trends-page .multi-week-nav,
html[data-pbb-theme="light"] #view-progress .multi-week-nav {
    background: rgba(255, 255, 255, 0.78) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
}

html[data-pbb-theme="light"] #view-insights .multi-week-nav button,
html[data-pbb-theme="light"] .weekly-trends-page .multi-week-nav button,
html[data-pbb-theme="light"] #view-progress .multi-week-nav button {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-insights .multi-week-nav button.active,
html[data-pbb-theme="light"] .weekly-trends-page .multi-week-nav button.active,
html[data-pbb-theme="light"] #view-progress .multi-week-nav button.active {
    background: #151515 !important;
    color: #ffffff !important;
}

html[data-pbb-theme="light"] .weekly-trends-page .week-compare-stat .stat-value,
html[data-pbb-theme="light"] #view-progress .week-compare-stat .stat-value {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-log-activity h1,
html[data-pbb-theme="light"] #view-log-activity h2,
html[data-pbb-theme="light"] #view-log-activity h3,
html[data-pbb-theme="light"] #view-log-activity [style*="color:#fffaf2"],
html[data-pbb-theme="light"] #view-log-activity [style*="color: #fffaf2"],
html[data-pbb-theme="light"] #view-log-activity [style*="color:white"],
html[data-pbb-theme="light"] #view-log-activity [style*="color: white"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option > div:last-child {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    box-shadow: 0 10px 24px rgba(184, 137, 43, 0.16) !important;
}

html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option > div:last-child {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    box-shadow: 0 10px 24px rgba(184, 137, 43, 0.16) !important;
}

/* Light-mode builder picker polish: exercise names and filter rows must stay readable. */
html[data-pbb-theme="light"] #view-workout-builder > div[style*="position: sticky"] {
    background: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 14px 34px rgba(57, 47, 31, 0.1) !important;
}

html[data-pbb-theme="light"] #view-workout-builder > div[style*="position: sticky"] *,
html[data-pbb-theme="light"] #view-workout-builder [onclick*="toggleFilterSection"],
html[data-pbb-theme="light"] #view-workout-builder [onclick*="toggleFilterSection"] *,
html[data-pbb-theme="light"] #builder-library-list > div,
html[data-pbb-theme="light"] #builder-library-list > div > div {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-workout-builder [onclick*="toggleFilterSection"],
html[data-pbb-theme="light"] #view-workout-builder [id^="filter-content-"],
html[data-pbb-theme="light"] #builder-library-list > div {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #builder-library-list > div[style*="var(--primary)"],
html[data-pbb-theme="light"] #builder-library-list > div[style*="#f0fdf4"],
html[data-pbb-theme="light"] #builder-library-list > div[style*="rgb(240, 253, 244)"] {
    background: #fff6de !important;
    border-color: rgba(184, 137, 43, 0.44) !important;
}

html[data-pbb-theme="light"] #builder-library-list > div button {
    background: #fff9e8 !important;
    border: 1px solid rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #builder-library-list > div button[style*="var(--primary)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border-color: rgba(184, 137, 43, 0.44) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-workout-builder .filter-chip {
    background: rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #view-workout-builder .filter-chip[style*="var(--primary)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border-color: rgba(184, 137, 43, 0.42) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-workout-builder svg {
    fill: #6f6a61 !important;
}

/* Light-mode game invite polish: active game cards keep their playful art without black-on-black text. */
html[data-pbb-theme="light"] #active-games-container [onclick*="openGameBoard"],
html[data-pbb-theme="light"] #active-games-container [onclick*="handleQuizBattleMessageClick"] {
    background: #ffffff !important;
    background-image: linear-gradient(135deg, #ffffff 0%, #f8f4ea 100%) !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    box-shadow: 0 14px 30px rgba(57, 47, 31, 0.14) !important;
}

html[data-pbb-theme="light"] #active-games-container [onclick*="openGameBoard"] > div:last-child,
html[data-pbb-theme="light"] #active-games-container [onclick*="handleQuizBattleMessageClick"] > div:last-child {
    background: rgba(255, 255, 255, 0.92) !important;
}

html[data-pbb-theme="light"] #active-games-container [onclick*="openGameBoard"] [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #active-games-container [onclick*="openGameBoard"] [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #active-games-container [onclick*="handleQuizBattleMessageClick"] [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #active-games-container [onclick*="handleQuizBattleMessageClick"] [style*="color: var(--text-main)"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #active-games-container [onclick*="openGameBoard"] [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #active-games-container [onclick*="openGameBoard"] [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #active-games-container [onclick*="handleQuizBattleMessageClick"] [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #active-games-container [onclick*="handleQuizBattleMessageClick"] [style*="color: var(--text-muted)"] {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .game-toast,
html[data-pbb-theme="light"] .game-toast *,
html[data-pbb-theme="light"] #game-toast,
html[data-pbb-theme="light"] #game-toast * {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] .game-toast [style*="color:#fbbf24"],
html[data-pbb-theme="light"] .game-toast [style*="color: #fbbf24"],
html[data-pbb-theme="light"] #game-toast [style*="color:#fbbf24"],
html[data-pbb-theme="light"] #game-toast [style*="color: #fbbf24"] {
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html[data-pbb-theme="light"] input::placeholder,
html[data-pbb-theme="light"] textarea::placeholder {
    color: rgba(21, 21, 21, 0.48) !important;
    -webkit-text-fill-color: rgba(21, 21, 21, 0.48) !important;
}

html[data-pbb-theme="light"] #calories-macro-actions-overlay .adaptive-modal {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.22), transparent 32%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 244, 234, 0.98)) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 26px 72px rgba(57, 47, 31, 0.24) !important;
}

html[data-pbb-theme="light"] #calories-macro-actions-overlay .adaptive-modal,
html[data-pbb-theme="light"] #calories-macro-actions-overlay .adaptive-modal [style*="color:var(--text-main)"],
html[data-pbb-theme="light"] #calories-macro-actions-overlay .adaptive-modal [style*="color: var(--text-main)"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #calories-macro-actions-overlay .adaptive-modal [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #calories-macro-actions-overlay .adaptive-modal [style*="color: var(--text-muted)"] {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #calories-macro-actions-overlay [data-action] {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
}

html[data-pbb-theme="light"] .meal-builder-modal,
html[data-pbb-theme="light"] .meal-builder-text-modal {
    background: rgba(17, 17, 17, 0.38) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-container,
html[data-pbb-theme="light"] .meal-builder-text-container {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.2), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 244, 234, 0.99)) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 26px 72px rgba(57, 47, 31, 0.24) !important;
}

html[data-pbb-theme="light"] .meal-builder-header,
html[data-pbb-theme="light"] .meal-builder-footer,
html[data-pbb-theme="light"] .meal-builder-text-header {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-header h3,
html[data-pbb-theme="light"] .meal-builder-text-header h4,
html[data-pbb-theme="light"] .meal-builder-total-cal,
html[data-pbb-theme="light"] .meal-builder-macro strong,
html[data-pbb-theme="light"] .meal-builder-empty strong,
html[data-pbb-theme="light"] .meal-builder-item-name {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

.meal-builder-explainer {
    background: linear-gradient(135deg, rgba(245, 217, 138, 0.11), rgba(255, 255, 255, 0.035)) !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

.meal-builder-explainer strong {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

.meal-builder-footer-note {
    color: rgba(248, 247, 242, 0.7) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.7) !important;
}

.meal-builder-save-only-btn {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(245, 217, 138, 0.45) !important;
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html[data-pbb-theme="light"] .meal-builder-explainer {
    background: linear-gradient(135deg, rgba(245, 217, 138, 0.2), rgba(255, 255, 255, 0.84)) !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-explainer strong {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-footer-note {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .meal-builder-save-only-btn {
    background: rgba(255, 255, 255, 0.76) !important;
    border-color: rgba(184, 137, 43, 0.42) !important;
    color: #6f531e !important;
    -webkit-text-fill-color: #6f531e !important;
}

html[data-pbb-theme="light"] .meal-builder-close,
html[data-pbb-theme="light"] .meal-builder-text-close,
html[data-pbb-theme="light"] .meal-builder-total-label,
html[data-pbb-theme="light"] .meal-builder-macro,
html[data-pbb-theme="light"] .meal-builder-empty,
html[data-pbb-theme="light"] .meal-builder-empty p,
html[data-pbb-theme="light"] .meal-builder-add-label,
html[data-pbb-theme="light"] .meal-builder-item-meta {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .meal-builder-totals,
html[data-pbb-theme="light"] .meal-builder-item,
html[data-pbb-theme="light"] .meal-builder-empty,
html[data-pbb-theme="light"] .meal-builder-add-row {
    background: rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-add-btn,
html[data-pbb-theme="light"] .meal-builder-name-input,
html[data-pbb-theme="light"] .meal-builder-text-input {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-add-btn span,
html[data-pbb-theme="light"] .meal-builder-add-btn svg {
    color: #151515 !important;
    fill: #6f6a61 !important;
    stroke: #6f6a61 !important;
}

html[data-pbb-theme="light"] .meal-builder-empty svg {
    color: #6f6a61 !important;
    stroke: #6f6a61 !important;
}

html[data-pbb-theme="light"] .meal-builder-save-btn,
html[data-pbb-theme="light"] .meal-builder-text-submit {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .meal-builder-save-btn:disabled,
html[data-pbb-theme="light"] .meal-builder-text-submit:disabled {
    opacity: 0.76 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-modal {
    color: #f8f7f2 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header h2,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [style*="color: rgba(255,255,255"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [style*="color:rgba(255,255,255"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"] div {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"] div:last-child {
    color: rgba(248, 247, 242, 0.68) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.68) !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay input {
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

/* Light-mode sweep fixes: diary, activity logger, cycle modal, and weekly goals. */
html[data-pbb-theme="light"] #fitness-diary-card,
html[data-pbb-theme="light"] #fitness-diary-done-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.18), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f7f2e7 58%, #e8dcc4 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.14) !important;
}

html[data-pbb-theme="light"] #fitness-diary-card h3,
html[data-pbb-theme="light"] #fitness-diary-card [style*="font-weight: 700"],
html[data-pbb-theme="light"] #fitness-diary-done-card [style*="font-weight: 700"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #fitness-diary-card p,
html[data-pbb-theme="light"] #fitness-diary-card [style*="opacity: 0.9"],
html[data-pbb-theme="light"] #fitness-diary-done-card [style*="opacity"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #fitness-diary-collapsed {
    background: rgba(255, 255, 255, 0.78) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

/* Real-account light-mode modal audit: keep older game, friend, feed, and shop surfaces in the light luxe system. */
html[data-pbb-theme="light"] #home-friends-modal,
html[data-pbb-theme="light"] #add-friend-modal,
html[data-pbb-theme="light"] #story-choice-modal,
html[data-pbb-theme="light"] #story-upload-modal,
html[data-pbb-theme="light"] #calendar-workout-action-modal,
html[data-pbb-theme="light"] #game-challenge-modal,
html[data-pbb-theme="light"] #game-invite-modal,
html[data-pbb-theme="light"] #game-result-overlay,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay,
html[data-pbb-theme="light"] #coin-shop-modal,
html[data-pbb-theme="light"] #challenge-pass-modal,
html[data-pbb-theme="light"] #rare-rewards-modal,
html[data-pbb-theme="light"] #badge-collection-modal,
html[data-pbb-theme="light"] #share-win-modal {
    background: rgba(248, 245, 238, 0.78) !important;
    backdrop-filter: blur(16px) saturate(118%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(118%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #home-friends-modal > div,
html[data-pbb-theme="light"] #add-friend-modal > div,
html[data-pbb-theme="light"] #story-choice-modal > div,
html[data-pbb-theme="light"] #story-upload-modal > div,
html[data-pbb-theme="light"] #calendar-workout-action-modal > div,
html[data-pbb-theme="light"] #game-challenge-modal > div,
html[data-pbb-theme="light"] #game-invite-modal > div,
html[data-pbb-theme="light"] #game-result-overlay > div,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-modal,
html[data-pbb-theme="light"] #coin-shop-modal > div,
html[data-pbb-theme="light"] #challenge-pass-modal > div,
html[data-pbb-theme="light"] #rare-rewards-modal > div,
html[data-pbb-theme="light"] #badge-collection-modal > div,
html[data-pbb-theme="light"] #share-win-modal > div {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.18), transparent 32%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 240, 231, 0.97)) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 24px 58px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #home-friends-modal h3,
html[data-pbb-theme="light"] #add-friend-modal h2,
html[data-pbb-theme="light"] #story-choice-modal h3,
html[data-pbb-theme="light"] #story-upload-modal h3,
html[data-pbb-theme="light"] #calendar-workout-action-modal h3,
html[data-pbb-theme="light"] #game-challenge-modal h3,
html[data-pbb-theme="light"] #game-invite-modal h3,
html[data-pbb-theme="light"] #game-result-overlay h2,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay h2,
html[data-pbb-theme="light"] #coin-shop-modal h3,
html[data-pbb-theme="light"] #challenge-pass-modal h3,
html[data-pbb-theme="light"] #rare-rewards-modal h3,
html[data-pbb-theme="light"] #badge-collection-modal h3,
html[data-pbb-theme="light"] #share-win-modal h3,
html[data-pbb-theme="light"] #home-friends-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #add-friend-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #calendar-workout-action-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #game-challenge-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #coin-shop-modal [style*="color: var(--text-main)"],
html[data-pbb-theme="light"] #home-friends-modal [style*="color:white"],
html[data-pbb-theme="light"] #home-friends-modal [style*="color: white"],
html[data-pbb-theme="light"] #add-friend-modal [style*="color:white"],
html[data-pbb-theme="light"] #add-friend-modal [style*="color: white"],
html[data-pbb-theme="light"] #story-choice-modal [style*="color:white"],
html[data-pbb-theme="light"] #story-choice-modal [style*="color: white"],
html[data-pbb-theme="light"] #calendar-workout-action-modal [style*="color:white"],
html[data-pbb-theme="light"] #calendar-workout-action-modal [style*="color: white"],
html[data-pbb-theme="light"] #game-challenge-modal [style*="color:white"],
html[data-pbb-theme="light"] #game-challenge-modal [style*="color: white"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="color:white"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="color: white"],
html[data-pbb-theme="light"] #coin-shop-modal [style*="color:white"],
html[data-pbb-theme="light"] #coin-shop-modal [style*="color: white"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #home-friends-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #add-friend-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #add-friend-modal [style*="color:#64748b"],
html[data-pbb-theme="light"] #add-friend-modal [style*="color: #64748b"],
html[data-pbb-theme="light"] #story-choice-modal p,
html[data-pbb-theme="light"] #story-upload-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #calendar-workout-action-modal [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #game-challenge-modal p,
html[data-pbb-theme="light"] #game-challenge-modal [style*="color:rgba(255,255,255"],
html[data-pbb-theme="light"] #game-challenge-modal [style*="color: rgba(255, 255, 255"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="color:rgba(255,255,255"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="color: rgba(255, 255, 255"],
html[data-pbb-theme="light"] #coin-shop-balance,
html[data-pbb-theme="light"] #coin-shop-modal [style*="color:rgba(255,255,255"],
html[data-pbb-theme="light"] #coin-shop-modal [style*="color: rgba(255, 255, 255"] {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #home-friends-modal-list > div,
html[data-pbb-theme="light"] #add-friend-modal > div > div,
html[data-pbb-theme="light"] #story-choice-modal button,
html[data-pbb-theme="light"] #story-upload-modal > div > div,
html[data-pbb-theme="light"] #calendar-workout-action-modal button,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card,
html[data-pbb-theme="light"] #game-challenge-modal [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] #game-challenge-modal [style*="background: rgba(255, 255, 255"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .qb-bet-btn,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="background: rgba(255, 255, 255"],
html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option,
html[data-pbb-theme="light"] #challenge-pass-modal [style*="background"],
html[data-pbb-theme="light"] #rare-rewards-modal [style*="background"],
html[data-pbb-theme="light"] #badge-collection-modal [style*="background"],
html[data-pbb-theme="light"] #share-win-modal [style*="background"] {
    background: rgba(255, 255, 255, 0.82) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #story-choice-modal button:not(:last-child),
html[data-pbb-theme="light"] #story-upload-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #calendar-workout-action-modal #action-modal-start-btn,
html[data-pbb-theme="light"] #game-challenge-modal button[style*="var(--primary)"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay button[style*="var(--primary)"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay button[style*="#7c3aed"],
html[data-pbb-theme="light"] #coin-shop-modal button,
html[data-pbb-theme="light"] #home-friends-modal button[onclick*="openAddFriendModal"],
html[data-pbb-theme="light"] #add-friend-modal button[style*="var(--primary)"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    box-shadow: 0 14px 32px rgba(184, 137, 43, 0.18) !important;
}

html[data-pbb-theme="light"] #story-choice-modal button:last-child,
html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"],
html[data-pbb-theme="light"] #game-challenge-modal button[onclick*="close"],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-close,
html[data-pbb-theme="light"] #coin-shop-modal button[onclick*="close"] {
    background: rgba(255, 255, 255, 0.68) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
    box-shadow: none !important;
}

html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"] svg,
html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"] path,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn) svg,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn) path {
    color: #6f6a61 !important;
    fill: #6f6a61 !important;
    stroke: #6f6a61 !important;
}

html[data-pbb-theme="light"] #add-friend-modal input,
html[data-pbb-theme="light"] #story-upload-modal input,
html[data-pbb-theme="light"] #story-upload-modal textarea,
html[data-pbb-theme="light"] #game-challenge-modal input,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay input,
html[data-pbb-theme="light"] #coin-shop-modal input {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(184, 137, 43, 0.24) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #direct-message-modal #dm-messages-container,
html[data-pbb-theme="light"] #coach-chat-modal #chat-messages-container,
html[data-pbb-theme="light"] #group-chat-modal #gc-messages-container,
html[data-pbb-theme="light"] #message-selector-modal #message-selector-list,
html[data-pbb-theme="light"] #create-group-chat-modal [style*="max-height: calc(85vh - 140px)"] {
    background: rgba(244, 240, 231, 0.84) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #direct-message-modal #dm-messages-container > div,
html[data-pbb-theme="light"] #coach-chat-modal #chat-messages-container > div,
html[data-pbb-theme="light"] #group-chat-modal #gc-messages-container > div {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #game-toast {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.2), transparent 32%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(244, 240, 231, 0.96)) !important;
    border: 1px solid rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #game-toast *,
html[data-pbb-theme="light"] #game-toast [style*="color"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #story-choice-modal > div *,
html[data-pbb-theme="light"] #story-upload-modal > div *,
html[data-pbb-theme="light"] #calendar-workout-action-modal > div *,
html[data-pbb-theme="light"] #game-challenge-modal > div *,
html[data-pbb-theme="light"] #game-invite-modal > div *,
html[data-pbb-theme="light"] #game-result-overlay > div *,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-modal *,
html[data-pbb-theme="light"] #coin-shop-modal > div *,
html[data-pbb-theme="light"] #challenge-pass-modal > div *,
html[data-pbb-theme="light"] #rare-rewards-modal > div *,
html[data-pbb-theme="light"] #badge-collection-modal > div *,
html[data-pbb-theme="light"] #share-win-modal > div * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #story-choice-modal p,
html[data-pbb-theme="light"] #story-choice-modal button:last-child,
html[data-pbb-theme="light"] #calendar-workout-action-modal p,
html[data-pbb-theme="light"] #game-challenge-modal p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-close,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"] div:last-child,
html[data-pbb-theme="light"] #coin-shop-balance {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay button[style*="var(--primary)"] *,
html[data-pbb-theme="light"] #game-challenge-modal button[style*="var(--primary)"] *,
html[data-pbb-theme="light"] #coin-shop-modal button *,
html[data-pbb-theme="light"] #calendar-workout-action-modal #action-modal-start-btn * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #fitness-diary-collapsed * {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #fitness-diary-collapsed [style*="opacity"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #fitness-diary-submit-btn,
html[data-pbb-theme="light"] #fitness-diary-share-feed-btn,
html[data-pbb-theme="light"] #fitness-diary-success-share-feed-btn {
    background: #151515 !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    border: 1px solid rgba(21, 21, 21, 0.86) !important;
}

html[data-pbb-theme="light"] #fitness-diary-card button#fitness-diary-submit-btn,
html[data-pbb-theme="light"] #fitness-diary-card button#fitness-diary-success-share-feed-btn,
html[data-pbb-theme="light"] #fitness-diary-done-card button#fitness-diary-share-feed-btn {
    background: #151515 !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #fitness-diary-submit-btn *,
html[data-pbb-theme="light"] #fitness-diary-share-feed-btn *,
html[data-pbb-theme="light"] #fitness-diary-success-share-feed-btn * {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #view-log-activity input,
html[data-pbb-theme="light"] #view-log-activity textarea,
html[data-pbb-theme="light"] #view-log-activity select {
    background: #ffffff !important;
    border: 1px solid rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    caret-color: #151515 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
}

html[data-pbb-theme="light"] #view-log-activity input::placeholder,
html[data-pbb-theme="light"] #view-log-activity textarea::placeholder {
    color: #8a8174 !important;
    -webkit-text-fill-color: #8a8174 !important;
}

html[data-pbb-theme="light"] #view-log-activity [style*="linear-gradient(135deg, #0c4a6e"],
html[data-pbb-theme="light"] #view-log-activity [style*="linear-gradient(135deg,#0c4a6e"] {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.28) !important;
    color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #view-log-activity [style*="linear-gradient(135deg, #0c4a6e"] *,
html[data-pbb-theme="light"] #view-log-activity [style*="linear-gradient(135deg,#0c4a6e"] *,
html[data-pbb-theme="light"] #activity-calories-display {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #view-log-activity .intensity-btn[style*="#0ea5e9"] {
    background: #fff9e8 !important;
    border-color: #b8892b !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.16), transparent 32%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 240, 231, 0.96)) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #151515 !important;
    box-shadow: 0 24px 58px rgba(57, 47, 31, 0.16) !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal h2,
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal h3,
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal label,
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="color:var(--primary)"],
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="color: var(--primary)"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal p,
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="color:#666"],
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="color: #666"],
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="color:#64748b"],
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="color: #64748b"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="background:#f8fafc"],
html[data-pbb-theme="light"] #cycle-tracking-modal .onboarding-modal [style*="background: #f8fafc"] {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal input[type="date"],
html[data-pbb-theme="light"] #cycle-tracking-modal input[type="number"],
html[data-pbb-theme="light"] #cycle-tracking-modal input[type="text"] {
    background: #ffffff !important;
    border-color: rgba(184, 137, 43, 0.24) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    caret-color: #151515 !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal button[onclick*="saveCycleTrackingData"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #cycle-tracking-modal [onclick*="closeCycleTrackingModal"] {
    background: rgba(255, 255, 255, 0.86) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-hero {
    background: linear-gradient(135deg, #151515 0%, #34302a 58%, #b8892b 100%) !important;
    color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-hero * {
    color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-hero [style*="#fde68a"] {
    color: #f5d98a !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-hero button {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(245, 217, 138, 0.18) !important;
    color: #fffaf2 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg,#ffffff"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg,#ffffff"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg, #ffffff"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg, #ffffff"] {
    background: linear-gradient(135deg, #ffffff 0%, #f8f3e7 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 8px 22px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg,#ffffff"] [style*="color:#0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg,#ffffff"] [style*="color:#0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg, #ffffff"] [style*="color:#0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg, #ffffff"] [style*="color:#0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg,#ffffff"] [style*="color: #0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg,#ffffff"] [style*="color: #0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg, #ffffff"] [style*="color: #0f172a"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg, #ffffff"] [style*="color: #0f172a"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg,#ffffff"] [style*="color:#64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg,#ffffff"] [style*="color:#64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg, #ffffff"] [style*="color:#64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg, #ffffff"] [style*="color:#64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg,#ffffff"] [style*="color: #64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg,#ffffff"] [style*="color: #64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background:linear-gradient(135deg, #ffffff"] [style*="color: #64748b"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet [style*="background: linear-gradient(135deg, #ffffff"] [style*="color: #64748b"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-selected-badge {
    color: #ffffff !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet > div:last-child,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-category,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-choice {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.1) !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-category-title,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-category-title *,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-choice strong {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-category-head [style*="color:#475569"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-category-head [style*="color: #475569"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-choice span:not(.weekly-goal-choice-pill),
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-chip-wrap span,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-stepper span {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-choice-pill,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-target-chip,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-stepper input {
    background: #fff9e8 !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #9f7628 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-choice.selected,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-target-chip.selected {
    background: linear-gradient(135deg, #fff9e8, #f2e3bf) !important;
    border-color: rgba(184, 137, 43, 0.45) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-choice.selected *,
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-target-chip.selected * {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet > div[style*="position:sticky"][style*="bottom:0"],
html[data-pbb-theme="light"] #weekly-goals-modal .weekly-goal-sheet > div[style*="position: sticky"][style*="bottom:0"] {
    background: rgba(255, 255, 255, 0.94) !important;
    border-top: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    backdrop-filter: blur(14px) saturate(124%);
    -webkit-backdrop-filter: blur(14px) saturate(124%);
}

/* Dark/default workout tracker readability: match the black, gold, and grey theme. */
html:not([data-pbb-theme="light"]) #view-active-workout,
html:not([data-pbb-theme="light"]) #view-active-workout-stub {
    background:
        radial-gradient(circle at 18% -8%, rgba(245, 217, 138, 0.16), transparent 30%),
        linear-gradient(180deg, #050505 0%, #0b0b0b 48%, #14110c 100%) !important;
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout #workout-content-wrapper,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .active-workout-content {
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout #workout-player-title,
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card h3,
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card [style*="font-weight: 700"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .exercise-logger-card h3,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .exercise-logger-card [style*="font-weight: 700"] {
    color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout #workout-player-goal,
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card p,
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card [style*="color:var(--text-muted)"],
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card [style*="color: var(--text-muted)"],
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card [style*="color:#94a3b8"],
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card [style*="color: #94a3b8"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .set-col-label {
    color: rgba(248, 247, 242, 0.68) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .exercise-logger-card {
    background: linear-gradient(180deg, rgba(20, 20, 20, 0.96) 0%, rgba(8, 8, 8, 0.98) 100%) !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card > div[style*="background:#f8fafc"],
html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card > div[style*="background: #f8fafc"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .exercise-header {
    background: rgba(255, 255, 255, 0.045) !important;
    border-color: rgba(245, 217, 138, 0.12) !important;
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .workout-set-row,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .set-row {
    background: rgba(255, 255, 255, 0.035) !important;
    border: 1px solid rgba(245, 217, 138, 0.08) !important;
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .set-number,
html:not([data-pbb-theme="light"]) #view-active-workout .workout-set-row > div:first-child,
html:not([data-pbb-theme="light"]) #view-active-workout .workout-set-row [style*="color: #94a3b8"],
html:not([data-pbb-theme="light"]) #view-active-workout .workout-set-row [style*="color:#94a3b8"] {
    color: rgba(248, 247, 242, 0.62) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .input-time,
html:not([data-pbb-theme="light"]) #view-active-workout .input-reps,
html:not([data-pbb-theme="light"]) #view-active-workout .input-kg,
html:not([data-pbb-theme="light"]) #view-active-workout .drop-reps,
html:not([data-pbb-theme="light"]) #view-active-workout .drop-kg,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .set-input,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-set-row input {
    background: #121212 !important;
    border: 1px solid rgba(245, 217, 138, 0.2) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    caret-color: #f5d98a !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .input-time::placeholder,
html:not([data-pbb-theme="light"]) #view-active-workout .input-reps::placeholder,
html:not([data-pbb-theme="light"]) #view-active-workout .input-kg::placeholder,
html:not([data-pbb-theme="light"]) #view-active-workout .drop-reps::placeholder,
html:not([data-pbb-theme="light"]) #view-active-workout .drop-kg::placeholder,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .set-input::placeholder,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-set-row input::placeholder {
    color: rgba(248, 247, 242, 0.46) !important;
    -webkit-text-fill-color: rgba(248, 247, 242, 0.46) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .input-time:focus,
html:not([data-pbb-theme="light"]) #view-active-workout .input-reps:focus,
html:not([data-pbb-theme="light"]) #view-active-workout .input-kg:focus,
html:not([data-pbb-theme="light"]) #view-active-workout .drop-reps:focus,
html:not([data-pbb-theme="light"]) #view-active-workout .drop-kg:focus,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .set-input:focus,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-set-row input:focus {
    background: #181818 !important;
    border-color: rgba(245, 217, 138, 0.48) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(245, 217, 138, 0.1) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .drop-set-toggle,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-set-toggle {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(245, 217, 138, 0.18) !important;
    color: rgba(248, 247, 242, 0.7) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .drop-set-toggle.active,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-set-toggle.active {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 58%, #b8892b 100%) !important;
    border-color: rgba(245, 217, 138, 0.42) !important;
    color: #090909 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .drop-set-container,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-set-container {
    background: rgba(245, 217, 138, 0.08) !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .drop-indicator,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .drop-indicator {
    color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout button[onclick*="addWorkoutSet"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub button[onclick*="addWorkoutSet"] {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(245, 217, 138, 0.24) !important;
    color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .exercise-logger-card button[onclick*="addWorkoutSet"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .exercise-logger-card button[onclick*="addWorkoutSet"] {
    color: #f8f7f2 !important;
    -webkit-text-fill-color: #f8f7f2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display {
    background: linear-gradient(135deg, #fff8e8 0%, #f7e4a7 100%) !important;
    border-bottom: 1px solid rgba(184, 137, 43, 0.22) !important;
    color: #4a2e0a !important;
    -webkit-text-fill-color: #4a2e0a !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display svg,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display svg {
    fill: #ca8a04 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display > div:first-child span,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display > div:first-child span {
    color: #8c5500 !important;
    -webkit-text-fill-color: #8c5500 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-value,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-value {
    color: #4a2e0a !important;
    -webkit-text-fill-color: #4a2e0a !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-comparison,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-comparison,
html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-comparison span,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-comparison span {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-target-label,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-target-label,
html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-percentage,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-percentage {
    color: #8c5500 !important;
    -webkit-text-fill-color: #8c5500 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-progress-container > div,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-progress-container > div {
    background: rgba(184, 137, 43, 0.18) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .volume-display .volume-progress-bar,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .volume-display .volume-progress-bar {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 60%, #b8892b 100%) !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .yoga-exercise-card > div:first-child,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .yoga-exercise-card > div:first-child {
    background: linear-gradient(135deg, #ffffff 0%, #f7f3e9 100%) !important;
    border-bottom: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .yoga-exercise-card > div:first-child h3,
html:not([data-pbb-theme="light"]) #view-active-workout-stub .yoga-exercise-card > div:first-child h3,
html:not([data-pbb-theme="light"]) #view-active-workout .yoga-exercise-card > div:first-child [style*="font-weight: 700"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .yoga-exercise-card > div:first-child [style*="font-weight: 700"] {
    color: #151515 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .yoga-exercise-card > div:first-child [style*="color: var(--text-muted)"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .yoga-exercise-card > div:first-child [style*="color: var(--text-muted)"] {
    color: #6f6a61 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout .yoga-exercise-card > div:first-child [style*="color: var(--primary)"],
html:not([data-pbb-theme="light"]) #view-active-workout-stub .yoga-exercise-card > div:first-child [style*="color: var(--primary)"] {
    color: #9f7628 !important;
}

/* Light-mode workout tracker readability: set/reps/kg inputs and logger rows. */
html[data-pbb-theme="light"] #view-active-workout,
html[data-pbb-theme="light"] #view-active-workout-stub {
    background: linear-gradient(180deg, #fffdf8 0%, #f8f5ee 48%, #eee8dc 100%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #workout-content-wrapper,
html[data-pbb-theme="light"] #workout-exercises-list,
html[data-pbb-theme="light"] #stub-workout-exercises-list {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #workout-player-title,
html[data-pbb-theme="light"] #stub-workout-player-title,
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card h3,
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card [style*="font-weight: 700"],
html[data-pbb-theme="light"] #view-active-workout-stub .exercise-logger-card h3,
html[data-pbb-theme="light"] #view-active-workout-stub .exercise-logger-card [style*="font-weight: 700"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #workout-player-goal,
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card p,
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card [style*="color:var(--text-muted)"],
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card [style*="color:#94a3b8"],
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card [style*="color: #94a3b8"],
html[data-pbb-theme="light"] #view-active-workout-stub .set-col-label {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card,
html[data-pbb-theme="light"] #view-active-workout-stub .exercise-logger-card {
    background: rgba(255, 255, 255, 0.92) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.1) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card > div[style*="background:#f8fafc"],
html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card > div[style*="background: #f8fafc"],
html[data-pbb-theme="light"] #view-active-workout-stub .exercise-header {
    background: rgba(248, 245, 238, 0.96) !important;
    border-color: rgba(184, 137, 43, 0.14) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-active-workout .workout-set-row,
html[data-pbb-theme="light"] #view-active-workout-stub .set-row {
    background: rgba(255, 255, 255, 0.86) !important;
    border-color: rgba(184, 137, 43, 0.1) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-active-workout .set-number,
html[data-pbb-theme="light"] #view-active-workout .workout-set-row > div:first-child,
html[data-pbb-theme="light"] #view-active-workout .workout-set-row [style*="color: #94a3b8"],
html[data-pbb-theme="light"] #view-active-workout .workout-set-row [style*="color:#94a3b8"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-active-workout .input-time,
html[data-pbb-theme="light"] #view-active-workout .input-reps,
html[data-pbb-theme="light"] #view-active-workout .input-kg,
html[data-pbb-theme="light"] #view-active-workout .drop-reps,
html[data-pbb-theme="light"] #view-active-workout .drop-kg,
html[data-pbb-theme="light"] #view-active-workout-stub .set-input,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-set-row input {
    background: #ffffff !important;
    border: 1px solid rgba(184, 137, 43, 0.22) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    caret-color: #151515 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
}

html[data-pbb-theme="light"] #view-active-workout .input-time::placeholder,
html[data-pbb-theme="light"] #view-active-workout .input-reps::placeholder,
html[data-pbb-theme="light"] #view-active-workout .input-kg::placeholder,
html[data-pbb-theme="light"] #view-active-workout .drop-reps::placeholder,
html[data-pbb-theme="light"] #view-active-workout .drop-kg::placeholder,
html[data-pbb-theme="light"] #view-active-workout-stub .set-input::placeholder,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-set-row input::placeholder {
    color: rgba(21, 21, 21, 0.42) !important;
    -webkit-text-fill-color: rgba(21, 21, 21, 0.42) !important;
}

html[data-pbb-theme="light"] #view-active-workout .input-time:focus,
html[data-pbb-theme="light"] #view-active-workout .input-reps:focus,
html[data-pbb-theme="light"] #view-active-workout .input-kg:focus,
html[data-pbb-theme="light"] #view-active-workout .drop-reps:focus,
html[data-pbb-theme="light"] #view-active-workout .drop-kg:focus,
html[data-pbb-theme="light"] #view-active-workout-stub .set-input:focus,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-set-row input:focus {
    background: #fff9e8 !important;
    border-color: rgba(184, 137, 43, 0.52) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(184, 137, 43, 0.12) !important;
}

html[data-pbb-theme="light"] #view-active-workout .drop-set-toggle,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-set-toggle {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #view-active-workout .drop-set-toggle.active,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-set-toggle.active {
    background: #151515 !important;
    border-color: #151515 !important;
    color: #ffffff !important;
}

html[data-pbb-theme="light"] #view-active-workout .drop-set-container,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-set-container {
    background: #fff6de !important;
    border-color: rgba(184, 137, 43, 0.24) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-active-workout .drop-indicator,
html[data-pbb-theme="light"] #view-active-workout-stub .drop-indicator {
    color: #b8892b !important;
}

html[data-pbb-theme="light"] #view-active-workout button[onclick*="addWorkoutSet"],
html[data-pbb-theme="light"] #view-active-workout-stub button[onclick*="addWorkoutSet"] {
    border-color: rgba(184, 137, 43, 0.28) !important;
    color: #151515 !important;
    background: rgba(255, 255, 255, 0.62) !important;
}

html[data-pbb-theme="light"] #view-active-workout .exercise-logger-card button[onclick*="addWorkoutSet"],
html[data-pbb-theme="light"] #view-active-workout-stub .exercise-logger-card button[onclick*="addWorkoutSet"] {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #home-challenges-list button[onclick*="acceptChallengeInvite"] {
    background: linear-gradient(135deg, #f5d98a 0%, #d8b25e 55%, #b8892b 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.34) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #extra-challenges-toggle {
    background: rgba(255, 255, 255, 0.78) !important;
    border-color: rgba(184, 137, 43, 0.3) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #extra-challenges-toggle span {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #movement-tab h1,
html[data-pbb-theme="light"] #movement-tab h2,
html[data-pbb-theme="light"] #movement-tab h3,
html[data-pbb-theme="light"] #movement-tab h4,
html[data-pbb-theme="light"] #movement-tab .section-title,
html[data-pbb-theme="light"] #movement-tab .card-title {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #movement-tab p,
html[data-pbb-theme="light"] #movement-tab .text-muted,
html[data-pbb-theme="light"] #movement-tab [style*="color: var(--text-muted)"],
html[data-pbb-theme="light"] #movement-tab [style*="color:#94a3b8"],
html[data-pbb-theme="light"] #movement-tab [style*="color: #94a3b8"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #daily-meal-tip-card {
    background:
        radial-gradient(circle at 88% 0%, rgba(216, 178, 94, 0.18), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f7f3e9 58%, #ece4d3 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.11) !important;
}

html[data-pbb-theme="light"] #daily-meal-tip-card * {
    color: #151515 !important;
    fill: #151515 !important;
}

html[data-pbb-theme="light"] #daily-meal-tip-card [style*="background: rgba(255,255,255,0.2)"],
html[data-pbb-theme="light"] #daily-meal-tip-card [style*="background: rgba(255, 255, 255, 0.2)"] {
    background: rgba(184, 137, 43, 0.14) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
}

html[data-pbb-theme="light"] #daily-meal-tip-card button[onclick*="dismissMealTipCard"] {
    background: rgba(255, 255, 255, 0.74) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #movement-workout-trend-card,
html[data-pbb-theme="light"] #daily-workout-trend-card,
html[data-pbb-theme="light"] #form-check-quick-card,
html[data-pbb-theme="light"] #movement-grid-container > div,
html[data-pbb-theme="light"] #build-custom-card,
html[data-pbb-theme="light"] #today-workout-card,
html[data-pbb-theme="light"] #workout-library-card,
html[data-pbb-theme="light"] #view-log-activity .card,
html[data-pbb-theme="light"] #view-workout-library .card,
html[data-pbb-theme="light"] #view-your-workouts .card {
    background: linear-gradient(135deg, #ffffff 0%, #f7f3e9 58%, #ece4d3 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    box-shadow: 0 18px 42px rgba(57, 47, 31, 0.11) !important;
}

html[data-pbb-theme="light"] #movement-grid-container > #mvmt-week-workouts-card {
    background: linear-gradient(135deg, #f6dc91 0%, #d8b25e 55%, #b8892b 100%) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #form-check-quick-card *,
html[data-pbb-theme="light"] #movement-workout-trend-card *,
html[data-pbb-theme="light"] #daily-meal-tip-card *,
html[data-pbb-theme="light"] #daily-workout-trend-card *,
html[data-pbb-theme="light"] #movement-grid-container > div *,
html[data-pbb-theme="light"] #today-workout-card *,
html[data-pbb-theme="light"] #workout-library-card * {
    color: #151515 !important;
    fill: #151515 !important;
}

html[data-pbb-theme="light"] .calendar-day-row,
html[data-pbb-theme="light"] .monthly-calendar-container,
html[data-pbb-theme="light"] .monthly-calendar-header,
html[data-pbb-theme="light"] .monthly-calendar-weekdays,
html[data-pbb-theme="light"] .monthly-day-cell {
    background: rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(184, 137, 43, 0.16) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .calendar-day-row.is-today,
html[data-pbb-theme="light"] .monthly-day-cell.is-today {
    background: #fff9e8 !important;
    border-color: rgba(184, 137, 43, 0.4) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] .cal-day-num,
html[data-pbb-theme="light"] .cal-workout-tag,
html[data-pbb-theme="light"] .monthly-calendar-header .month-title,
html[data-pbb-theme="light"] .monthly-day-num,
html[data-pbb-theme="light"] .cal-context,
html[data-pbb-theme="light"] .calendar-day-row [style*="color:#fffaf2"],
html[data-pbb-theme="light"] .calendar-day-row [style*="color: #fffaf2"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] .cal-day-name,
html[data-pbb-theme="light"] .monthly-calendar-weekdays span,
html[data-pbb-theme="light"] .monthly-day-workout,
html[data-pbb-theme="light"] .calendar-day-row [style*="color:#94a3b8"],
html[data-pbb-theme="light"] .calendar-day-row [style*="color: #94a3b8"] {
    color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .cal-workout-tag {
    background: rgba(17, 17, 17, 0.045) !important;
    border-color: rgba(184, 137, 43, 0.14) !important;
}

html[data-pbb-theme="light"] .cal-drag-handle,
html[data-pbb-theme="light"] .monthly-calendar-header .month-nav-btn {
    background: rgba(255, 255, 255, 0.82) !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
}

html[data-pbb-theme="light"] #view-dashboard [style*="color:#fffaf2"],
html[data-pbb-theme="light"] #view-dashboard [style*="color: #fffaf2"],
html[data-pbb-theme="light"] #movement-tab [style*="color:#fffaf2"],
html[data-pbb-theme="light"] #movement-tab [style*="color: #fffaf2"],
html[data-pbb-theme="light"] #view-cycle [style*="color:#fffaf2"],
html[data-pbb-theme="light"] #view-cycle [style*="color: #fffaf2"],
html[data-pbb-theme="light"] #view-dashboard [style*="color:white"],
html[data-pbb-theme="light"] #view-dashboard [style*="color: white"],
html[data-pbb-theme="light"] #movement-tab [style*="color:white"],
html[data-pbb-theme="light"] #movement-tab [style*="color: white"],
html[data-pbb-theme="light"] #view-cycle [style*="color:white"],
html[data-pbb-theme="light"] #view-cycle [style*="color: white"] {
    color: #151515 !important;
}

html[data-pbb-theme="light"] #home-challenges-list button[onclick*="leaveChallengeFromCard"],
html[data-pbb-theme="light"] #home-challenges-list button[onclick*="declineChallengeInvite"],
html[data-pbb-theme="light"] #extra-challenges-list button[onclick*="leaveChallengeFromCard"] {
    background: #151515 !important;
    border: 1px solid #151515 !important;
    color: #ffffff !important;
}

/* Final light-mode specificity pass for older modal descendants. */
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header h2,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [onclick*="_startQuizBattleVsAI"] div,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card div,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card,
html[data-pbb-theme="light"] #game-challenge-modal h3,
html[data-pbb-theme="light"] #story-choice-modal h3,
html[data-pbb-theme="light"] #story-choice-modal button,
html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option,
html[data-pbb-theme="light"] #coin-shop-modal .coin-pack-option *,
html[data-pbb-theme="light"] #calendar-workout-action-modal h3,
html[data-pbb-theme="light"] #calendar-workout-action-modal button,
html[data-pbb-theme="light"] #calendar-workout-action-modal button * {
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [onclick*="_startQuizBattleVsAI"] div:last-child,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-close,
html[data-pbb-theme="light"] #game-challenge-modal p,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card div:last-child,
html[data-pbb-theme="light"] #story-choice-modal p,
html[data-pbb-theme="light"] #calendar-workout-action-modal p {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] #quiz-battle-invite-overlay .qb-bet-btn,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-close,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"],
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn),
html[data-pbb-theme="light"] #story-choice-modal button:last-child {
    background: rgba(255, 255, 255, 0.84) !important;
    border: 1px solid rgba(184, 137, 43, 0.16) !important;
    box-shadow: 0 12px 28px rgba(57, 47, 31, 0.08) !important;
}

html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"] svg,
html[data-pbb-theme="light"] #calendar-workout-action-modal button[onclick*="close"] path,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn) svg,
html[data-pbb-theme="light"] #calendar-workout-action-modal button:not(#action-modal-start-btn) path {
    color: #6f6a61 !important;
    fill: #6f6a61 !important;
    stroke: #6f6a61 !important;
}

/* Challenge and battle modals stay dark and readable even when the app is in light mode. */
html[data-pbb-theme="light"] #challenge-type-picker,
html[data-pbb-theme="light"] #create-challenge-modal,
html[data-pbb-theme="light"] #challenge-results-modal,
html[data-pbb-theme="light"] #challenge-leaderboard-modal,
html[data-pbb-theme="light"] #challenge-pass-modal,
html[data-pbb-theme="light"] #challenge-point-breakdown-modal,
html[data-pbb-theme="light"] #game-challenge-modal,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay,
html[data-pbb-theme="light"] #weight-goal-picker-modal,
html[data-pbb-theme="light"] #cohort-info-modal {
    background: rgba(2, 6, 23, 0.84) !important;
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
}

html[data-pbb-theme="light"] #challenge-type-picker > div,
html[data-pbb-theme="light"] #create-challenge-modal > div,
html[data-pbb-theme="light"] #challenge-results-modal > div,
html[data-pbb-theme="light"] #challenge-leaderboard-modal,
html[data-pbb-theme="light"] #challenge-pass-modal > div,
html[data-pbb-theme="light"] #challenge-point-breakdown-modal > div,
html[data-pbb-theme="light"] #game-challenge-modal > div,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-modal,
html[data-pbb-theme="light"] #weight-goal-picker-modal > div,
html[data-pbb-theme="light"] #cohort-info-modal > div {
    background:
        radial-gradient(circle at 18% 0%, rgba(245, 217, 138, 0.14), transparent 30%),
        linear-gradient(180deg, rgba(15, 23, 42, 0.99), rgba(2, 6, 23, 0.99)) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
}

html[data-pbb-theme="light"] #challenge-type-picker *,
html[data-pbb-theme="light"] #create-challenge-modal *,
html[data-pbb-theme="light"] #challenge-results-modal *,
html[data-pbb-theme="light"] #challenge-leaderboard-modal *,
html[data-pbb-theme="light"] #challenge-pass-modal *,
html[data-pbb-theme="light"] #challenge-point-breakdown-modal *,
html[data-pbb-theme="light"] #game-challenge-modal *,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay *,
html[data-pbb-theme="light"] #weight-goal-picker-modal *,
html[data-pbb-theme="light"] #cohort-info-modal * {
    color: #f8fafc !important;
    -webkit-text-fill-color: currentColor !important;
}

html[data-pbb-theme="light"] #challenge-type-picker p,
html[data-pbb-theme="light"] #create-challenge-modal p,
html[data-pbb-theme="light"] #challenge-results-modal p,
html[data-pbb-theme="light"] #challenge-leaderboard-modal p,
html[data-pbb-theme="light"] #challenge-pass-modal p,
html[data-pbb-theme="light"] #game-challenge-modal p,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay p,
html[data-pbb-theme="light"] #cohort-info-modal p,
html[data-pbb-theme="light"] #challenge-type-picker [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #create-challenge-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #challenge-results-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #challenge-leaderboard-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #challenge-pass-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #challenge-point-breakdown-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #game-challenge-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #weight-goal-picker-modal [style*="rgba(255,255,255,0."],
html[data-pbb-theme="light"] #cohort-info-modal [style*="rgba(255,255,255,0."] {
    color: rgba(248, 250, 252, 0.76) !important;
    -webkit-text-fill-color: rgba(248, 250, 252, 0.76) !important;
}

html[data-pbb-theme="light"] #challenge-type-picker .challenge-type-card,
html[data-pbb-theme="light"] #create-challenge-modal [style*="background: rgba(255,255,255"],
html[data-pbb-theme="light"] #challenge-leaderboard-modal [style*="background: #1e293b"],
html[data-pbb-theme="light"] #challenge-leaderboard-modal [style*="background:#1e293b"],
html[data-pbb-theme="light"] #challenge-pass-modal .challenge-buyin-benefits,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card,
html[data-pbb-theme="light"] #game-challenge-modal .game-friend-card,
html[data-pbb-theme="light"] #game-challenge-modal .game-bet-btn,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .qb-bet-btn,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-friend,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay [onclick*="_startQuizBattleVsAI"],
html[data-pbb-theme="light"] #cohort-info-modal [style*="background: #1e293b"],
html[data-pbb-theme="light"] #cohort-info-modal [style*="background:#1e293b"] {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
}

html[data-pbb-theme="light"] #create-challenge-modal input,
html[data-pbb-theme="light"] #challenge-pass-modal input,
html[data-pbb-theme="light"] #game-challenge-modal input,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay input,
html[data-pbb-theme="light"] #weight-goal-picker-modal input {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffffff !important;
    color-scheme: dark !important;
}

html[data-pbb-theme="light"] #challenge-type-picker > div *,
html[data-pbb-theme="light"] #create-challenge-modal > div *,
html[data-pbb-theme="light"] #challenge-results-modal > div *,
html[data-pbb-theme="light"] #challenge-leaderboard-modal *,
html[data-pbb-theme="light"] #challenge-pass-modal > div *,
html[data-pbb-theme="light"] #challenge-point-breakdown-modal > div *,
html[data-pbb-theme="light"] #game-challenge-modal > div *,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card div,
html[data-pbb-theme="light"] #game-challenge-modal .game-type-card div:last-child,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-modal *,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-header h2,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [onclick*="_startQuizBattleVsAI"] div,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-body [onclick*="_startQuizBattleVsAI"] div:last-child,
html[data-pbb-theme="light"] #weight-goal-picker-modal > div *,
html[data-pbb-theme="light"] #cohort-info-modal > div * {
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
}

html[data-pbb-theme="light"] #create-challenge-btn,
html[data-pbb-theme="light"] #challenge-results-modal button[onclick*="closeChallengeResults"],
html[data-pbb-theme="light"] #challenge-type-picker button[onclick*="closeChallengeTypePicker"] + button,
html[data-pbb-theme="light"] #challenge-pass-modal .challenge-buyin-join-btn,
html[data-pbb-theme="light"] #quiz-battle-invite-overlay .battle-invite-btn,
html[data-pbb-theme="light"] #game-challenge-modal #send-game-challenge-btn,
html[data-pbb-theme="light"] #cohort-info-modal button[onclick*="openXpGuidePage"] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

/* Feed composer media picker must stay readable over the light Feed surface.
   The global inline-background theme pass otherwise turns this tiny menu pale with white text. */
#feed-composer-media-source-menu {
    background: #fffdf7 !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
    box-shadow: 0 14px 30px rgba(57, 47, 31, 0.18) !important;
}

#feed-composer-media-source-menu button[role="menuitem"] {
    background: #fffdf7 !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#feed-composer-media-source-menu button[role="menuitem"] + button[role="menuitem"] {
    border-top-color: rgba(184, 137, 43, 0.14) !important;
}

#feed-composer-media-source-menu button[role="menuitem"]:hover,
#feed-composer-media-source-menu button[role="menuitem"]:focus,
#feed-composer-media-source-menu button[role="menuitem"]:active {
    background: #f8f3e8 !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

#feed-composer-media-source-menu svg {
    color: #151515 !important;
    stroke: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

/* Quiz battle is a dark game surface even when Learn is in light mode. */
#learning-content .pbb-quiz-battle-screen {
    color-scheme: dark !important;
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
}

#learning-content .pbb-quiz-battle-screen :where(div, p, span, strong, button) {
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
}

#learning-content .pbb-quiz-battle-screen :where(
    [style*="rgba(255,255,255,0.4)"],
    [style*="rgba(255,255,255,0.5)"],
    [style*="rgba(255,255,255,0.6)"],
    [style*="rgba(255,255,255,0.82)"],
    [style*="rgba(255,255,255,0.85)"],
    [style*="rgba(255, 255, 255, 0.4)"],
    [style*="rgba(255, 255, 255, 0.5)"],
    [style*="rgba(255, 255, 255, 0.6)"],
    [style*="rgba(255, 255, 255, 0.82)"],
    [style*="rgba(255, 255, 255, 0.85)"]
) {
    color: rgba(248, 250, 252, 0.76) !important;
    -webkit-text-fill-color: rgba(248, 250, 252, 0.76) !important;
}

#learning-content .pbb-quiz-battle-screen :where(
    [style*="#a78bfa"],
    [style*="#c4b5fd"]
) {
    color: #d8ccff !important;
    -webkit-text-fill-color: #d8ccff !important;
}

#learning-content .pbb-quiz-battle-screen :where([style*="#10b981"]) {
    color: #34d399 !important;
    -webkit-text-fill-color: #34d399 !important;
}

#learning-content .pbb-quiz-battle-screen :where([style*="#fbbf24"]) {
    color: #facc15 !important;
    -webkit-text-fill-color: #facc15 !important;
}

#learning-content .pbb-quiz-battle-screen :where([style*="#ef4444"]) {
    color: #f87171 !important;
    -webkit-text-fill-color: #f87171 !important;
}

#learning-content .pbb-quiz-battle-screen button[onclick*="showQuizBattleInviteModal"] {
    background: linear-gradient(135deg, #7c3aed, #6366f1) !important;
    border: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(99, 102, 241, 0.28) !important;
}

#learning-content .pbb-quiz-battle-screen button[onclick*="renderLearningHome"] {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 2px solid rgba(255, 255, 255, 0.15) !important;
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
    box-shadow: none !important;
}

/* Spotify mini player stays dark across light-mode WebViews. */
#spotify-now-playing {
    color-scheme: dark !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#spotify-now-playing :where(div, button) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Keep the weekly meal card action readable after the legacy global button sweep. */
#weekly-meal-evolution-home-card .weekly-meal-evolution-home-card__action {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
}

#spotify-now-playing #snp-track {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#spotify-now-playing #snp-artist {
    color: rgba(255, 255, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

#spotify-now-playing :where(svg, svg *) {
    color: #ffffff !important;
    fill: currentColor !important;
}

/* Final Feed composer menu pass. Keep this at the end so mobile light-theme
   and inline-background overrides cannot turn the menu glassy with pale text. */
#view-friends #feed-composer-share-menu,
html[data-pbb-theme="light"] #view-friends #feed-composer-share-menu {
    background: #ffffff !important;
    border: 1px solid #d1fae5 !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    opacity: 1 !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.18) !important;
}

#view-friends #feed-composer-share-menu [data-feed-composer-share-option],
html[data-pbb-theme="light"] #view-friends #feed-composer-share-menu [data-feed-composer-share-option] {
    background: #ffffff !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    opacity: 1 !important;
    text-shadow: none !important;
    filter: none !important;
}

#view-friends #feed-composer-share-menu [data-feed-composer-share-option] + [data-feed-composer-share-option],
html[data-pbb-theme="light"] #view-friends #feed-composer-share-menu [data-feed-composer-share-option] + [data-feed-composer-share-option] {
    border-top-color: #ecfdf5 !important;
}

#view-friends #feed-composer-share-menu [data-feed-composer-share-option] svg,
#view-friends #feed-composer-share-menu [data-feed-composer-share-option] svg *,
html[data-pbb-theme="light"] #view-friends #feed-composer-share-menu [data-feed-composer-share-option] svg,
html[data-pbb-theme="light"] #view-friends #feed-composer-share-menu [data-feed-composer-share-option] svg * {
    color: #0f766e !important;
    stroke: #0f766e !important;
    -webkit-text-fill-color: #0f766e !important;
    opacity: 1 !important;
}

/* Workout media sheets use light cards inside dark app chrome. Keep iOS dark mode from inheriting white text-fill. */
#view-form-check,
#view-workout-feed-share,
#add-exercise-modal,
#create-custom-exercise-modal {
    color-scheme: light !important;
}

#view-form-check .form-check-header,
#view-workout-feed-share .workout-feed-share-header,
#view-form-check .form-check-panel,
#view-workout-feed-share .workout-feed-share-panel,
#add-exercise-modal > div,
#create-custom-exercise-modal > div,
#add-exercise-modal > div > div[style*="position: sticky"],
#create-custom-exercise-modal > div > div[style*="position: sticky"] {
    background: #fffdf8 !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

#view-form-check .form-check-panel[style*="linear-gradient"],
#view-workout-feed-share .workout-feed-share-panel[style*="linear-gradient"],
#create-custom-exercise-modal [style*="background: linear-gradient(135deg, #fffaf0"] {
    background: linear-gradient(135deg, #ffffff 0%, #fffaf0 100%) !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    box-shadow: 0 10px 26px rgba(120, 80, 20, 0.1) !important;
}

#view-form-check .form-check-title,
#view-workout-feed-share .workout-feed-share-title,
#view-form-check .form-check-panel :where(div, label, span, p),
#view-workout-feed-share .workout-feed-share-panel :where(div, label, span, p),
#add-exercise-modal :where(label, h1, h2, h3, p, span, div),
#create-custom-exercise-modal :where(label, h1, h2, h3, p, span, div),
#add-exercise-modal [style*="color: var(--text-main)"],
#create-custom-exercise-modal [style*="color: var(--text-main)"],
#add-exercise-modal [style*="color:var(--text-main)"],
#create-custom-exercise-modal [style*="color:var(--text-main)"],
#add-exercise-modal [style*="color: var(--text-muted)"],
#create-custom-exercise-modal [style*="color: var(--text-muted)"],
#add-exercise-modal [style*="color:var(--text-muted)"],
#create-custom-exercise-modal [style*="color:var(--text-muted)"] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

#view-form-check .form-check-panel[style*="linear-gradient"] > div:first-child,
#view-workout-feed-share .workout-feed-share-panel[style*="linear-gradient"] > div:first-child,
#create-custom-exercise-modal [style*="color: #7c5b18"],
#create-custom-exercise-modal [style*="color:#7c5b18"],
#create-custom-exercise-modal [style*="color: #92400e"],
#create-custom-exercise-modal [style*="color:#92400e"],
#create-custom-exercise-modal [style*="color: #3f2d08"],
#create-custom-exercise-modal [style*="color:#3f2d08"] {
    color: #7c5b18 !important;
    -webkit-text-fill-color: #7c5b18 !important;
}

#view-form-check input,
#view-form-check textarea,
#view-workout-feed-share textarea,
#add-exercise-modal input,
#create-custom-exercise-modal input,
#create-custom-exercise-modal textarea,
#create-custom-exercise-modal select {
    background: #ffffff !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    caret-color: #111827 !important;
}

#view-form-check input::placeholder,
#view-form-check textarea::placeholder,
#view-workout-feed-share textarea::placeholder,
#add-exercise-modal input::placeholder,
#create-custom-exercise-modal input::placeholder,
#create-custom-exercise-modal textarea::placeholder {
    color: #6b7280 !important;
    -webkit-text-fill-color: #6b7280 !important;
    opacity: 1 !important;
}

#view-form-check .form-check-btn-primary,
#view-workout-feed-share .workout-feed-share-btn-primary,
#create-custom-exercise-modal #custom-exercise-record-btn {
    background: linear-gradient(135deg, #f6dc91 0%, #d8b25e 55%, #facc15 100%) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

#view-form-check .form-check-btn-secondary,
#view-form-check .form-check-btn-muted,
#view-workout-feed-share .workout-feed-share-btn-secondary,
#view-workout-feed-share .workout-feed-share-btn-muted,
#create-custom-exercise-modal label[style*="border: 2px dashed"] {
    background: #ffffff !important;
    border: 1px solid rgba(184, 137, 43, 0.2) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

#view-form-check .form-check-btn-danger,
#view-workout-feed-share .workout-feed-share-btn-danger {
    background: #fef2f2 !important;
    color: #991b1b !important;
    -webkit-text-fill-color: #991b1b !important;
}

#create-custom-exercise-modal #custom-exercise-video-preview button,
#workout-feed-share-camera-modal,
#workout-feed-share-camera-modal * {
    color-scheme: dark !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal {
    color-scheme: light !important;
    background: rgba(0, 0, 0, 0.72) !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal > div,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal > div,
html:not([data-pbb-theme="light"]) #add-exercise-modal > div[style*="background: white"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal > div[style*="background: white"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="background: white"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background: white"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="background:white"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background:white"],
html:not([data-pbb-theme="light"]) #add-exercise-modal > div > div[style*="position: sticky"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal > div > div[style*="position: sticky"],
html:not([data-pbb-theme="light"]) #add-exercise-modal > div > div[style*="background: #f8fafc"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [onclick*="openCreateCustomExerciseModal"],
html:not([data-pbb-theme="light"]) #add-exercise-results > div,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background: #f8fafc"],
html:not([data-pbb-theme="light"]) #my-custom-exercises-list > div {
    background: #fffdf8 !important;
    border-color: rgba(184, 137, 43, 0.18) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal label,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal label,
html:not([data-pbb-theme="light"]) #add-exercise-modal :where(h1, h2, h3, p, span, div),
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal :where(h1, h2, h3, p, span, div),
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color: var(--text-main)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: var(--text-main)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color:var(--text-main)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:var(--text-main)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color: var(--text-muted)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: var(--text-muted)"],
html:not([data-pbb-theme="light"]) #add-exercise-modal [style*="color:var(--text-muted)"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:var(--text-muted)"] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal input,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal input,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal textarea,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal select {
    background: #ffffff !important;
    border-color: rgba(184, 137, 43, 0.22) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    caret-color: #111827 !important;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal input::placeholder,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal input::placeholder,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal textarea::placeholder {
    color: #6b7280 !important;
    -webkit-text-fill-color: #6b7280 !important;
    opacity: 1 !important;
}

html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background: linear-gradient(135deg, #fffaf0"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background:linear-gradient(135deg, #fffaf0"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="background:linear-gradient(135deg,#fffaf0"] {
    background: linear-gradient(135deg, #ffffff 0%, #fffaf0 100%) !important;
    border-color: rgba(184, 137, 43, 0.2) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: #7c5b18"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:#7c5b18"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: #92400e"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:#92400e"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color: #3f2d08"],
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal [style*="color:#3f2d08"] {
    color: #7c5b18 !important;
    -webkit-text-fill-color: #7c5b18 !important;
}

html:not([data-pbb-theme="light"]) #create-custom-exercise-modal #custom-exercise-record-btn,
html:not([data-pbb-theme="light"]) #create-custom-exercise-modal label[style*="border: 2px dashed"] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

/* Course tab: sequential, expandable learning path */
#course-learning-home {
    --course-surface: #111111;
    --course-surface-soft: #181818;
    --course-border: rgba(245, 217, 138, 0.17);
    --course-copy: #f8f7f2;
    --course-muted: rgba(248, 247, 242, 0.66);
    --course-hero: radial-gradient(circle at 90% 12%, rgba(216, 178, 94, 0.2), transparent 31%), linear-gradient(145deg, #171717 0%, #050505 100%);
    --course-hero-copy: #ffffff;
    --course-hero-muted: rgba(255, 255, 255, 0.7);
    --course-elevated: #181818;
    --course-subtle: rgba(255, 255, 255, 0.06);
    --course-gold-strong: #d8b25e;
    padding: 18px 0 calc(112px + env(safe-area-inset-bottom, 0px));
}

.course-scholar-card {
    margin: 0 15px 26px !important;
    padding: 20px !important;
}

.course-scholar-card .health-iq-title,
.course-scholar-card .health-iq-rank,
.course-scholar-card .health-iq-count-num,
.course-scholar-card .health-iq-count-label,
.course-scholar-card .health-iq-progress-label,
.course-scholar-card .health-iq-max-level,
.course-scholar-card .health-iq-level-num {
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
}

.course-scholar-card .health-iq-title,
.course-scholar-card .health-iq-count-label,
.course-scholar-card .health-iq-progress-label {
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
}

.course-library-intro {
    margin: 0 20px 16px;
}

.course-library-kicker {
    color: #d8b25e !important;
    -webkit-text-fill-color: #d8b25e !important;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.course-library-title {
    margin-top: 4px;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.42rem;
    font-weight: 800;
    line-height: 1.15;
}

#course-learning-home .course-library-intro p {
    margin: 7px 0 0;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.8rem;
    line-height: 1.5;
}

.course-path-list {
    position: relative;
    width: 100%;
    max-width: 680px;
    margin-inline: auto;
    padding: 0 15px;
}

.course-path-cards {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 13px;
    z-index: 1;
}

.course-path-line {
    position: absolute;
    top: 24px;
    bottom: 24px;
    left: 42px;
    width: 2px;
    background: linear-gradient(180deg, rgba(216, 178, 94, 0.5), rgba(216, 178, 94, 0.08));
}

.course-path-card {
    overflow: hidden;
    border: 1px solid var(--course-border);
    border-radius: 20px;
    background: var(--course-surface);
    box-shadow: 0 13px 30px rgba(0, 0, 0, 0.22);
}

.course-path-card.is-expanded {
    border-color: color-mix(in srgb, var(--course-accent) 58%, transparent);
}

.course-path-card.is-locked {
    opacity: 0.72;
}

.course-path-card-toggle {
    width: 100%;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto 18px;
    align-items: center;
    gap: 11px;
    padding: 16px 15px 12px;
    border: 0;
    background: transparent;
    color: var(--course-copy);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.course-path-number {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--course-accent) 48%, transparent);
    border-radius: 13px;
    background: color-mix(in srgb, var(--course-accent) 18%, transparent);
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.86rem;
    font-weight: 900;
}

.course-path-copy,
.course-topic-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.course-path-kicker {
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.course-path-title {
    margin-top: 2px;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-size: 1.04rem;
    font-weight: 850;
    line-height: 1.2;
}

.course-path-subtitle {
    margin-top: 3px;
    overflow: hidden;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.72rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.course-path-state {
    align-self: start;
    padding: 5px 7px;
    border-radius: 99px;
    background: color-mix(in srgb, var(--course-accent) 14%, transparent);
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.61rem;
    font-weight: 850;
    white-space: nowrap;
}

.course-path-chevron {
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 1.2rem;
    line-height: 1;
    transform: translateY(-2px);
    transition: transform 180ms ease;
}

.course-path-card.is-expanded .course-path-chevron {
    transform: rotate(180deg) translateY(2px);
}

.course-path-progress {
    height: 5px;
    margin: 0 15px;
    overflow: hidden;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.08);
}

.course-path-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--course-accent);
}

.course-path-meta {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 15px 14px;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.66rem;
    font-weight: 700;
}

.course-path-details {
    padding: 0 15px 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
}

#course-learning-home .course-path-details > p {
    margin: 13px 0;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.76rem;
    line-height: 1.45;
}

.course-path-lock-note {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    padding: 10px 11px;
    border: 1px solid color-mix(in srgb, var(--course-accent) 24%, transparent);
    border-radius: 12px;
    background: color-mix(in srgb, var(--course-accent) 9%, transparent);
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-size: 0.72rem;
    font-weight: 750;
    line-height: 1.35;
}

.course-topic-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.foundation-week-card {
    min-width: 0;
}

.course-topic-row {
    width: 100%;
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 13px;
    background: var(--course-surface-soft);
    color: var(--course-copy);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.course-topic-row.is-locked {
    cursor: not-allowed;
    opacity: 0.62;
}

.foundation-week-toggle.is-locked {
    cursor: pointer;
}

.foundation-week-toggle[aria-expanded="true"] {
    border-color: color-mix(in srgb, var(--course-accent) 42%, transparent);
}

.course-topic-row.is-complete {
    border-color: rgba(216, 178, 94, 0.34);
}

.course-topic-number {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--course-accent) 16%, transparent);
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.68rem;
    font-weight: 900;
}

.course-topic-row.is-complete .course-topic-number {
    background: #b8892b;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.course-topic-title {
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.25;
}

.course-topic-kicker {
    margin-bottom: 2px;
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.course-topic-description {
    margin-top: 2px;
    overflow: hidden;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.66rem;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.course-topic-status {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.65rem;
    font-weight: 850;
}

.foundation-week-chevron {
    display: inline-block;
    font-size: 1rem;
    line-height: 1;
    transition: transform 180ms ease;
}

.foundation-week-toggle[aria-expanded="true"] .foundation-week-chevron {
    transform: rotate(180deg);
}

.foundation-quiz-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin: 7px 0 3px 16px;
    padding: 2px 0 3px 14px;
    border-left: 2px solid color-mix(in srgb, var(--course-accent) 36%, transparent);
}

.foundation-list-heading {
    margin: 2px 2px 0;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.56rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.foundation-list-heading--actions {
    margin-top: 8px;
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
}

.foundation-action-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.foundation-action-row {
    display: grid;
    grid-template-columns: 27px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border: 1px solid color-mix(in srgb, var(--course-accent) 18%, var(--course-border));
    border-radius: 11px;
    background: color-mix(in srgb, var(--course-surface-soft) 82%, var(--course-accent) 18%);
}

.foundation-action-row.is-locked {
    opacity: 0.56;
}

.foundation-action-row.is-complete {
    border-color: rgba(216, 178, 94, 0.38);
}

.foundation-action-number {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--course-accent) 15%, transparent);
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.72rem;
    font-weight: 900;
}

.foundation-action-row.is-complete .foundation-action-number {
    background: #b8892b;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.foundation-action-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.foundation-action-title {
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-size: 0.7rem;
    font-weight: 800;
    line-height: 1.25;
}

.foundation-action-hint {
    margin-top: 1px;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.59rem;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.foundation-action-progress {
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.59rem;
    font-weight: 850;
}

.foundation-action-button {
    grid-column: auto;
    justify-self: end;
    min-width: 52px;
    min-height: 30px;
    padding-inline: 8px;
    border: 1px solid color-mix(in srgb, var(--course-accent) 24%, transparent);
    border-radius: 9px;
    background: color-mix(in srgb, var(--course-accent) 13%, var(--course-surface));
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font: inherit;
    font-size: 0.63rem;
    font-weight: 900;
    cursor: pointer;
}

.foundation-action-button:disabled {
    cursor: default;
    opacity: 0.66;
}

.foundation-quiz-row {
    width: 100%;
    display: grid;
    grid-template-columns: 27px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 9px 10px;
    border: 1px solid color-mix(in srgb, var(--course-accent) 13%, var(--course-border));
    border-radius: 11px;
    background: color-mix(in srgb, var(--course-surface-soft) 88%, var(--course-accent) 12%);
    color: var(--course-copy);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.foundation-quiz-row.is-locked {
    cursor: not-allowed;
    opacity: 0.56;
}

.foundation-quiz-row.is-complete {
    border-color: rgba(216, 178, 94, 0.38);
}

.foundation-quiz-number {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--course-accent) 15%, transparent);
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.63rem;
    font-weight: 900;
}

.foundation-quiz-row.is-complete .foundation-quiz-number {
    background: #b8892b;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.foundation-quiz-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.foundation-quiz-kicker {
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.54rem;
    font-weight: 850;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.foundation-quiz-title {
    margin-top: 1px;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-size: 0.71rem;
    font-weight: 760;
    line-height: 1.25;
}

.foundation-quiz-status {
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.6rem;
    font-weight: 850;
}

.foundation-quiz-row.is-complete .foundation-quiz-status {
    color: var(--course-gold-strong) !important;
    -webkit-text-fill-color: var(--course-gold-strong) !important;
}

.course-learning-streak {
    margin: 18px 15px 0;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid rgba(216, 178, 94, 0.2);
    border-radius: 16px;
    background: rgba(216, 178, 94, 0.09);
    color: var(--course-copy);
}

.course-learning-streak strong,
.course-learning-streak small {
    display: block;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
}

.course-learning-streak small {
    margin-top: 2px;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
}

html[data-pbb-theme="light"] #course-learning-home {
    --course-surface: #ffffff;
    --course-surface-soft: #f8f5ee;
    --course-border: rgba(99, 82, 53, 0.14);
    --course-copy: #171717;
    --course-muted: #6f6a61;
    --course-hero: radial-gradient(circle at 90% 12%, rgba(216, 178, 94, 0.2), transparent 31%), linear-gradient(145deg, #fffdf8 0%, #f3e8cf 100%);
    --course-hero-copy: #171717;
    --course-hero-muted: #6f6a61;
    --course-elevated: #ffffff;
    --course-subtle: rgba(184, 137, 43, 0.08);
    --course-gold-strong: #8a6112;
}

.course-path-card,
.course-detail-page,
.course-week-page {
    --course-accent: var(--course-gold-strong) !important;
}

html[data-pbb-theme="light"] .course-scholar-card {
    background: linear-gradient(135deg, #ffffff 0%, #f7f3e9 58%, #ece4d3 100%) !important;
    color: #171717 !important;
}

html[data-pbb-theme="light"] .course-scholar-card .health-iq-title,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-rank,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-count-num,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-count-label,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-progress-label,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-max-level,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-level-num {
    color: #171717 !important;
    -webkit-text-fill-color: #171717 !important;
}

html[data-pbb-theme="light"] .course-scholar-card .health-iq-title,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-count-label,
html[data-pbb-theme="light"] .course-scholar-card .health-iq-progress-label {
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
}

html[data-pbb-theme="light"] .course-path-progress {
    background: #ece7dc;
}

html[data-pbb-theme="light"] .course-path-details {
    border-top-color: rgba(99, 82, 53, 0.1);
}

html[data-pbb-theme="light"] .course-topic-row {
    border-color: rgba(99, 82, 53, 0.11);
}

@media (max-width: 380px) {
    .course-path-card-toggle {
        grid-template-columns: 38px minmax(0, 1fr) 16px;
        gap: 9px;
        padding-inline: 12px;
    }

    .course-path-number {
        width: 38px;
        height: 38px;
    }

    .course-path-state {
        display: none;
    }
}

/* Course library prototype: editorial cards opening dedicated course pages */
#course-learning-home:not(.course-detail-page) {
    padding-top: 14px;
}

#course-learning-home:not(.course-detail-page) .course-scholar-card {
    margin: 0 15px 20px !important;
    padding: 15px 17px !important;
    border: 1px solid var(--course-border) !important;
    border-radius: 18px !important;
    background: var(--course-surface) !important;
    box-shadow: none !important;
}

#course-learning-home:not(.course-detail-page) .course-scholar-card .health-iq-level-badge {
    width: 40px;
    height: 40px;
}

#course-learning-home:not(.course-detail-page) .course-scholar-card .health-iq-progress-section {
    margin-top: 11px;
}

.course-scholar-card--compact {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
}

.course-scholar-icon {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(216, 178, 94, 0.3);
    border-radius: 50%;
    background: rgba(216, 178, 94, 0.1);
    font-size: 1rem;
}

.course-scholar-copy,
.course-scholar-progress {
    display: flex;
    flex-direction: column;
}

.course-scholar-copy small,
.course-scholar-progress small,
.course-scholar-next {
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.58rem;
}

.course-scholar-copy strong,
.course-scholar-progress strong {
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-size: 0.82rem;
}

.course-scholar-progress {
    align-items: flex-end;
}

.course-scholar-next {
    grid-column: 2 / -1;
    margin-top: -5px;
}

#course-learning-home:not(.course-detail-page) .course-library-intro {
    margin: 0 20px 18px;
}

#course-learning-home:not(.course-detail-page) .course-library-title {
    max-width: 310px;
    margin-top: 6px;
    font-size: clamp(1.65rem, 7vw, 2rem);
    line-height: 1.03;
}

#course-learning-home:not(.course-detail-page) .course-library-intro p {
    max-width: 340px;
    margin-top: 10px;
    font-size: 0.82rem;
}

#course-learning-home:not(.course-detail-page) .course-library-intro--specialist {
    max-width: 640px;
    margin: 26px 20px 14px;
    padding-top: 17px;
    border-top: 1px solid var(--course-border);
}

#course-learning-home:not(.course-detail-page) .course-library-intro--specialist .course-library-title {
    max-width: none;
    margin-top: 4px;
    font-size: clamp(1.42rem, 6vw, 1.68rem);
    line-height: 1.08;
}

#course-learning-home:not(.course-detail-page) .course-library-intro--specialist p {
    max-width: none;
    margin-top: 6px;
    font-size: 0.78rem;
    line-height: 1.42;
}

.course-path-cards {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 15px;
}

.course-path-card,
.course-path-card.is-locked {
    overflow: hidden;
    border: 1px solid var(--course-border);
    border-radius: 22px;
    background: var(--course-surface);
    box-shadow: 0 12px 30px rgba(15, 18, 15, 0.1);
    opacity: 1;
}

.course-path-card-open {
    width: 100%;
    display: grid;
    grid-template-columns: 106px minmax(0, 1fr);
    min-height: 212px;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: transparent;
    color: var(--course-copy);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.course-card-art {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    display: grid;
    place-items: center;
    background: linear-gradient(155deg, #171717 0%, #050505 100%);
    color: #b8892b;
}

html[data-pbb-theme="light"] .course-card-art {
    background: linear-gradient(155deg, #fffdf7 0%, #f3e7c9 100%);
}

.course-card-logo,
.course-welcome-logo {
    width: 70px;
    height: 70px;
    background: var(--course-gold-strong);
    -webkit-mask: url('/balance_logo_transparent.svg') center / contain no-repeat;
    mask: url('/balance_logo_transparent.svg') center / contain no-repeat;
    filter: drop-shadow(0 5px 10px rgba(129, 89, 13, 0.18));
}

.course-card-brand {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 18px;
    font-size: 0.5rem;
    font-weight: 900;
    color: var(--course-gold-strong) !important;
    -webkit-text-fill-color: var(--course-gold-strong) !important;
    letter-spacing: 0.22em;
}

.course-card-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: 17px 16px 14px;
}

.course-card-heading-row,
.course-card-footer,
.course-card-progress-copy {
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

.course-card-heading-row {
    align-items: center;
}

.course-path-card .course-path-state {
    align-self: auto;
    padding: 4px 7px;
    font-size: 0.56rem;
}

.course-path-card .course-path-title {
    margin-top: 8px;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.15rem;
    line-height: 1.08;
}

.course-path-card .course-path-subtitle {
    margin-top: 5px;
    font-size: 0.68rem;
    white-space: normal;
}

.course-card-description {
    display: -webkit-box;
    margin-top: 9px;
    overflow: hidden;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.68rem;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.course-card-footer {
    align-items: flex-end;
    margin-top: auto;
    padding-top: 12px;
}

.course-card-meta {
    max-width: 54%;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.57rem;
    font-weight: 700;
    line-height: 1.3;
}

.course-card-open-label {
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.62rem;
    font-weight: 900;
    white-space: nowrap;
}

.course-path-card .course-path-progress {
    display: block;
    width: 100%;
    height: 4px;
    margin: 10px 0 0;
    background: color-mix(in srgb, var(--course-muted) 16%, transparent);
}

.course-card-progress-copy {
    margin-top: 5px;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.54rem;
    font-weight: 750;
}

.course-path-card.is-locked .course-card-logo {
    opacity: 0.55;
}

.course-detail-page {
    padding-top: 0;
}

.course-detail-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 17px;
}

.course-detail-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 0;
    border: 0;
    background: transparent;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 850;
    cursor: pointer;
}

.course-detail-back span {
    font-size: 1rem;
}

.course-detail-nav-number {
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.course-week-page-nav-title {
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: .9rem;
    font-weight: 800;
}

.course-detail-hero {
    position: relative;
    min-height: 360px;
    margin: 0 15px;
    padding: 27px 23px 23px;
    overflow: hidden;
    border-radius: 26px;
    background: var(--course-hero);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.2);
    color: var(--course-hero-copy);
}

.course-detail-orbit {
    position: absolute;
    width: 250px;
    height: 250px;
    right: -112px;
    top: -82px;
    border: 1.5px solid color-mix(in srgb, var(--course-accent) 88%, transparent);
    border-radius: 50%;
    box-shadow: 0 0 0 22px rgba(255, 255, 255, 0.022), 0 0 0 52px rgba(255, 255, 255, 0.016);
}

.course-detail-hero-copy {
    position: relative;
    z-index: 1;
}

.course-detail-kicker {
    color: var(--course-gold-strong) !important;
    -webkit-text-fill-color: var(--course-gold-strong) !important;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.course-detail-hero h2 {
    max-width: 255px;
    margin: 13px 0 0;
    color: var(--course-hero-copy) !important;
    -webkit-text-fill-color: var(--course-hero-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 2.15rem;
    line-height: 0.98;
}

.course-detail-subtitle {
    margin: 11px 0 0;
    color: var(--course-gold-strong) !important;
    -webkit-text-fill-color: var(--course-gold-strong) !important;
    font-size: 0.75rem;
    font-weight: 800;
}

.course-detail-description {
    max-width: 285px;
    margin: 13px 0 0;
    color: var(--course-hero-muted) !important;
    -webkit-text-fill-color: var(--course-hero-muted) !important;
    font-size: 0.75rem;
    line-height: 1.5;
}

.course-detail-facts {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 22px;
    color: var(--course-hero-muted) !important;
    -webkit-text-fill-color: var(--course-hero-muted) !important;
    font-size: 0.61rem;
    font-weight: 750;
}

.course-detail-progress {
    height: 5px;
    margin-top: 8px;
    overflow: hidden;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.15);
}

.course-detail-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #f5d98a;
}

.course-detail-primary {
    width: 100%;
    min-height: 45px;
    margin-top: 18px;
    border: 0;
    border-radius: 13px;
    background: #f5d98a;
    color: #171717;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 900;
    cursor: pointer;
}

.course-detail-number {
    position: absolute;
    right: 17px;
    bottom: -12px;
    color: rgba(255, 255, 255, 0.045) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.045) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 8rem;
    line-height: 1;
}

.course-detail-lock {
    margin: 15px 15px 0;
}

.course-week-briefing {
    margin: 18px 15px 0;
    padding: 20px;
    border: 1px solid var(--course-border);
    border-radius: 24px;
    background: var(--course-elevated);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
}

.course-week-briefing-head,
.course-week-stats,
.course-week-checklist-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.course-week-briefing-head span,
.course-week-next span,
.course-week-checklist-heading span {
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.course-week-briefing-head h3 {
    margin: 4px 0 0;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.25rem;
}

.course-week-briefing-head > strong {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(184,137,43,.32);
    border-radius: 50%;
    color: var(--course-gold-strong) !important;
    -webkit-text-fill-color: var(--course-gold-strong) !important;
    font-size: .75rem;
}

.course-week-briefing-copy {
    margin: 12px 0 0;
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: .72rem;
    line-height: 1.5;
}

.course-week-stats {
    margin-top: 16px;
}

.course-week-stats > span {
    display: flex;
    min-width: 0;
    flex: 1;
    align-items: baseline;
    gap: 6px;
    padding: 11px;
    border-radius: 13px;
    background: rgba(184,137,43,.08);
}

.course-week-stats strong { font-size: .85rem; }
.course-week-stats small { color: var(--course-muted); font-size: .57rem; }

.course-week-next {
    display: grid;
    gap: 5px;
    margin-top: 14px;
    padding: 13px 14px;
    border-left: 3px solid var(--course-accent);
    border-radius: 0 12px 12px 0;
    background: var(--course-surface);
}

.course-week-next strong { font-size: .72rem; }
.course-week-checklist { display: grid; gap: 8px; margin-top: 18px; }
.course-week-checklist-heading { margin-bottom: 2px; }
.course-week-checklist-heading small { color: var(--course-muted); font-size: .58rem; font-weight: 750; }

.course-week-mini-row {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) auto;
    align-items: center;
    gap: 9px;
    width: 100%;
    padding: 10px;
    border: 1px solid var(--course-border);
    border-radius: 13px;
    background: var(--course-surface);
    color: var(--course-copy);
    font: inherit;
    text-align: left;
}

.course-week-mini-row > span:first-child {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 50%;
    background: rgba(184,137,43,.1);
    color: var(--course-gold-strong);
    font-size: .65rem;
    font-weight: 900;
}

.course-week-mini-row > span:nth-child(2) { display: grid; gap: 2px; }
.course-week-mini-row small { color: var(--course-accent); font-size: .5rem; font-weight: 900; text-transform: uppercase; }
.course-week-mini-row strong { overflow: hidden; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.course-week-mini-row em { color: var(--course-accent); font-size: .57rem; font-style: normal; font-weight: 900; }

.course-week-actions-empty,
.course-week-note {
    display: flex;
    gap: 10px;
    padding: 12px;
    border-radius: 13px;
    background: var(--course-subtle);
}

.course-week-actions-empty { flex-direction: column; color: var(--course-muted); font-size: .65rem; }
.course-week-note { align-items: flex-start; margin-top: 15px; }
.course-week-note > span { display: grid; width: 22px; height: 22px; place-items: center; flex: 0 0 auto; border-radius: 50%; background: #171717; color: #f5d98a; font-size: .62rem; font-weight: 900; }
.course-week-note p { margin: 0; color: var(--course-muted) !important; -webkit-text-fill-color: var(--course-muted) !important; font-size: .63rem; line-height: 1.45; }
.course-week-note strong { display: block; margin-bottom: 2px; color: var(--course-copy) !important; -webkit-text-fill-color: var(--course-copy) !important; }

.course-week-page {
    min-height: 100vh;
    padding-bottom: 120px;
}

.course-week-page-header {
    width: calc(100% - 30px);
    max-width: 650px;
    margin: 0 auto;
    padding: 24px 22px 20px;
    border: 1px solid var(--course-border);
    border-radius: 24px;
    background: var(--course-hero);
    box-shadow: 0 14px 34px rgba(0,0,0,.13);
    color: var(--course-hero-copy);
}

.course-week-page-kicker,
.course-week-page-next span,
.course-week-page-section-head > div > span {
    color: var(--course-gold-strong) !important;
    -webkit-text-fill-color: var(--course-gold-strong) !important;
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.course-week-page-header h2 {
    margin: 7px 0 0;
    color: var(--course-hero-copy) !important;
    -webkit-text-fill-color: var(--course-hero-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.75rem;
    line-height: 1.05;
}

.course-week-page-header > p {
    max-width: 520px;
    margin: 10px 0 0;
    color: var(--course-hero-muted) !important;
    -webkit-text-fill-color: var(--course-hero-muted) !important;
    font-size: .7rem;
    line-height: 1.45;
}

.course-week-page-progress-copy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 18px;
    color: var(--course-hero-muted);
    font-size: .6rem;
    font-weight: 750;
}

.course-week-page-progress-copy strong { color: var(--course-gold-strong); }

.course-week-page-next {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 15px;
    padding: 10px 12px;
    border: 1px solid var(--course-border);
    border-radius: 12px;
    background: var(--course-subtle);
}

.course-week-page-next strong {
    overflow: hidden;
    color: var(--course-hero-copy);
    font-size: .66rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.course-week-page-content {
    display: grid;
    gap: 17px;
    max-width: 680px;
    margin: 20px auto 0;
    padding: 0 15px;
}

.course-week-page-section {
    padding: 16px;
    border: 1px solid var(--course-border);
    border-radius: 19px;
    background: var(--course-elevated);
    box-shadow: 0 7px 20px rgba(0,0,0,.06);
}

.course-week-page-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
}

.course-week-page-section-head h3 {
    margin: 3px 0 0;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.05rem;
}

.course-week-page-section-head > small {
    color: var(--course-muted);
    font-size: .61rem;
    font-weight: 800;
}

.course-week-compact-list { display: grid; gap: 7px; }

.course-week-lesson-row,
.course-week-action-row {
    width: 100%;
    min-height: 48px;
    border: 1px solid var(--course-border);
    border-radius: 12px;
    background: var(--course-surface);
    color: var(--course-copy);
}

.course-week-lesson-row {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 8px 10px;
    font: inherit;
    text-align: left;
}

.course-week-lesson-row > span,
.course-week-action-icon {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--course-gold-strong) 12%, transparent);
    color: var(--course-gold-strong);
    font-size: .62rem;
    font-weight: 900;
}

.course-week-lesson-row > strong {
    overflow: hidden;
    font-size: .68rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.course-week-lesson-row > em {
    color: var(--course-gold-strong);
    font-size: .58rem;
    font-style: normal;
    font-weight: 900;
}

.course-week-action-row {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 8px 9px;
}

.course-week-action-copy {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.course-week-action-copy strong {
    overflow: hidden;
    color: var(--course-copy);
    font-size: .68rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.course-week-action-copy small {
    overflow: hidden;
    color: var(--course-muted);
    font-size: .57rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.course-week-action-copy small b { color: var(--course-gold-strong); }

.course-week-action-timing,
.foundation-action-timing {
    color: var(--course-gold-strong);
    font-size: .54rem;
    font-weight: 850;
    line-height: 1.25;
}

.course-week-action-open {
    min-width: 58px;
    min-height: 30px;
    padding: 5px 9px;
    border: 1px solid color-mix(in srgb, var(--course-gold-strong) 38%, transparent);
    border-radius: 9px;
    background: color-mix(in srgb, var(--course-gold-strong) 10%, transparent);
    color: var(--course-gold-strong);
    font: inherit;
    font-size: .58rem;
    font-weight: 900;
}

.course-week-action-open:disabled { opacity: .48; }
.course-week-action-row.is-complete,
.course-week-lesson-row.is-complete { border-color: color-mix(in srgb, var(--course-gold-strong) 44%, transparent); }

.course-week-view-course {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--course-border);
    border-radius: 12px;
    background: transparent;
    color: var(--course-copy);
    font: inherit;
    font-size: .67rem;
    font-weight: 850;
}

.course-detail-curriculum > .course-week-view-course {
    margin-top: 16px;
}

.course-welcome {
    position: fixed;
    z-index: 10020;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 42px 26px;
    overflow: hidden;
    background: var(--course-hero);
    color: var(--course-hero-copy);
    text-align: center;
    opacity: 0;
    transform: translateY(14px);
    transition: opacity .28s ease, transform .28s ease;
}

.course-welcome.is-visible { opacity: 1; transform: translateY(0); }
.course-welcome-close { position: absolute; z-index: 2; top: calc(12px + env(safe-area-inset-top, 0px)); right: calc(18px + env(safe-area-inset-right, 0px)); width: 44px; height: 44px; border: 1px solid var(--course-border); border-radius: 50%; background: var(--course-subtle); color: var(--course-hero-copy); font-size: .75rem; }
/* The tour music control shares this safe top row with the welcome close button. */
body:has(.course-welcome) #meta-preview-music-control {
    left: calc(18px + env(safe-area-inset-left, 0px));
    right: auto;
}
.course-welcome-glow { position: absolute; width: 240px; height: 240px; top: 70px; border: 1.5px solid color-mix(in srgb, var(--course-gold-strong) 72%, transparent); border-radius: 50%; box-shadow: 0 0 0 28px color-mix(in srgb, var(--course-gold-strong) 9%, transparent), 0 0 0 64px color-mix(in srgb, var(--course-gold-strong) 5%, transparent); animation: courseWelcomePulse 2.8s ease-in-out infinite; }
.course-welcome-logo { position: relative; z-index: 1; width: 90px; height: 90px; filter: drop-shadow(0 8px 22px rgba(212,173,84,.22)); animation: courseWelcomeLogo 700ms cubic-bezier(.2,.8,.2,1) both; }
.course-welcome-kicker { position: relative; z-index: 1; margin-top: 28px; color: var(--course-gold-strong) !important; -webkit-text-fill-color: var(--course-gold-strong) !important; font-size: .6rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.course-welcome h2 { position: relative; z-index: 1; max-width: 320px; margin: 10px 0 0; color: var(--course-hero-copy) !important; -webkit-text-fill-color: var(--course-hero-copy) !important; font-family: 'Playfair Display',Georgia,serif; font-size: 2.05rem; line-height: 1; }
.course-welcome > p { position: relative; z-index: 1; max-width: 330px; margin: 14px 0 0; color: var(--course-hero-muted) !important; -webkit-text-fill-color: var(--course-hero-muted) !important; font-size: .73rem; line-height: 1.5; }
.course-welcome-steps { position: relative; z-index: 1; display: grid; gap: 8px; width: min(100%,330px); margin-top: 22px; text-align: left; }
.course-welcome-steps span { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--course-border); border-radius: 12px; background: var(--course-subtle); color: var(--course-hero-copy); font-size: .68rem; }
.course-welcome-steps b { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 50%; background: color-mix(in srgb, var(--course-gold-strong) 14%, transparent); color: var(--course-gold-strong); font-size: .58rem; font-weight: 900; }
.course-welcome-start { position: relative; z-index: 1; width: min(100%,330px); min-height: 48px; margin-top: 22px; border: 0; border-radius: 14px; background: #f5d98a; color: #171717; font: inherit; font-size: .76rem; font-weight: 900; }

@keyframes courseWelcomePulse { 50% { transform: scale(1.06); opacity: .72; } }
@keyframes courseWelcomeLogo { from { opacity: 0; transform: scale(.72) rotate(-8deg); } to { opacity: 1; transform: scale(1) rotate(0); } }

.course-detail-curriculum {
    padding: 25px 15px 120px;
}

.course-detail-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;
    margin: 0 4px 15px;
}

.course-detail-section-heading > div > span {
    color: var(--course-accent) !important;
    -webkit-text-fill-color: var(--course-accent) !important;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.course-detail-section-heading h3 {
    margin: 4px 0 0;
    color: var(--course-copy) !important;
    -webkit-text-fill-color: var(--course-copy) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.35rem;
}

.course-detail-section-heading > span {
    color: var(--course-muted) !important;
    -webkit-text-fill-color: var(--course-muted) !important;
    font-size: 0.64rem;
    font-weight: 750;
}

.course-detail-page .course-topic-list {
    gap: 10px;
}

.course-detail-page .course-topic-row {
    min-height: 66px;
    padding: 12px;
    border-color: var(--course-border);
    background: var(--course-surface);
    box-shadow: 0 5px 16px rgba(15, 18, 15, 0.05);
}

@media (max-width: 360px) {
    .course-path-card-open {
        grid-template-columns: 88px minmax(0, 1fr);
    }

    .course-card-brand {
        left: 50%;
    }
}

/* Personalized meal-plan shopping list */
html[data-pbb-theme="light"] .ai-plan-shopping {
    border-color: rgba(23, 22, 19, 0.1) !important;
    background: #ffffff !important;
    color: #151515 !important;
    -webkit-text-fill-color: #151515 !important;
}

html[data-pbb-theme="light"] .ai-plan-shopping__copy span,
html[data-pbb-theme="light"] .ai-plan-shopping__chevron,
html[data-pbb-theme="light"] .ai-plan-shopping__helper,
html[data-pbb-theme="light"] .ai-plan-shopping__item small,
html[data-pbb-theme="light"] .ai-plan-shopping__status {
    color: #5f5b54 !important;
    -webkit-text-fill-color: #5f5b54 !important;
}

html[data-pbb-theme="light"] .ai-plan-shopping__download {
    background: #151515 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping {
    border-color: rgba(245, 217, 138, 0.17) !important;
    background: #21182c !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    box-shadow: 0 12px 28px rgba(8, 4, 12, 0.24) !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping__panel {
    border-top-color: rgba(245, 217, 138, 0.13) !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping__icon {
    background: rgba(245, 217, 138, 0.14) !important;
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping__copy span,
html[data-pbb-theme="dark"] .ai-plan-shopping__chevron,
html[data-pbb-theme="dark"] .ai-plan-shopping__helper,
html[data-pbb-theme="dark"] .ai-plan-shopping__item small,
html[data-pbb-theme="dark"] .ai-plan-shopping__status {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping__item:hover {
    background: rgba(245, 217, 138, 0.08) !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping__item.is-checked strong {
    color: #aaa1b0 !important;
    -webkit-text-fill-color: #aaa1b0 !important;
}

html[data-pbb-theme="dark"] .ai-plan-shopping__download {
    background: linear-gradient(135deg, #d8b25e, #f5d98a) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* ===========================================================================
   Dark-theme contrast sweep
   Keep legacy light surfaces from inheriting the dark theme's cream text.
   ========================================================================== */

html:not([data-pbb-theme="light"]) {
    color-scheme: dark;
}

html[data-pbb-theme="light"] {
    color-scheme: light;
}

/* Workout notes and set-entry states */
html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-section {
    border-bottom-color: rgba(245, 217, 138, 0.12) !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .coach-note-bubble {
    background: linear-gradient(135deg, #241b31 0%, #17131d 100%) !important;
    border-color: rgba(183, 148, 246, 0.34) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .coach-note-badge {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .coach-note-badge svg {
    color: #120c18 !important;
    fill: currentColor !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .coach-note-bubble span[style*="color:#7c3aed"],
html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-logger-card .coach-note-text {
    color: #d8cfe0 !important;
    -webkit-text-fill-color: #d8cfe0 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-toggle span {
    color: #bdb5c4 !important;
    -webkit-text-fill-color: #bdb5c4 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-toggle svg {
    fill: #bdb5c4 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-toggle.has-note span {
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-toggle.has-note svg {
    fill: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-input {
    background: #121212 !important;
    border-color: rgba(245, 217, 138, 0.24) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    caret-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-input::placeholder,
html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) :is(.input-time, .input-reps, .input-kg, .drop-reps, .drop-kg, .set-input)::placeholder {
    color: #aaa2b0 !important;
    -webkit-text-fill-color: #aaa2b0 !important;
    opacity: 1 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-active-workout, #view-active-workout-stub) .exercise-note-input:focus {
    background: #181818 !important;
    border-color: rgba(245, 217, 138, 0.64) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(245, 217, 138, 0.12) !important;
}

/* Legacy meal-plan cards */
html:not([data-pbb-theme="light"]) #view-meals {
    --pbb-legacy-surface: #121212;
    --pbb-legacy-surface-raised: #191919;
    --pbb-legacy-surface-soft: #211b26;
    --pbb-legacy-copy: #fffaf2;
    --pbb-legacy-muted: #c9c1ce;
    --pbb-legacy-accent: #f5d98a;
    --pbb-legacy-border: rgba(245, 217, 138, 0.16);
}

html:not([data-pbb-theme="light"]) #view-meals :is(.day-view, #shopping, #supplements) .card {
    background: var(--pbb-legacy-surface) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28) !important;
}

html:not([data-pbb-theme="light"]) #view-meals :is(.day-view, #shopping, #supplements) .card-header {
    background: var(--pbb-legacy-surface-raised) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #view-meals :is(.day-view, #shopping, #supplements) .card-body {
    background: var(--pbb-legacy-surface) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #view-meals :is(.day-view, #shopping, #supplements) :is(.meal-title, h1, h2, h3, h4, strong),
html:not([data-pbb-theme="light"]) #shopping .shopping-category h4 {
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #view-meals :is(.day-view, #shopping, #supplements) :is(.meta, p, li),
html:not([data-pbb-theme="light"]) #shopping .check-list li {
    color: var(--pbb-legacy-muted) !important;
    -webkit-text-fill-color: var(--pbb-legacy-muted) !important;
}

html:not([data-pbb-theme="light"]) #view-meals :is(.day-view, #shopping, #supplements) :is(.meal-title, .expand-icon),
html:not([data-pbb-theme="light"]) #shopping .shopping-category h4 {
    color: var(--pbb-legacy-accent) !important;
    -webkit-text-fill-color: var(--pbb-legacy-accent) !important;
}

html:not([data-pbb-theme="light"]) #shopping .check-list li::before {
    background: #171717 !important;
    border-color: #736b79 !important;
}

html:not([data-pbb-theme="light"]) #shopping .check-list li.checked::before {
    background-color: #d8b25e !important;
    border-color: #d8b25e !important;
}

/* Smoothie recipe cards were authored as inline pastel panels. */
html:not([data-pbb-theme="light"]) #smoothies .hero-card,
html:not([data-pbb-theme="light"]) #smoothies > div[style*="display: grid"] > div {
    background: linear-gradient(145deg, #191919, #111111) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #smoothies :is(h1, h4) {
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #smoothies :is(.hero-card p, ul, li) {
    color: var(--pbb-legacy-muted) !important;
    -webkit-text-fill-color: var(--pbb-legacy-muted) !important;
}

html:not([data-pbb-theme="light"]) #smoothies > div[style*="display: grid"] > div > div:last-child > div {
    background: var(--pbb-legacy-surface-soft) !important;
    color: var(--pbb-legacy-accent) !important;
    -webkit-text-fill-color: var(--pbb-legacy-accent) !important;
}

/* Supplement disclaimer, category chips, and copy */
html:not([data-pbb-theme="light"]) #supplements > div[style*="background: #fff3e0"] {
    background: #251d12 !important;
    border-color: rgba(245, 217, 138, 0.28) !important;
}

html:not([data-pbb-theme="light"]) #supplements > div[style*="background: #fff3e0"] h4,
html:not([data-pbb-theme="light"]) #supplements .card-body > span {
    background: #2a232d !important;
    color: var(--pbb-legacy-accent) !important;
    -webkit-text-fill-color: var(--pbb-legacy-accent) !important;
}

html:not([data-pbb-theme="light"]) #supplements > div[style*="background: #fff3e0"] p,
html:not([data-pbb-theme="light"]) #supplements .card-body > p {
    color: var(--pbb-legacy-muted) !important;
    -webkit-text-fill-color: var(--pbb-legacy-muted) !important;
}

html:not([data-pbb-theme="light"]) #supplements > h3 {
    color: var(--pbb-legacy-accent) !important;
    -webkit-text-fill-color: var(--pbb-legacy-accent) !important;
    border-bottom-color: var(--pbb-legacy-border) !important;
}

/* Quick-swaps table */
html:not([data-pbb-theme="light"]) #swaps .card,
html:not([data-pbb-theme="light"]) #swaps .card-body,
html:not([data-pbb-theme="light"]) #swaps div[style*="linear-gradient(to bottom"] {
    background: var(--pbb-legacy-surface) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #swaps th {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    border-color: rgba(18, 12, 24, 0.18) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #swaps :is(td, td span) {
    background: var(--pbb-legacy-surface) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #swaps tr[style*="background: #fafafa"] td,
html:not([data-pbb-theme="light"]) #swaps tbody tr:nth-child(even) td {
    background: var(--pbb-legacy-surface-raised) !important;
}

html:not([data-pbb-theme="light"]) #swaps td:first-child {
    color: var(--pbb-legacy-accent) !important;
    -webkit-text-fill-color: var(--pbb-legacy-accent) !important;
}

/* Sleep protocol cards and timeline */
html:not([data-pbb-theme="light"]) #sleep {
    --pbb-sleep-copy: #fffaf2;
    --pbb-sleep-muted: #c9c1ce;
    --pbb-sleep-accent: #f5d98a;
    color: var(--pbb-sleep-copy) !important;
    -webkit-text-fill-color: var(--pbb-sleep-copy) !important;
}

html:not([data-pbb-theme="light"]) #sleep :is(h1, h2, h3, strong, .timeline-title, .check-item) {
    color: var(--pbb-sleep-copy) !important;
    -webkit-text-fill-color: var(--pbb-sleep-copy) !important;
}

html:not([data-pbb-theme="light"]) #sleep :is(p, li, ol, .timeline-content, .timeline-time, .check-item span) {
    color: var(--pbb-sleep-muted) !important;
    -webkit-text-fill-color: var(--pbb-sleep-muted) !important;
}

html:not([data-pbb-theme="light"]) #sleep .sleep-hero {
    background: linear-gradient(145deg, #17131f 0%, #111827 58%, #0b0b0b 100%) !important;
    border: 1px solid rgba(245, 217, 138, 0.17) !important;
}

html:not([data-pbb-theme="light"]) #sleep .sleep-hero :is(h1, p, strong, .glass-effect) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #sleep :is(.recipe-card, .rescue-card, .check-item) {
    background: linear-gradient(145deg, #191919, #111111) !important;
    border-color: rgba(245, 217, 138, 0.17) !important;
    color: var(--pbb-sleep-copy) !important;
    -webkit-text-fill-color: var(--pbb-sleep-copy) !important;
}

html:not([data-pbb-theme="light"]) #sleep .rescue-card {
    border-left-color: #ef6a6a !important;
}

html:not([data-pbb-theme="light"]) #sleep .rescue-card h4 {
    color: #ff9a9a !important;
    -webkit-text-fill-color: #ff9a9a !important;
}

html:not([data-pbb-theme="light"]) #sleep .recipe-card h3,
html:not([data-pbb-theme="light"]) #sleep .timeline-time {
    color: var(--pbb-sleep-accent) !important;
    -webkit-text-fill-color: var(--pbb-sleep-accent) !important;
}

html:not([data-pbb-theme="light"]) #sleep .section-number {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #sleep .timeline-content::before {
    background: #171717 !important;
    border-color: #d8b25e !important;
}

html:not([data-pbb-theme="light"]) #sleep a > button {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* FitCoin shop: dark shell, readable packs, and accessible gold actions */
html:not([data-pbb-theme="light"]) #coin-shop-modal > div {
    background: #101010 !important;
    border: 1px solid rgba(245, 217, 138, 0.2) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal > div > div:first-child :is(h3, div, button) {
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal .coin-pack-option {
    background: linear-gradient(145deg, #1a1a1a, #111111) !important;
    border-color: rgba(245, 217, 138, 0.24) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal .coin-pack-option > div:not([style*="position: absolute"]) > div {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal .coin-pack-option > div:not([style*="position: absolute"]) > div:first-child {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal .coin-pack-option > div:last-child {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal .coin-pack-option > div[style*="position: absolute"] {
    background: #991b1b !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal div[style*="background: #f8fafc"] {
    background: #191919 !important;
    border: 1px solid rgba(245, 217, 138, 0.14) !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal div[style*="background: #f8fafc"] :is(div, span),
html:not([data-pbb-theme="light"]) #coin-shop-modal #restore-purchases-row button {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

/* Remaining dark-mode controls found by the computed contrast audit. */
html:not([data-pbb-theme="light"]) #view-active-workout #total-volume-target-label {
    color: #b7b1c0 !important;
    -webkit-text-fill-color: #b7b1c0 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout #last-volume-popup > div {
    background: #171717 !important;
    border: 1px solid rgba(245, 217, 138, 0.18) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout #last-volume-popup :is(h3, p) {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) #view-active-workout #last-volume-popup button {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* Meals header and generated-plan controls */
html:not([data-pbb-theme="light"]) #view-meals .coin-header-widget :is(.coin-emoji, .coin-amount, .coin-buy-btn) {
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #view-meals .coin-header-widget .coin-buy-btn {
    background: rgba(18, 12, 24, 0.12) !important;
    border-color: rgba(18, 12, 24, 0.3) !important;
}

html:not([data-pbb-theme="light"]) #meal-plan-store button[onclick*="requestAiMealPlan"] {
    color: #07150f !important;
    -webkit-text-fill-color: #07150f !important;
}

html:not([data-pbb-theme="light"]) #meal-plan-store button[onclick*="requestAiMealPlan"] svg {
    fill: #07150f !important;
}

html:not([data-pbb-theme="light"]) #meal-plan-store .sub-btn {
    background: transparent !important;
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
}

html:not([data-pbb-theme="light"]) #meal-plan-store .sub-btn.active {
    background: rgba(245, 217, 138, 0.14) !important;
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
    border-color: rgba(245, 217, 138, 0.4) !important;
}

/* Week overview and reflection cards */
html:not([data-pbb-theme="light"]) #view-meals .day-view .hero-card {
    background: linear-gradient(145deg, #21182c, #111111) !important;
    border-color: var(--pbb-legacy-border) !important;
    color: var(--pbb-legacy-copy) !important;
    -webkit-text-fill-color: var(--pbb-legacy-copy) !important;
}

html:not([data-pbb-theme="light"]) #view-meals .day-view .hero-card :is(h1, div) {
    color: var(--pbb-legacy-accent) !important;
    -webkit-text-fill-color: var(--pbb-legacy-accent) !important;
}

html:not([data-pbb-theme="light"]) #view-meals .day-view .hero-card p {
    color: var(--pbb-legacy-muted) !important;
    -webkit-text-fill-color: var(--pbb-legacy-muted) !important;
}

html:not([data-pbb-theme="light"]) #view-meals .reflection-card textarea {
    background: #171717 !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    caret-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) #view-meals .reflection-card textarea::placeholder {
    color: #aaa2b0 !important;
    -webkit-text-fill-color: #aaa2b0 !important;
    opacity: 1 !important;
}

html:not([data-pbb-theme="light"]) #view-meals .reflection-card button[onclick*="saveDayReflection"] {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* Movement Studio tracker and library */

/* Previous workouts: replace the old program-builder collection with one calm,
   readable record of completed sessions. */
.balance-workout-history-view {
    background: #f8f5ee !important;
    color: #171717;
    -webkit-text-fill-color: #171717;
}

/* Unified Movement tools
   Mirrors the guided Log Activity rhythm across history, library, stopwatch,
   and Coach's Workouts without carrying forward the legacy green UI. */
.movement-tool-view {
    --movement-accent: #f5d98a;
    --movement-accent-strong: #d8b25e;
    --movement-accent-soft: rgba(245, 217, 138, 0.12);
    --movement-ink-on-gold: #17130d;
    background: radial-gradient(circle at 86% 2%, var(--movement-accent-soft), transparent 28%), var(--bg) !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
}

html[data-pbb-theme="light"] .movement-tool-view {
    --movement-accent: #8a6112;
    --movement-accent-strong: #d6ad55;
    --movement-accent-soft: rgba(184, 137, 43, 0.11);
}

.movement-tool-shell {
    box-sizing: border-box;
    width: 100%;
    max-width: 500px !important;
    min-height: 100%;
    margin: 0 auto !important;
    padding: 0 20px calc(36px + env(safe-area-inset-bottom, 0px)) !important;
}

.movement-tool-header {
    position: sticky;
    top: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 72px;
    margin-bottom: 20px;
    padding-top: env(safe-area-inset-top, 0px);
    border-bottom: 1px solid var(--border);
    background: color-mix(in srgb, var(--bg) 94%, transparent);
    backdrop-filter: blur(14px);
}

.movement-tool-header h2 {
    margin: 0 !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.55rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.025em;
    line-height: 1.1;
    text-align: center;
}

.movement-tool-kicker,
.movement-tool-label {
    margin: 0 0 7px;
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.movement-tool-question {
    margin: 0 0 8px;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.9rem;
    line-height: 1.08;
}

.movement-tool-helper {
    margin: 0 0 20px !important;
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    font-size: 0.88rem !important;
    line-height: 1.48 !important;
}

.movement-tool-card {
    padding: 17px;
    border: 1px solid var(--border);
    border-radius: 19px;
    background: var(--card-bg);
}

/* Previous Workouts */
.balance-workout-history-view,
.balance-workout-history-view .balance-workout-history-content {
    background-color: transparent !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
}

.balance-workout-history-view .balance-workout-history-intro {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.balance-workout-history-item,
.balance-workout-history-empty {
    border-color: var(--border) !important;
    background: var(--card-bg) !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    box-shadow: none !important;
}

.balance-workout-history-date {
    border-color: color-mix(in srgb, var(--movement-accent) 45%, transparent) !important;
    background: var(--movement-accent-soft) !important;
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
}

.balance-workout-history-name,
.balance-workout-history-empty strong {
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
}

.balance-workout-history-meta,
.balance-workout-history-exercises,
.balance-workout-history-empty span {
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
}

.balance-workout-history-chevron {
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
}

/* Workout Library */
#view-workout-library #library-categories-grid,
#view-workout-subcategories #subcategories-grid,
#view-workout-list #workouts-list {
    gap: 10px !important;
}

.movement-tool-view .library-category-card,
.movement-tool-view .workout-card {
    min-height: 66px;
    box-sizing: border-box;
    padding: 14px 15px !important;
    border: 1px solid var(--border) !important;
    border-radius: 17px !important;
    background: var(--card-bg) !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    box-shadow: none !important;
    transform: none !important;
}

.movement-tool-view .library-category-card:active,
.movement-tool-view .workout-card:active {
    border-color: var(--movement-accent) !important;
    background: var(--movement-accent-soft) !important;
    transform: scale(0.99) !important;
}

.movement-tool-view .library-category-icon {
    width: 44px;
    height: 44px;
    border: 1px solid color-mix(in srgb, var(--movement-accent) 32%, transparent);
    border-radius: 50%;
    background: var(--movement-accent-soft) !important;
    font-size: 1.55rem;
}

.movement-tool-view .library-category-card svg {
    fill: var(--movement-accent) !important;
}

.movement-tool-view .library-category-card div[style*="color: var(--primary)"] {
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
}

.movement-tool-view .workout-difficulty-badge {
    border: 1px solid color-mix(in srgb, var(--movement-accent) 34%, transparent);
    background: var(--movement-accent-soft) !important;
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
}

/* Stopwatch */
.movement-stopwatch-view .movement-tool-shell {
    min-height: 100dvh;
    padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px)) !important;
}

.movement-stopwatch-view .movement-tool-header {
    min-height: calc(76px + env(safe-area-inset-top, 0px));
    margin-bottom: 0;
    padding-top: max(14px, env(safe-area-inset-top, 0px));
    box-sizing: border-box;
}

#interval-timer-setup,
#interval-timer-active {
    width: 100%;
    box-sizing: border-box;
}

#interval-timer-setup {
    display: flex;
    min-height: calc(100dvh - 104px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    flex-direction: column;
    justify-content: center;
    padding: 20px 0;
}

.movement-stopwatch-view[data-timer-screen="running"] .movement-tool-header,
.movement-stopwatch-view[data-timer-screen="done"] .movement-tool-header {
    display: none;
}

.movement-stopwatch-view[data-timer-screen="running"] #interval-timer-active,
.movement-stopwatch-view[data-timer-screen="done"] #interval-timer-done {
    padding-top: calc(18px + env(safe-area-inset-top, 0px));
}

.interval-setup-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    width: 100%;
}

.interval-setup-card {
    display: flex;
    min-width: 0;
    min-height: 174px;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 13px 7px 10px;
    border: 1px solid color-mix(in srgb, var(--movement-accent) 35%, var(--border));
    border-radius: 18px;
    background: linear-gradient(165deg, var(--card-bg), var(--movement-accent-soft));
    box-sizing: border-box;
    box-shadow: 0 8px 22px rgba(62, 47, 20, 0.06);
    text-align: center;
}

.interval-setup-card > div:first-child {
    min-width: 0;
    display: grid;
    gap: 4px;
    justify-items: center;
}

.interval-setup-card strong {
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(0.9rem, 4vw, 1.08rem);
    line-height: 1.2;
}

.interval-setup-card > div:first-child span {
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.25;
    text-transform: uppercase;
}

.interval-stepper {
    display: grid;
    grid-template-areas:
        "value value"
        "minus plus";
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 56px 38px;
    align-items: center;
    gap: 7px 5px;
    width: 100%;
}

.interval-stepper button {
    width: 36px;
    height: 36px;
    justify-self: center;
    padding: 0;
    border: 1px solid var(--border);
    border-radius: 50%;
    background: var(--bg);
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    font: inherit;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1;
}

.interval-stepper button:first-of-type { grid-area: minus; }
.interval-stepper button:last-of-type { grid-area: plus; }

.interval-stepper button:focus-visible {
    outline: 3px solid var(--movement-accent-soft);
    border-color: var(--movement-accent);
}

.interval-stepper label {
    grid-area: value;
    display: flex;
    width: 100%;
    min-height: 54px;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
    padding: 15px 3px 10px;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: var(--bg);
    box-sizing: border-box;
    white-space: nowrap;
}

#view-interval-timer :is(#interval-work-input, #interval-rest-input, #interval-rounds-input) {
    width: 34px;
    padding: 0;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    font: inherit;
    font-size: 1.1rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: right;
    appearance: textfield;
}

#view-interval-timer :is(#interval-work-input, #interval-rest-input, #interval-rounds-input)::-webkit-inner-spin-button,
#view-interval-timer :is(#interval-work-input, #interval-rest-input, #interval-rounds-input)::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
}

.interval-stepper small {
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    font-size: 0.72rem;
    font-weight: 700;
}

.interval-total-summary {
    margin: 13px 0 18px !important;
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    font-size: 0.84rem;
    font-weight: 700;
    text-align: center;
}

#view-interval-timer #interval-start-btn,
#view-interval-timer #interval-pause-btn,
#view-interval-timer #interval-timer-done button:first-of-type {
    border: 0 !important;
    background: linear-gradient(100deg, var(--movement-accent-strong), #f0d27a) !important;
    color: var(--movement-ink-on-gold) !important;
    -webkit-text-fill-color: var(--movement-ink-on-gold) !important;
    box-shadow: 0 10px 24px rgba(147, 105, 21, 0.2) !important;
}

#view-interval-timer #interval-start-btn {
    display: block;
    width: 100%;
    min-height: 54px;
    padding: 15px 18px;
    border-radius: 16px;
    font: inherit;
    font-size: 1.02rem;
    font-weight: 850;
}

.interval-running-kicker { text-align: center; }

.interval-gold-dial-wrap {
    display: flex;
    justify-content: center;
    margin: clamp(10px, 4vh, 28px) 0 clamp(18px, 4vh, 30px);
}

.interval-gold-dial {
    position: relative;
    width: min(68vw, 286px);
    height: min(68vw, 286px);
    max-width: calc(100dvh - 330px);
    max-height: calc(100dvh - 330px);
    min-width: 210px;
    min-height: 210px;
}

.interval-gold-dial-content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 24px;
    box-sizing: border-box;
    text-align: center;
}

#interval-timer-phase {
    margin-bottom: 5px;
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.16em;
}

#interval-timer-display {
    max-width: 100%;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: clamp(3.4rem, 18vw, 5.4rem);
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.055em;
    line-height: 0.95;
    white-space: nowrap;
}

#interval-timer-round {
    margin-top: 10px;
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.2;
}

.interval-round-dots {
    display: flex;
    min-height: 14px;
    max-width: min(310px, 86vw);
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0 auto clamp(20px, 4vh, 30px);
}

.interval-round-progress-track {
    width: min(240px, 70vw);
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--border);
}

.interval-round-progress-track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--movement-accent-strong);
    transition: width 0.3s ease;
}

.interval-running-actions { width: 100%; }

#view-interval-timer #interval-pause-btn,
#view-interval-timer #interval-end-btn {
    width: 100%;
    min-height: 52px;
    padding: 14px 18px;
    border-radius: 16px;
    font: inherit;
    font-size: 1rem;
    font-weight: 850;
}

#view-interval-timer #interval-end-btn {
    margin-top: 9px;
    border: 0;
    background: transparent;
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    box-shadow: none;
}

#view-interval-timer #interval-timer-active svg circle:first-child {
    stroke: var(--border) !important;
}

#view-interval-timer #interval-timer-display {
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
}

@media (max-height: 690px) {
    .movement-stopwatch-view .movement-tool-header { min-height: calc(68px + env(safe-area-inset-top, 0px)); }
    #interval-timer-setup { min-height: calc(100dvh - 96px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)); padding-top: 12px; padding-bottom: 12px; }
    .movement-stopwatch-view .movement-tool-question { font-size: 1.65rem; }
    .movement-stopwatch-view .movement-tool-helper { margin-bottom: 12px !important; }
    .interval-setup-card { min-height: 156px; padding-top: 10px; }
    .interval-stepper { grid-template-rows: 49px 34px; gap: 5px 4px; }
    .interval-stepper label { min-height: 48px; padding-top: 12px; padding-bottom: 8px; }
    .interval-stepper button { width: 32px; height: 32px; }
    .interval-total-summary { margin-top: 9px !important; margin-bottom: 10px !important; }
    .interval-gold-dial-wrap { margin-top: 4px; margin-bottom: 14px; }
    .interval-round-dots { margin-bottom: 15px; }
}

@media (max-width: 360px) {
    .interval-setup-grid { gap: 6px; }
    .interval-setup-card { padding-right: 5px; padding-left: 5px; border-radius: 15px; }
    .interval-stepper { column-gap: 3px; }
    .interval-stepper button { width: 32px; height: 32px; }
    .interval-gold-dial { min-width: 196px; min-height: 196px; }
}

/* Coach's Workouts */
#view-week-workouts #week-workouts-list,
#view-week-session #week-session-body {
    padding-bottom: calc(116px + env(safe-area-inset-bottom, 0px));
}

.coach-workout-list-card,
.coach-workout-exercise-card {
    border-color: var(--border) !important;
    background: var(--card-bg) !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    box-shadow: none !important;
}

.coach-workout-date {
    border: 1px solid color-mix(in srgb, var(--movement-accent) 38%, transparent);
    background: var(--movement-accent-soft) !important;
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
}

.coach-workout-summary {
    border: 1px solid color-mix(in srgb, var(--movement-accent) 34%, transparent);
    background: linear-gradient(145deg, var(--card-bg), var(--movement-accent-soft)) !important;
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
    box-shadow: none !important;
}

.coach-workout-action-bar {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 510;
    padding: 16px 20px calc(16px + env(safe-area-inset-bottom, 0px));
    background: linear-gradient(transparent, var(--bg) 20%, var(--bg));
}

.coach-workout-action-bar button {
    display: block;
    width: min(100%, 460px);
    min-height: 56px;
    margin: 0 auto;
    border: 0;
    border-radius: 17px;
    background: linear-gradient(100deg, var(--movement-accent-strong), #f0d27a);
    color: var(--movement-ink-on-gold);
    -webkit-text-fill-color: var(--movement-ink-on-gold);
    font: inherit;
    font-size: 1rem;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(147, 105, 21, 0.2);
    cursor: pointer;
}

@media (max-width: 360px) {
    .movement-tool-shell { padding-right: 16px !important; padding-left: 16px !important; }
    .movement-tool-question { font-size: 1.68rem; }
    .movement-tool-view .library-category-card { gap: 12px; }
}

.balance-workout-history-header {
    position: sticky;
    top: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: calc(12px + env(safe-area-inset-top, 0px)) 20px 12px;
    background: rgba(255, 253, 248, 0.96);
    border-bottom: 1px solid rgba(99, 82, 53, 0.14);
    box-shadow: 0 4px 18px rgba(48, 39, 25, 0.06);
    backdrop-filter: blur(14px);
}

.balance-workout-history-logo {
    width: 34px;
    height: 34px;
    object-fit: contain;
    flex: 0 0 auto;
}

.balance-workout-history-kicker {
    color: #8a6112 !important;
    -webkit-text-fill-color: #8a6112 !important;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    line-height: 1;
    text-transform: uppercase;
}

.balance-workout-history-title {
    margin-top: 3px;
    color: #171717 !important;
    -webkit-text-fill-color: #171717 !important;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
}

.balance-workout-history-content {
    max-width: 620px;
    margin: 0 auto;
    padding: 18px 16px calc(28px + env(safe-area-inset-bottom, 0px));
}

.balance-workout-history-intro {
    margin: 0 4px 14px;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
    font-size: 0.83rem;
    line-height: 1.4;
}

.balance-workout-history-list {
    display: grid;
    gap: 10px;
}

.balance-workout-history-item {
    width: 100%;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 12px;
    padding: 13px;
    border: 1px solid rgba(99, 82, 53, 0.15);
    border-radius: 17px;
    background: #ffffff;
    color: #171717;
    font: inherit;
    text-align: left;
    box-shadow: 0 6px 16px rgba(48, 39, 25, 0.055);
    cursor: pointer;
    touch-action: manipulation;
}

.balance-workout-history-item:active { transform: scale(0.99); }

.balance-workout-history-date {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(184, 137, 43, 0.32);
    border-radius: 50%;
    background: #f5ead0;
    color: #5b420f !important;
    -webkit-text-fill-color: #5b420f !important;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.03em;
    text-align: center;
}

.balance-workout-history-copy { min-width: 0; }

.balance-workout-history-name,
.balance-workout-history-meta,
.balance-workout-history-exercises,
.balance-workout-history-chevron {
    display: block;
}

.balance-workout-history-name {
    overflow: hidden;
    color: #171717 !important;
    -webkit-text-fill-color: #171717 !important;
    font-size: 0.94rem;
    font-weight: 850;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.balance-workout-history-meta,
.balance-workout-history-exercises {
    overflow: hidden;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
    font-size: 0.74rem;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.balance-workout-history-meta { margin-top: 3px; }
.balance-workout-history-exercises { margin-top: 1px; }

.balance-workout-history-chevron {
    color: #8a6112 !important;
    -webkit-text-fill-color: #8a6112 !important;
    font-size: 1.35rem;
    font-weight: 500;
    line-height: 1;
}

.balance-workout-history-empty {
    align-items: center;
    flex-direction: column;
    gap: 8px;
    padding: 44px 24px;
    border: 1px solid rgba(99, 82, 53, 0.15);
    border-radius: 18px;
    background: #ffffff;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
    text-align: center;
}

.balance-workout-history-empty img {
    width: 48px;
    height: 48px;
    object-fit: contain;
    opacity: 0.88;
}

.balance-workout-history-empty strong {
    color: #171717 !important;
    -webkit-text-fill-color: #171717 !important;
    font-size: 0.92rem;
}

.balance-workout-history-empty span {
    max-width: 270px;
    color: #6f6a61 !important;
    -webkit-text-fill-color: #6f6a61 !important;
    font-size: 0.8rem;
    line-height: 1.45;
}
html:not([data-pbb-theme="light"]) #movement-archive .hero-card > div:first-child,
html:not([data-pbb-theme="light"]) #movement-archive .hero-card p {
    color: #e0fffb !important;
    -webkit-text-fill-color: #e0fffb !important;
}

html:not([data-pbb-theme="light"]) #movement-archive #workout-list .card,
html:not([data-pbb-theme="light"]) #movement-archive #workout-list .card > div,
html:not([data-pbb-theme="light"]) #movement-archive #view-library > div:first-child {
    background: #121212 !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #movement-archive #workout-list :is(h4, strong) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #movement-archive #workout-list div[style*="color:#64748b"],
html:not([data-pbb-theme="light"]) #movement-archive #workout-list div[style*="color:#94a3b8"],
html:not([data-pbb-theme="light"]) #movement-archive #view-library div[style*="color:#64748b"] {
    color: #bdb5c4 !important;
    -webkit-text-fill-color: #bdb5c4 !important;
}

html:not([data-pbb-theme="light"]) #movement-archive #workout-list input,
html:not([data-pbb-theme="light"]) #movement-archive #db-search-input {
    background: #171717 !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    caret-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) #movement-archive #workout-list input::placeholder,
html:not([data-pbb-theme="light"]) #movement-archive #db-search-input::placeholder {
    color: #aaa2b0 !important;
    -webkit-text-fill-color: #aaa2b0 !important;
    opacity: 1 !important;
}

html:not([data-pbb-theme="light"]) #movement-archive button[onclick*="saveWorkout"],
html:not([data-pbb-theme="light"]) #movement-archive button[onclick*="loadExerciseLibrary"] {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #movement-archive button[onclick*="switchTrackerView('library')"] {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
    border-color: #736b79 !important;
}

/* Calorie tracker sheets, streaks, photo menu, and adaptive-goal modal */
html:not([data-pbb-theme="light"]) #calorie-tracker .streak-inline {
    background: linear-gradient(135deg, #2a2114, #191612) !important;
    border-color: rgba(245, 217, 138, 0.32) !important;
}

html:not([data-pbb-theme="light"]) #calorie-tracker .streak-inline-count {
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) #water-entry-sheet div[style*="color:#374151"] {
    color: #d8cfe0 !important;
    -webkit-text-fill-color: #d8cfe0 !important;
}

html:not([data-pbb-theme="light"]) #water-entry-sheet .water-amount-btn {
    background: #12212b !important;
    border-color: #285a73 !important;
    color: #8edcff !important;
    -webkit-text-fill-color: #8edcff !important;
}

html:not([data-pbb-theme="light"]) #water-entry-sheet .water-amount-btn.selected {
    background: #075985 !important;
    border-color: #38bdf8 !important;
    color: #f0f9ff !important;
    -webkit-text-fill-color: #f0f9ff !important;
}

html:not([data-pbb-theme="light"]) #water-entry-sheet button[onclick*="confirmWaterEntry"] {
    background: linear-gradient(135deg, #075985, #0c4a6e) !important;
    color: #f0f9ff !important;
    -webkit-text-fill-color: #f0f9ff !important;
}

html:not([data-pbb-theme="light"]) #calorie-tracker #nutrition-share-photo-btn,
html:not([data-pbb-theme="light"]) #calorie-tracker #nutrition-share-photo-source-menu,
html:not([data-pbb-theme="light"]) #calorie-tracker #nutrition-share-photo-source-menu button {
    background: #171717 !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #calorie-tracker #nutrition-share-photo-source-menu button + button {
    border-top-color: rgba(245, 217, 138, 0.14) !important;
}

html:not([data-pbb-theme="light"]) #calorie-tracker .streak-tracker-card span[style*="color: #92400e"] {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) .adaptive-modal-change {
    background: #21182c !important;
    border: 1px solid rgba(245, 217, 138, 0.16) !important;
}

html:not([data-pbb-theme="light"]) .adaptive-modal-change .adaptive-modal-old {
    color: #bdb5c4 !important;
    -webkit-text-fill-color: #bdb5c4 !important;
}

html:not([data-pbb-theme="light"]) .adaptive-modal-change :is(.adaptive-modal-arrow, .adaptive-modal-new) {
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) .adaptive-modal-confirm {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* Dining guide cards */
html:not([data-pbb-theme="light"]) #dining :is(.hero-card, .card, .card-body),
html:not([data-pbb-theme="light"]) #dining .card-body > div[style*="display:grid"] > div {
    background: linear-gradient(145deg, #191919, #111111) !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #dining :is(h1, h3, h4, strong) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #dining :is(p, li) {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) #dining p[style*="color: #e53e3e"] {
    color: #ff9a9a !important;
    -webkit-text-fill-color: #ff9a9a !important;
}

html:not([data-pbb-theme="light"]) #dining a > button {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #custom-exercise-upload-banner-icon {
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #coin-shop-modal #restore-purchases-row button {
    background: none !important;
    color: #f5d98a !important;
    -webkit-text-fill-color: #f5d98a !important;
}

/* App-wide last line of defence for legacy inline light-mode fragments. */
html:not([data-pbb-theme="light"]) :where(
    .app-view,
    [id$="-modal"],
    [id$="-modal-overlay"],
    [id$="-overlay"],
    [id$="-sheet"]
) :is(
    [style*="background:white"],
    [style*="background: white"],
    [style*="background:#fff"],
    [style*="background: #fff"],
    [style*="background:#f8fafc"],
    [style*="background: #f8fafc"],
    [style*="background:#f1f5f9"],
    [style*="background: #f1f5f9"],
    [style*="background:#f0fdf4"],
    [style*="background: #f0fdf4"],
    [style*="background:#f0f9ff"],
    [style*="background: #f0f9ff"]
) {
    background: #171717 !important;
    border-color: rgba(245, 217, 138, 0.16) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) :where(
    .app-view,
    [id$="-modal"],
    [id$="-modal-overlay"],
    [id$="-overlay"],
    [id$="-sheet"]
) :is(
    [style*="color:#0f172a"],
    [style*="color: #0f172a"],
    [style*="color:#1e293b"],
    [style*="color: #1e293b"],
    [style*="color:#334155"],
    [style*="color: #334155"],
    [style*="color:#374151"],
    [style*="color: #374151"],
    [style*="color:#4a5568"],
    [style*="color: #4a5568"],
    [style*="color:#555"],
    [style*="color: #555"],
    [style*="color:#666"],
    [style*="color: #666"]
) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) :where(
    .app-view,
    [id$="-modal"],
    [id$="-modal-overlay"],
    [id$="-overlay"],
    [id$="-sheet"]
) :is(
    [style*="color:#475569"],
    [style*="color: #475569"],
    [style*="color:#64748b"],
    [style*="color: #64748b"],
    [style*="color:#6b7280"],
    [style*="color: #6b7280"]
) {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) :where(
    .app-view,
    [id$="-modal"],
    [id$="-modal-overlay"],
    [id$="-overlay"],
    [id$="-sheet"]
) :is(
    input:not([type="range"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="color"]),
    textarea,
    select
) {
    background-color: #171717 !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
    caret-color: #f5d98a !important;
}

html:not([data-pbb-theme="light"]) :where(
    .app-view,
    [id$="-modal"],
    [id$="-modal-overlay"],
    [id$="-overlay"],
    [id$="-sheet"]
) :is(input, textarea)::placeholder {
    color: #aaa2b0 !important;
    -webkit-text-fill-color: #aaa2b0 !important;
    opacity: 1 !important;
}

html:not([data-pbb-theme="light"]) :where(
    .app-view,
    [id$="-modal"],
    [id$="-modal-overlay"],
    [id$="-overlay"],
    [id$="-sheet"]
) :is(
    button[style*="background:var(--primary)"],
    button[style*="background: var(--primary)"],
    button[style*="background:linear-gradient(135deg, var(--primary)"],
    button[style*="background: linear-gradient(135deg, var(--primary)"]
) {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    border-color: rgba(245, 217, 138, 0.36) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) .coin-header-widget :is(.coin-emoji, .coin-amount, .coin-buy-btn) {
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* High-use dashboard cards and transient reward controls. */
html:not([data-pbb-theme="light"]) #view-dashboard :is(
    #daily-progress-counter,
    #dashboard-current-phase-title,
    #dashboard-current-phase-name,
    #weekly-progress-photo-uploading-copy,
    #weigh-in-unit-label
) {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) #view-dashboard .levelup-banner :is(
    .levelup-banner-title,
    .star-icon,
    #levelup-banner-number,
    .levelup-banner-rank,
    .levelup-unlocked-label,
    .levelup-unlocked-icon,
    #levelup-unlocked-text
) {
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #view-dashboard #battle-btn-block {
    background: #1e3a8a !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html:not([data-pbb-theme="light"]) #view-dashboard #battle-btn-fire {
    background: #991b1b !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html:not([data-pbb-theme="light"]) #view-dashboard #battle-btn-bash {
    background: #854d0e !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html:not([data-pbb-theme="light"]) #view-dashboard :is(#battle-btn-block, #battle-btn-fire, #battle-btn-bash) * {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

html:not([data-pbb-theme="light"]) #view-dashboard :is(
    #progress-photo-share-feed-btn,
    #fitness-diary-share-feed-btn,
    #whoop-sync-btn
) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

/* Common high-traffic modal actions that used white type on gold. */
html:not([data-pbb-theme="light"]) :is(
    #guest-signup-modal,
    #store-review-modal,
    #create-challenge-modal,
    #health-connect-modal,
    #view-week-session
) button {
    background: #21182c !important;
    border-color: rgba(245, 217, 138, 0.2) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) :is(
    #store-review-primary-btn,
    #store-review-fallback-primary-btn,
    #create-challenge-btn,
    #week-session-repeat-btn,
    #guest-signup-modal button:first-of-type,
    #health-connect-modal button:first-of-type,
    #create-challenge-modal .create-challenge-bet-btn.active
) {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #view-interval-timer :is(#interval-start-btn, #interval-pause-btn, button[onclick*="resetInterval"]) {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

/* Ask Balance and feed composer inputs must not inherit dark ink. */
html:not([data-pbb-theme="light"]) :is(#view-ask-balance, .ask-balance-palette) .ask-balance-input {
    background: #171717 !important;
    border-color: rgba(245, 217, 138, 0.22) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) :is(#view-ask-balance, .ask-balance-palette) .ask-balance-send {
    background: linear-gradient(135deg, #f5d98a, #d8b25e) !important;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
}

html:not([data-pbb-theme="light"]) #view-friends :is(
    #feed-composer-avatar,
    #feed-composer-share-menu-button,
    button[onclick*="createGroup"],
    button[onclick*="submitPost"]
) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

/* Light cards inside operational modals become dark, readable panels. */
html:not([data-pbb-theme="light"]) :is(
    #rare-rewards-modal,
    #share-win-modal,
    #quick-entry-tutorial-modal,
    #cycle-tracking-modal,
    #weigh-in-modal,
    #view-workout-library,
    #workout-exercises-modal
) :is(h1, h2, h3, h4, label, strong) {
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) :is(
    #rare-rewards-modal,
    #share-win-modal,
    #quick-entry-tutorial-modal,
    #cycle-tracking-modal,
    #weigh-in-modal,
    #view-workout-library,
    #workout-exercises-modal
) :is(p, small) {
    color: #c9c1ce !important;
    -webkit-text-fill-color: #c9c1ce !important;
}

html:not([data-pbb-theme="light"]) #share-win-modal [style*="background"] {
    background: #21182c !important;
    border-color: rgba(183, 148, 246, 0.34) !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) #view-profile #app-suggestion-input {
    background: #171717 !important;
    color: #fffaf2 !important;
    -webkit-text-fill-color: #fffaf2 !important;
}

html:not([data-pbb-theme="light"]) .multi-week-nav button.active {
    color: #0c0c0c !important;
    -webkit-text-fill-color: #0c0c0c !important;
}

/* Add Exercise suggestion badges need explicit paired colours. The app-wide
   legacy surface sweep can otherwise darken their inline light background
   while an older workout-sheet rule keeps the label text dark. */
#add-exercise-modal [data-add-exercise-suggestion-badge] {
    display: inline-flex;
    align-items: center;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px;
    color: var(--add-exercise-badge-light, #7c5b18) !important;
    -webkit-text-fill-color: var(--add-exercise-badge-light, #7c5b18) !important;
    flex-shrink: 0;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.3px;
    padding: 2px 6px;
    text-transform: uppercase;
}

html:not([data-pbb-theme="light"]) #add-exercise-modal [data-add-exercise-suggestion-badge] {
    background: #2a2418 !important;
    border-color: rgba(245, 217, 138, 0.34) !important;
    color: var(--add-exercise-badge-dark, #f5d98a) !important;
    -webkit-text-fill-color: var(--add-exercise-badge-dark, #f5d98a) !important;
}

#add-exercise-modal [data-add-exercise-solid-badge],
#view-active-workout [data-add-exercise-solid-badge] {
    background: #d8b25e !important;
    border-radius: 4px;
    color: #120c18 !important;
    -webkit-text-fill-color: #120c18 !important;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.25px;
    padding: 2px 6px;
}

/* Settings v2 — compact, grouped and explicitly paired for both themes. */
#view-profile.settings-v2-view {
    --settings-bg: #f7f2ea;
    --settings-card: #fffdf9;
    --settings-card-soft: #f3ede4;
    --settings-border: #e5dbcf;
    --settings-text: #201a1f;
    --settings-muted: #6c6169;
    --settings-accent: #8a651f;
    --settings-icon-bg: #efe3cf;
    background: var(--settings-bg) !important;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text);
}

html:not([data-pbb-theme="light"]) #view-profile.settings-v2-view {
    --settings-bg: #0d0c0e;
    --settings-card: #191719;
    --settings-card-soft: #242124;
    --settings-border: #393338;
    --settings-text: #fffaf2;
    --settings-muted: #bdb3ba;
    --settings-accent: #f5d98a;
    --settings-icon-bg: #2c261b;
}

#view-profile .settings-v2-header {
    background: var(--settings-bg) !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
}

#view-profile .settings-v2-header .app-logo {
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    font-size: 1.18rem;
    font-weight: 800;
    letter-spacing: -0.02em;
}

#view-profile .settings-v2-header-mark {
    align-items: center;
    background: linear-gradient(135deg, #f5d98a, #b4832f);
    border-radius: 50%;
    color: #17100a !important;
    -webkit-text-fill-color: #17100a !important;
    display: flex;
    font-size: 0.76rem;
    font-weight: 900;
    height: 34px;
    justify-content: center;
    width: 34px;
}

#view-profile .settings-v2-shell {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 680px;
    padding: 10px 18px calc(22px + env(safe-area-inset-bottom, 0px));
}

#view-profile .settings-v2-profile,
#view-profile .settings-v2-card,
#view-profile .settings-v2-more {
    background: var(--settings-card) !important;
    border: 1px solid var(--settings-border) !important;
    box-shadow: 0 10px 26px rgba(58, 39, 25, 0.07) !important;
}

html:not([data-pbb-theme="light"]) #view-profile .settings-v2-profile,
html:not([data-pbb-theme="light"]) #view-profile .settings-v2-card,
html:not([data-pbb-theme="light"]) #view-profile .settings-v2-more {
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.3) !important;
}

#view-profile .settings-v2-profile {
    align-items: center;
    border-radius: 20px;
    display: grid;
    gap: 8px 12px;
    grid-template-columns: 62px minmax(0, 1fr) auto;
    padding: 16px;
}

#view-profile .settings-v2-photo.profile-photo-container {
    background: linear-gradient(145deg, #ead3a6, #b78532) !important;
    border: 2px solid rgba(216, 178, 94, 0.75) !important;
    height: 58px !important;
    margin: 0 !important;
    position: relative;
    width: 58px !important;
}

#view-profile .settings-v2-photo #profile-default-initial {
    color: #24170c !important;
    -webkit-text-fill-color: #24170c !important;
    font-size: 1.45rem;
    font-weight: 800;
}

#view-profile .settings-v2-photo .profile-photo {
    border-radius: 50%;
    height: 100%;
    inset: 0;
    object-fit: cover;
    position: absolute;
    width: 100%;
}

#view-profile .settings-v2-photo .photo-edit-btn {
    align-items: center;
    background: #1f1a1d !important;
    border: 2px solid var(--settings-card);
    border-radius: 50%;
    bottom: -3px;
    display: flex;
    height: 22px;
    justify-content: center;
    position: absolute;
    right: -3px;
    width: 22px;
    z-index: 2;
}

#view-profile .settings-v2-photo .photo-edit-btn svg {
    fill: #fffaf2 !important;
    height: 12px;
    width: 12px;
}

#view-profile .settings-v2-profile-copy {
    min-width: 0;
}

#view-profile .settings-v2-profile .profile-name-large {
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    font-size: 1.02rem !important;
    font-weight: 800 !important;
    line-height: 1.2;
    margin: 0 0 3px !important;
    overflow: hidden;
    text-align: left !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#view-profile .settings-v2-profile .profile-email {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    font-size: 0.74rem !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#view-profile .settings-v2-edit {
    background: var(--settings-card-soft) !important;
    border: 1px solid var(--settings-border) !important;
    border-radius: 999px;
    color: var(--settings-accent) !important;
    -webkit-text-fill-color: var(--settings-accent) !important;
    cursor: pointer;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 800;
    min-height: 34px;
    padding: 7px 13px;
}

#view-profile .settings-v2-edit-save {
    background: linear-gradient(135deg, #f5d98a, #c79642) !important;
    color: #181008 !important;
    -webkit-text-fill-color: #181008 !important;
}

#view-profile .settings-v2-stats {
    display: grid;
    gap: 7px;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 4px;
}

#view-profile .settings-v2-stats > div {
    background: var(--settings-card-soft) !important;
    border: 1px solid var(--settings-border) !important;
    border-radius: 12px;
    min-width: 0;
    padding: 8px 5px;
    text-align: center;
}

#view-profile .settings-v2-stats span,
#view-profile .settings-v2-stats strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#view-profile .settings-v2-stats span {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

#view-profile .settings-v2-stats strong {
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    font-size: 0.82rem;
    margin-top: 2px;
}

#view-profile .settings-v2-section {
    margin-top: 22px;
}

#view-profile .settings-v2-section > h3 {
    color: var(--settings-accent) !important;
    -webkit-text-fill-color: var(--settings-accent) !important;
    font-size: 0.68rem !important;
    font-weight: 900;
    letter-spacing: 0.12em;
    margin: 0 0 8px 7px !important;
    text-transform: uppercase;
}

#view-profile .settings-community-games .feed-level-leaderboard {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: var(--settings-text);
    margin: 0;
}

#view-profile .settings-community-games .feed-level-leaderboard-top-value {
    color: var(--settings-accent) !important;
    -webkit-text-fill-color: var(--settings-accent) !important;
    font-size: 0.72rem;
}

#view-profile .settings-community-games .feed-level-leaderboard-chevron {
    background: transparent;
    border-radius: 0;
    height: auto;
    transform: rotate(0deg);
    width: auto;
}

#view-profile .settings-community-games .feed-level-leaderboard.is-open .feed-level-leaderboard-chevron,
#view-profile .settings-community-games .feed-level-leaderboard:focus-within .feed-level-leaderboard-chevron,
#view-profile .settings-community-games .feed-level-leaderboard:active .feed-level-leaderboard-chevron {
    background: transparent;
    transform: rotate(90deg);
}

#view-profile .settings-community-games .feed-level-leaderboard-body {
    background: var(--settings-card-soft);
    border-top: 0;
}

#view-profile .settings-community-games .feed-level-leaderboard-actions,
#view-profile .settings-community-games .feed-level-leaderboard-state,
#view-profile .settings-community-games .feed-level-meta,
#view-profile .settings-community-games .feed-level-points small {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
}

#view-profile .settings-community-games .feed-level-leaderboard-actions button {
    background: var(--settings-icon-bg);
    border: 1px solid var(--settings-border);
    color: var(--settings-accent);
    -webkit-text-fill-color: var(--settings-accent);
}

#view-profile .settings-community-games .feed-level-row {
    background: transparent;
    border-top-color: var(--settings-border);
}

#view-profile .settings-community-games .feed-level-row.is-current-user {
    background: var(--settings-icon-bg);
}

#view-profile .settings-community-games .feed-level-name {
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
}

#view-profile .settings-community-games .feed-level-points {
    color: var(--settings-accent) !important;
    -webkit-text-fill-color: var(--settings-accent) !important;
}

#view-profile .settings-v2-card,
#view-profile .settings-v2-more {
    border-radius: 18px;
    overflow: hidden;
}

#view-profile .settings-v2-row {
    align-items: center;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--settings-border) !important;
    box-shadow: none !important;
    box-sizing: border-box;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    cursor: pointer;
    display: flex;
    font: inherit;
    gap: 11px;
    min-height: 66px;
    padding: 12px 14px;
    text-align: left;
    width: 100%;
}

#view-profile .settings-v2-row:last-child,
#view-profile .settings-v2-reminders:last-child .settings-v2-row,
#view-profile .settings-v2-suggestion:last-child > .settings-v2-row {
    border-bottom: 0 !important;
}

#view-profile button.settings-v2-row:active {
    background: var(--settings-card-soft) !important;
}

#view-profile .settings-v2-icon {
    align-items: center;
    background: var(--settings-icon-bg) !important;
    border: 1px solid rgba(138, 101, 31, 0.24);
    border-radius: 11px;
    color: var(--settings-accent) !important;
    -webkit-text-fill-color: var(--settings-accent) !important;
    display: flex;
    flex: 0 0 36px;
    font-size: 1rem;
    height: 36px;
    justify-content: center;
}

html:not([data-pbb-theme="light"]) #view-profile .settings-v2-icon {
    border-color: rgba(245, 217, 138, 0.24);
}

#view-profile .settings-v2-copy {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
}

#view-profile .settings-v2-copy strong,
#view-profile .settings-v2-copy small {
    display: block;
}

#view-profile .settings-v2-copy strong {
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    font-size: 0.88rem;
    font-weight: 750;
    line-height: 1.25;
}

#view-profile .settings-v2-copy small {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    font-size: 0.69rem;
    line-height: 1.35;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

#view-profile .settings-v2-chevron {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    flex: 0 0 auto;
    font-size: 1.55rem;
    font-weight: 300;
    line-height: 1;
}

#view-profile #theme-selector {
    display: none !important;
}

#view-profile .settings-v2-theme {
    background: var(--settings-card-soft);
    border: 1px solid var(--settings-border);
    border-radius: 10px;
    display: flex;
    flex: 0 0 auto;
    padding: 2px;
}

#view-profile .settings-v2-theme button {
    background: transparent !important;
    border: 0 !important;
    border-radius: 8px;
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    font: inherit;
    font-size: 0.65rem;
    font-weight: 800;
    padding: 7px 8px;
}

#view-profile .settings-v2-theme button.is-active {
    background: linear-gradient(135deg, #f5d98a, #c79540) !important;
    color: #171009 !important;
    -webkit-text-fill-color: #171009 !important;
    box-shadow: 0 2px 6px rgba(93, 61, 15, 0.2);
}

#view-profile .settings-v2-pill,
#view-profile .settings-v2-save-reminders,
#view-profile #app-suggestion-submit-btn {
    background: linear-gradient(135deg, #f5d98a, #c79540) !important;
    border: 0 !important;
    border-radius: 999px;
    color: #171009 !important;
    -webkit-text-fill-color: #171009 !important;
    flex: 0 0 auto;
    font: inherit;
    font-size: 0.7rem;
    font-weight: 850;
    min-height: 34px;
    padding: 8px 13px;
}

#view-profile .settings-v2-health {
    background: #2563eb !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#view-profile .settings-v2-spotify {
    background: #15803d !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#view-profile .settings-v2-reminders {
    border-bottom: 0;
}

#view-profile .toggle-switch {
    cursor: pointer;
    display: inline-block;
    flex: 0 0 42px;
    height: 25px;
    position: relative;
    width: 42px;
}

#view-profile .toggle-switch input {
    height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}

#view-profile .toggle-switch .slider {
    background: #aaa0a7;
    border-radius: 999px;
    inset: 0;
    position: absolute;
    transition: 0.2s ease;
}

#view-profile .toggle-switch .knob {
    background: #ffffff;
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
    height: 19px;
    left: 3px;
    position: absolute;
    top: 3px;
    transition: 0.2s ease;
    width: 19px;
}

#view-profile .toggle-switch input:checked + .slider {
    background: #8a651f !important;
}

html:not([data-pbb-theme="light"]) #view-profile .toggle-switch input:checked + .slider {
    background: #d8b25e !important;
}

#view-profile .toggle-switch input:checked ~ .knob {
    transform: translateX(17px);
}

#view-profile #meal-reminder-times {
    background: var(--settings-card-soft) !important;
    border-top: 1px solid var(--settings-border);
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    margin: 0 !important;
    padding: 13px 15px 15px !important;
}

#view-profile .settings-v2-time-row {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 9px;
}

#view-profile .settings-v2-time-row label {
    align-items: center;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    display: flex;
    font-size: 0.8rem;
    gap: 8px;
}

#view-profile .settings-v2-time-row input[type="time"] {
    background: var(--settings-card) !important;
    border: 1px solid var(--settings-border) !important;
    border-radius: 8px;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    color-scheme: light;
    font: inherit;
    font-size: 0.76rem;
    padding: 6px 8px;
}

html:not([data-pbb-theme="light"]) #view-profile .settings-v2-time-row input[type="time"] {
    color-scheme: dark;
}

/* Settings pickers — explicit paired text/surface roles for light and dark mode. */
html[data-pbb-theme] .settings-picker-overlay {
    background: var(--pbb-readable-overlay) !important;
    color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] .settings-picker-sheet {
    background: var(--pbb-readable-sheet) !important;
    border: 1px solid var(--pbb-readable-border) !important;
    color: var(--pbb-readable-text) !important;
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html[data-pbb-theme] .settings-picker-header,
html[data-pbb-theme] .settings-picker-footer {
    border-color: var(--pbb-readable-border-soft) !important;
}

html[data-pbb-theme] .settings-picker-title,
html[data-pbb-theme] .settings-picker-option-label {
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
}

html[data-pbb-theme] .settings-picker-helper,
html[data-pbb-theme] .dietary-picker-group-title {
    color: var(--pbb-readable-muted) !important;
    -webkit-text-fill-color: var(--pbb-readable-muted) !important;
}

html[data-pbb-theme] .settings-picker-close {
    align-items: center;
    background: var(--pbb-readable-surface-soft) !important;
    border: 1px solid var(--pbb-readable-border-soft) !important;
    border-radius: 50%;
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
    cursor: pointer;
    display: flex;
    font: inherit;
    font-size: 1.3rem;
    height: 40px;
    justify-content: center;
    line-height: 1;
    width: 40px;
}

html[data-pbb-theme] .settings-picker-option {
    align-items: center;
    background: var(--pbb-readable-surface-soft) !important;
    border: 1px solid var(--pbb-readable-border-soft) !important;
    border-radius: 12px;
    color: var(--pbb-readable-text) !important;
    cursor: pointer;
    display: flex;
    font: inherit;
    gap: 14px;
    margin-bottom: 7px;
    min-height: 52px;
    padding: 12px;
    text-align: left;
    width: 100%;
}

html[data-pbb-theme] .settings-picker-option.is-selected,
html[data-pbb-theme] .dietary-picker-chip.is-selected {
    background: var(--pbb-readable-action-bg) !important;
    border-color: transparent !important;
    color: var(--pbb-readable-action-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-action-text) !important;
}

html[data-pbb-theme] .settings-picker-option-label {
    font-size: 0.92rem;
    font-weight: 700;
}

html[data-pbb-theme] .settings-picker-option.is-selected .settings-picker-option-label {
    color: var(--pbb-readable-action-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-action-text) !important;
}

html[data-pbb-theme] .settings-picker-check {
    fill: currentColor;
    height: 18px;
    margin-left: auto;
    width: 18px;
}

html[data-pbb-theme] .dietary-picker-group-title {
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    margin: 7px 0 9px;
    text-transform: uppercase;
}

html[data-pbb-theme] .dietary-picker-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

html[data-pbb-theme] .dietary-picker-chip {
    align-items: center;
    background: var(--pbb-readable-surface-soft) !important;
    border: 1px solid var(--pbb-readable-border-soft) !important;
    border-radius: 999px;
    color: var(--pbb-readable-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-text) !important;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 6px;
    line-height: 1.25;
    min-height: 38px;
    padding: 8px 12px;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

html[data-pbb-theme] .settings-picker-primary {
    background: var(--pbb-readable-action-bg) !important;
    border: 0 !important;
    border-radius: 12px;
    color: var(--pbb-readable-action-text) !important;
    -webkit-text-fill-color: var(--pbb-readable-action-text) !important;
    cursor: pointer;
    font: inherit;
    font-size: 0.92rem;
    font-weight: 800;
    min-height: 46px;
    padding: 12px 16px;
    width: 100%;
}

html[data-pbb-theme] :where(.settings-picker-close, .settings-picker-option, .dietary-picker-chip, .settings-picker-primary):focus-visible {
    outline: 3px solid var(--pbb-readable-success);
    outline-offset: 2px;
}

#view-profile .settings-v2-save-reminders {
    border-radius: 10px;
    margin-top: 3px;
    width: 100%;
}

#view-profile .settings-v2-suggestion > .settings-v2-row {
    border-bottom: 0 !important;
}

#view-profile .settings-v2-open {
    align-items: center;
    color: var(--settings-accent) !important;
    -webkit-text-fill-color: var(--settings-accent) !important;
    display: flex;
    flex: 0 0 auto;
    font-size: 0.7rem;
    font-weight: 850;
    gap: 4px;
}

#view-profile #app-suggestion-panel {
    border-top: 1px solid var(--settings-border);
    padding: 13px 14px 15px;
}

#view-profile #app-suggestion-input {
    background: var(--settings-card-soft) !important;
    border: 1px solid var(--settings-border) !important;
    border-radius: 11px;
    box-sizing: border-box;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    font: inherit;
    font-size: 0.82rem;
    line-height: 1.45;
    min-height: 84px;
    padding: 10px 11px;
    resize: vertical;
    width: 100%;
}

#view-profile #app-suggestion-input::placeholder {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    opacity: 1;
}

#view-profile .settings-v2-suggestion-actions {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-top: 9px;
}

#view-profile #app-suggestion-status {
    color: var(--settings-muted);
    flex: 1;
    font-size: 0.72rem;
}

#view-profile .settings-v2-more {
    margin-top: 10px;
}

#view-profile .settings-v2-more summary {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    list-style: none;
    padding: 14px 16px;
    position: relative;
}

#view-profile .settings-v2-more summary::-webkit-details-marker {
    display: none;
}

#view-profile .settings-v2-more summary::after {
    color: var(--settings-muted);
    content: '›';
    font-size: 1.45rem;
    position: absolute;
    right: 17px;
    top: 17px;
    transition: transform 0.2s ease;
}

#view-profile .settings-v2-more[open] summary::after {
    transform: rotate(90deg);
}

#view-profile .settings-v2-more summary span {
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    font-size: 0.84rem;
    font-weight: 750;
}

#view-profile .settings-v2-more summary small {
    color: var(--settings-muted) !important;
    -webkit-text-fill-color: var(--settings-muted) !important;
    font-size: 0.68rem;
    margin-top: 3px;
}

#view-profile .settings-v2-tools {
    border-top: 1px solid var(--settings-border);
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr 1fr;
    padding: 12px;
}

#view-profile .settings-v2-tools button {
    align-items: center;
    background: var(--settings-card-soft) !important;
    border: 1px solid var(--settings-border) !important;
    border-radius: 11px;
    color: var(--settings-text) !important;
    -webkit-text-fill-color: var(--settings-text) !important;
    display: flex;
    font: inherit;
    font-size: 0.7rem;
    font-weight: 700;
    gap: 7px;
    min-height: 47px;
    padding: 8px 9px;
    text-align: left;
}

#view-profile .settings-v2-tools button span {
    flex: 0 0 auto;
}

#view-profile #profile-download-app-btn {
    display: none !important;
}

@media (max-width: 380px) {
    #view-profile .settings-v2-shell {
        padding-left: 12px;
        padding-right: 12px;
    }

    #view-profile .settings-v2-row {
        gap: 8px;
        padding-left: 11px;
        padding-right: 11px;
    }

    #view-profile .settings-v2-icon {
        flex-basis: 32px;
        height: 32px;
    }

    #view-profile .settings-v2-theme button {
        padding-left: 6px;
        padding-right: 6px;
    }

    #view-profile .settings-v2-copy strong {
        font-size: 0.82rem;
    }
}

/* Final Movement contrast guard: these selectors intentionally sit after the
   legacy light-only workout rules. */
.movement-tool-view .balance-workout-history-name,
.movement-tool-view .balance-workout-history-empty strong {
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
}

.movement-tool-view .balance-workout-history-date,
.movement-tool-view .balance-workout-history-chevron {
    color: var(--movement-accent) !important;
    -webkit-text-fill-color: var(--movement-accent) !important;
}

.movement-tool-view .balance-workout-history-meta,
.movement-tool-view .balance-workout-history-exercises,
.movement-tool-view .balance-workout-history-empty span,
.movement-tool-view :is(.coach-workout-list-card, .coach-workout-exercise-card) [style*="color:#64748b"],
.movement-tool-view :is(.coach-workout-list-card, .coach-workout-exercise-card) [style*="color:#94a3b8"] {
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
}

.movement-tool-view .coach-workout-exercise-card [style*="border-top:1px solid #f1f5f9"] {
    border-color: var(--border) !important;
}

/* The Stopwatch end action stays quiet in both themes. */
html #view-interval-timer #interval-end-btn,
html:not([data-pbb-theme="light"]) #view-interval-timer #interval-end-btn {
    border: 0 !important;
    background: transparent !important;
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
    box-shadow: none !important;
}

/* Guided-tour preview posts use the same readable ink as the surrounding feed. */
html .meta-preview-feed-post p,
html .meta-preview-feed-post strong {
    color: var(--text-main) !important;
    -webkit-text-fill-color: var(--text-main) !important;
}
html .meta-preview-feed-post span {
    color: var(--text-muted) !important;
    -webkit-text-fill-color: var(--text-muted) !important;
}

/* Keep the Weekly Goals opening cream in both themes. Its local ink rules
   must not be paired with the legacy dark hero background. */
html[data-pbb-theme] #weekly-goals-modal .weekly-goal-hero {
    background: linear-gradient(135deg, #fffdf8 0%, #f4e6c8 100%) !important;
    color: #181713 !important;
    -webkit-text-fill-color: #181713 !important;
}
html[data-pbb-theme] #weekly-goals-modal .weekly-goal-hero [style*="color:white"] {
    color: #181713 !important;
    -webkit-text-fill-color: #181713 !important;
}
html[data-pbb-theme] #weekly-goals-modal .weekly-goal-hero [style*="#fde68a"] {
    color: #765410 !important;
    -webkit-text-fill-color: #765410 !important;
}
html #weekly-goals-modal .weekly-goal-hero > div {
    z-index: 1;
}
