/* SHORTCODE: [daily_challenge_mark_complete]
   Mark as Complete button — single daily challenge page. */

.wk-mark-complete-wrap {
    margin-top: 0px;
}


/* Base button — shared by both states */

.wk-mark-complete-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 28px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background 0.2s ease, opacity 0.2s ease;
    min-width: 180px;
    text-align: center;
}


/* Active state — not yet completed */

.wk-mark-complete-btn--active {
    background: var(--blue);
    color: #fff;
}

.wk-mark-complete-btn--active:not(:disabled):hover {
    background: var(--yellow);
    color: var(--text-color);
}


/* Completed state — rendered by PHP on page load OR injected by JS after AJAX */

.wk-mark-complete-btn--done {
    background: #283c81;
    color: #fff;
    cursor: default;
    opacity: 0.92;
    pointer-events: none;
}


/* Disabled covers both the completed button and the in-flight loading state */

.wk-mark-complete-btn:disabled {
    cursor: default;
}


/* Notice text used by shortcode gates */

.wk-notice {
    color: #6b7280;
    font-size: 15px;
}


/* ENQUEUE: Button styles */

.wk-challenge-btn {
    display: inline-block;
    background: var(--blue);
    color: #fff;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background 0.25s ease, opacity 0.25s ease;
    width: 100%;
    text-align: center;
}


/* Active hover — only when the button is interactive */

.wk-challenge-btn:not(:disabled):hover {
    background: var(--yellow);
    color: var(--text-color);
}


/* Enrolled state — rendered by PHP on page load OR injected by JS after AJAX success.
           Visually distinct (green) and non-interactive. */

.wk-challenge-btn--enrolled {
    background: var(--yellow);
    color: var(--text-color);
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    cursor: default;
    opacity: 0.92;
    pointer-events: none;
    /* belt-and-suspenders alongside disabled attr */
}


/* Disabled state covers both the enrolled button and the in-flight loading state */

.wk-challenge-btn:disabled {
    cursor: default;
}


/* Daily Challenge Listing - Lock/Unlock States
   Scoped to .daily-challenges-listing wrapper only.
   Applied by JS based on day number from wk_inline_daily_listing_data().
   Three states: wk-day-past, wk-day-today, wk-day-future (locked)
*/


/* Base transition - scoped to this listing only */

.daily-challenges-listing .jet-listing-grid__item {
    transition: opacity 0.2s ease;
    position: relative;
}


/* Past days - when locked: muted and not clickable. when unlocked: active style but slightly lower opacity */

.daily-challenges-listing .jet-listing-grid__item.wk-day-past {
    opacity: 0.85;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-past.wk-locked {
    opacity: 0.5;
    pointer-events: none;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-past.wk-locked .jet-listing-dynamic-link__link {
    color: #9ca3af;
    text-decoration: none;
    cursor: default;
    pointer-events: none;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-past:not(.wk-locked) .jet-listing-dynamic-link__link {
    font-weight: 600;
    color: #1A2550;
}


/* Today - active, full style, clickable */

.daily-challenges-listing .jet-listing-grid__item.wk-day-today {
    opacity: 1;
    pointer-events: auto;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-today .jet-listing-dynamic-link__link {
    font-weight: 700;
    color: #1A2550;
}


/* Future days - when locked: muted. when unlocked: active style */

.daily-challenges-listing .jet-listing-grid__item.wk-day-future {
    opacity: 0.85;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-future.wk-locked {
    opacity: 0.45;
    pointer-events: none;
    cursor: default;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-future.wk-locked .jet-listing-dynamic-link__link {
    pointer-events: none;
    color: #9ca3af;
    text-decoration: none;
    cursor: default;
}

.daily-challenges-listing .jet-listing-grid__item.wk-day-future:not(.wk-locked) .jet-listing-dynamic-link__link {
    font-weight: 600;
    color: #1A2550;
}


/* Lock icon - injected by JS before the label span */

.wk-lock-icon {
    display: inline-flex;
    align-items: center;
    margin-right: 8px;
    vertical-align: middle;
    opacity: 0.6;
    flex-shrink: 0;
}

.wk-lock-icon svg {
    width: 14px;
    height: 14px;
    fill: #6b7280;
}


/* Align label text with lock icon */

.daily-challenges-listing .jet-listing-grid__item.wk-day-future .jet-listing-dynamic-link__label,
.daily-challenges-listing .jet-listing-grid__item.wk-day-past .jet-listing-dynamic-link__label {
    display: inline-flex;
    align-items: center;
}

/* Locked Past Weekly Challenge styling */



