/* ===== PRACTICE ===== */
.practice-hero{text-align:center;padding:40px 0 24px;}
.practice-label{font-size:12px;color:var(--text3);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px;}
.practice-title{font-family:var(--serif);font-size:24px;font-weight:400;line-height:1.3;margin-bottom:8px;}
.practice-source{font-size:12px;color:var(--text3);font-style:italic;margin-bottom:20px;}
.practice-desc{font-size:14px;color:var(--text2);line-height:1.6;margin-bottom:24px;text-align:left;}
.practice-steps{text-align:left;margin-bottom:28px;}
.practice-step{display:flex;gap:12px;margin-bottom:14px;}
.step-num{width:28px;height:28px;border-radius:50%;background:var(--accent-dim);border:1px solid rgba(201,168,124,0.2);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--accent);flex-shrink:0;margin-top:2px;}
.step-text{font-size:14px;color:var(--text);line-height:1.55;}
.practice-done-msg{text-align:center;padding:40px 0;color:var(--green);font-size:14px;}

/* ===== AUDIO PLAYER ===== */
.audio-block{background:var(--bg2);border:1px solid var(--border);border-radius:14px;padding:18px;margin:20px 0;display:flex;flex-direction:column;gap:12px;}
.audio-block .audio-top{display:flex;align-items:center;gap:14px;}
.audio-block .audio-icon{width:44px;height:44px;border-radius:50%;background:var(--accent-dim);border:1px solid rgba(201,168,124,0.2);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;cursor:pointer;transition:all .2s;}
.audio-block .audio-icon:hover{background:var(--accent);color:var(--bg);}
.audio-block .audio-info{flex:1;}
.audio-block .audio-title{font-size:13px;font-weight:600;margin-bottom:2px;}
.audio-block .audio-sub{font-size:11px;color:var(--text3);}
.audio-progress{height:4px;border-radius:2px;background:var(--border);cursor:pointer;}
.audio-progress-fill{height:100%;border-radius:2px;background:var(--accent);width:0%;transition:width .2s linear;}
.audio-time{display:flex;justify-content:space-between;font-size:10px;color:var(--text3);margin-top:3px;}

/* ===== YEARLY MODULES ===== */
.yearly-module{background:var(--bg2);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:16px;}
.yearly-module .ym-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.yearly-module .ym-icon{font-size:20px;}
.yearly-module .ym-title{font-size:14px;font-weight:600;}
.yearly-module .ym-content{font-size:13px;color:var(--text2);line-height:1.65;}
.yearly-module .ym-content strong{color:var(--accent);font-weight:600;}
.yearly-module .ym-lock{text-align:center;padding:12px;font-size:13px;color:var(--text3);}

/* ===== REFLECTION FORM ===== */
.reflect-form{text-align:center;padding:24px 0 8px;}
.reflect-q{font-size:15px;color:var(--text);margin-bottom:16px;line-height:1.5;}
.reflect-btns{display:flex;gap:10px;justify-content:center;margin-bottom:16px;}
.reflect-btn{flex:1;max-width:120px;padding:14px 8px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text2);font-size:12px;cursor:pointer;transition:all .2s;text-align:center;line-height:1.3;}
.reflect-btn .reflect-icon{font-size:22px;margin-bottom:6px;}
.reflect-btn.selected{border-color:var(--accent);background:var(--accent-dim);color:var(--text);}
.reflect-note{width:100%;max-width:340px;background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:10px 12px;font-size:13px;font-family:inherit;resize:none;margin:0 auto;display:block;}
.reflect-note::placeholder{color:var(--text3);}
.reflect-note:focus{outline:none;border-color:var(--accent);}
.reflect-submit{margin-top:16px;}
.reflect-skip{font-size:12px;color:var(--text3);margin-top:12px;cursor:pointer;text-decoration:underline;text-underline-offset:2px;}
.reflect-skip:hover{color:var(--text2);}
