/* Shared content lock for Prompt Engineering lessons 6-20 */
#premiumContent { transition: filter .25s ease, opacity .25s ease, transform .25s ease; }
body.lesson-locked #premiumContent { filter: blur(8px); opacity: .28; pointer-events: none; user-select: none; transform: scale(.995); }
.unlock-gate-overlay,.ad-wait-modal { position: fixed; inset: 0; z-index: 9998; display: none; align-items: center; justify-content: center; padding: 20px; background: rgba(12,14,24,.65); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.ad-wait-modal { z-index: 9999; }
.unlock-hero,.ad-wait-card { width: 100%; max-width: 370px; border-radius: 26px; padding: 22px; text-align: center; color: #fff; background: linear-gradient(135deg,rgba(104,87,255,.35),rgba(255,98,181,.30)),linear-gradient(180deg,rgba(27,20,100,.97),rgba(18,13,70,.97)); border: 1px solid rgba(255,255,255,.25); box-shadow: 0 24px 60px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.3); }
.unlock-badge { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; font-size: 13px; font-weight: 700; color: #fff; background: linear-gradient(135deg,#ffae4c,#ff607d); margin-bottom: 12px; }
.unlock-title { font-size: 20px; font-weight: 700; margin-bottom: 10px; line-height: 1.5; color: #fff; }
.unlock-desc { font-size: 14px; line-height: 1.8; margin-bottom: 18px; color: rgba(255,255,255,.92); }
.unlock-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 10px 22px; width: 100%; border-radius: 999px; color: #fff!important; background: linear-gradient(135deg,#ffb04c,#ff6687); box-shadow: 0 14px 34px rgba(255,115,92,.3); font-weight: 700; cursor: pointer; border: 0; font-size: 15px; }
.preview-timer-bar { position: fixed; bottom: 75px; left: 50%; transform: translateX(-50%); z-index: 999; background: rgba(27,20,100,.94); color: #fff; padding: 8px 18px; border-radius: 20px; font-size: 13px; font-weight: 700; box-shadow: 0 8px 24px rgba(0,0,0,.25); backdrop-filter: blur(10px); display: none; align-items: center; gap: 8px; border: 1px solid rgba(255,255,255,.25); width: max-content; max-width: 90%; }
.unlock-status-card { display: none; margin: 16px 14px 10px; padding: 14px 18px; border-radius: 22px; background: linear-gradient(135deg,rgba(52,199,89,.16),rgba(48,209,88,.08)),linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.72)); border: 1px solid rgba(52,199,89,.35); box-shadow: 0 12px 32px rgba(40,160,80,.12); backdrop-filter: blur(18px) saturate(190%); }
.unlock-status-card.show { display: block; }
.unlock-status-inner { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.unlock-status-left,.unlock-pill-badge { display: flex; align-items: center; gap: 8px; color: #126330; font-size: 13px; font-weight: 700; }
.unlock-status-icon { width: 28px; height: 28px; border-radius: 50%; background: #34c759; color: #fff; display: flex; align-items: center; justify-content: center; }
.unlock-pill-badge { padding: 6px 14px; border-radius: 999px; background: rgba(255,255,255,.88); border: 1px solid rgba(52,199,89,.25); }
.ad-timer-circle { width: 80px; height: 80px; margin: 15px auto; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 28px; font-weight: 700; background: rgba(255,255,255,.15); border: 2px solid rgba(255,255,255,.3); }
.ad-progress { width: 100%; height: 8px; border-radius: 999px; background: rgba(255,255,255,.2); margin-bottom: 12px; overflow: hidden; }
.ad-progress-bar { width: 0; height: 100%; border-radius: 999px; background: #ffb04c; transition: width 1s linear; }
@media (max-width: 420px) { .unlock-hero,.ad-wait-card { padding: 20px 17px; } .unlock-title { font-size: 18px; } }
