/* LoveBlazer Phase 8.1 — scoped styles; no existing stylesheet changes. */
.lf-main{max-width:1060px;padding-top:22px;padding-bottom:65px;color:#56324a}
.lf-main *{box-sizing:border-box}
.lf-breadcrumb{font-size:.9rem;margin:4px 0 26px;color:#91677c}
.lf-breadcrumb a{color:#9a5073}
.lf-hero{text-align:center;margin:0 auto 28px;max-width:660px}
.lf-eyebrow{display:block;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:#a4577d;margin-bottom:12px}
.lf-hero h1{font-size:clamp(2rem,4.5vw,3rem);color:#662e4b;line-height:1.16;margin:0 0 14px}
.lf-hero p{line-height:1.7;margin:0 auto 10px;color:#795568}
.lf-hero .lf-date{color:#a4577d;font-weight:700;font-size:.91rem}
.lf-card{background:linear-gradient(145deg,#fff8fb,#ffedf3);border:1px solid #f3d1df;border-radius:24px;padding:35px 28px;text-align:center;box-shadow:0 14px 36px rgba(119,49,85,.07);max-width:720px;margin:0 auto 38px}
.lf-envelope{margin:0 auto 18px;width:94px;height:75px;background:#e8a1ba;border:2px solid #d680a0;border-radius:12px;display:grid;place-items:center;box-shadow:0 12px 24px rgba(130,40,80,.12);transform:rotate(-5deg);position:relative;overflow:hidden}
.lf-envelope:before{content:"";position:absolute;inset:0;clip-path:polygon(0 0,50% 50%,100% 0);background:#ffd8e6}
.lf-envelope span{position:relative;color:#a83b69;font-size:25px;text-shadow:0 2px 2px #fff5}
.lf-card h2{font-size:1.45rem;margin:0 0 12px;color:#662e4b}
.lf-card>p{color:#795568}
.lf-primary{border:0;border-radius:100px;background:#a94173;color:white;min-height:48px;padding:12px 27px;font-weight:750;font-size:1rem;cursor:pointer;box-shadow:0 8px 17px rgba(169,65,115,.23);margin-top:12px}
.lf-primary:hover{background:#8f305e}
.lf-primary:focus-visible,.lf-week-item:focus-visible{outline:3px solid #7b386c;outline-offset:3px}
.lf-result[hidden],.lf-next[hidden]{display:none}
.lf-result{margin:22px auto 0;max-width:565px;padding:24px 20px;border-radius:18px;background:#fff;border:1px solid #f0d6df}
.lf-result-tag{font-size:.7rem;font-weight:800;letter-spacing:.14em;color:#af6585}
.lf-result h3{font-size:1.65rem;color:#7f3457;margin:10px 0}
.lf-result>p{line-height:1.8;color:#664b5a;margin:6px auto 17px}
.lf-action{background:#fff2f6;padding:14px 18px;border-radius:13px;text-align:left}
.lf-action strong{display:block;color:#86415e;margin-bottom:5px}
.lf-action p{margin:0;line-height:1.7;color:#664b5a}
.lf-result p.lf-saved{font-size:.84rem;margin:13px 0 0;color:#91677c}
.lf-card .lf-next{font-size:.9rem;color:#9a5675;margin:15px 0 0}
.lf-section{margin:0 auto 28px;padding:26px;border:1px solid #f1dde4;border-radius:20px;background:#fff}
.lf-section h2{font-size:1.35rem;color:#66324d;margin:0 0 17px}
.lf-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.lf-section-heading .lf-eyebrow{margin-bottom:5px}
.lf-progress{background:#fff0f6;border:1px solid #f1d2df;border-radius:20px;color:#8b4566;padding:6px 11px;font-size:.83rem;font-weight:750}
.lf-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}
.lf-week-item{min-height:83px;border:1px solid #f0d6e0;border-radius:13px;background:#fff8fa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;padding:8px 3px;font-family:inherit;color:#83586c;font-size:.8rem}
.lf-week-item strong{font-size:1rem}
.lf-week-item.lf-done{background:#fbe4ed;border-color:#e5afc4;color:#773653}
.lf-week-item.lf-current{outline:2px solid #b95a83;outline-offset:1px}
.lf-week-item small{font-size:.72rem}
.lf-subtle{color:#957787;font-size:.86rem;margin:13px 0 0}
.lf-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.lf-stage{background:#fff8fb;border:1px solid #eed6e0;border-radius:15px;padding:20px;text-align:center}
.lf-stage-today{background:#fff0f6;border-color:#e7b5ca}
.lf-stage-icon{display:grid;place-items:center;background:white;border:1px solid #edd2de;border-radius:50%;width:38px;height:38px;margin:0 auto 12px;color:#a84d76;font-size:19px}
.lf-stage h3{color:#7e3b5d;margin:0 0 8px;font-size:1rem}
.lf-stage p{font-size:.88rem;color:#806577;margin:0;line-height:1.55}
.lf-explainer p{color:#73586a;line-height:1.78}
.lf-explainer a{color:#a43b70}
.lf-ad{max-width:950px;margin:28px auto 0}
.lf-footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 20px;margin:12px 0}
.lf-footer-links a{color:inherit}
@media(max-width:700px){.lf-main{padding-left:15px;padding-right:15px}.lf-card{padding:28px 16px}.lf-section{padding:18px 14px}.lf-roadmap{grid-template-columns:1fr}.lf-week{gap:4px}.lf-week-item{min-height:69px;border-radius:9px;font-size:.7rem;padding:6px 0}.lf-week-item small{font-size:.6rem}.lf-week-item strong{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.lf-envelope{transform:none}}

/* Phase 8.5: gentle one-time reveal, theme labels and accessible history. */
.lf-theme{display:inline-block!important;margin:5px 0 10px!important;padding:5px 12px;border-radius:999px;background:#fff1f6;border:1px solid #f0cddc;color:#955071!important;font-size:.78rem;font-weight:750;letter-spacing:.03em;line-height:1.4!important}
.lf-week-item.lf-clickable{cursor:pointer;appearance:none;-webkit-appearance:none;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}
.lf-week-item.lf-clickable:hover{transform:translateY(-2px);box-shadow:0 5px 12px rgba(125,47,87,.13)}
.lf-history-dialog{width:min(92vw,550px);max-height:min(85vh,730px);overflow:auto;border:1px solid #efc5d6;border-radius:20px;background:#fffafd;color:#603b4e;box-shadow:0 18px 65px rgba(73,23,51,.22);padding:0}
.lf-history-dialog::backdrop{background:rgba(49,19,40,.48)}
.lf-history-inner{position:relative;padding:32px 25px 25px}
.lf-history-inner h2{font-size:1.6rem;color:#793957;margin:9px 0 8px}
.lf-history-inner>p:not(.lf-theme){line-height:1.7}
.lf-history-date{font-size:.88rem;color:#9d617c}
.lf-dialog-close{position:absolute;top:10px;right:12px;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;margin:0;display:grid;place-items:center;flex:none;background:#fff0f6;border:1px solid #eed1de;border-radius:50%;color:#743c58;font-size:1.55rem;line-height:1;cursor:pointer}
.lf-dialog-close:focus-visible{outline:3px solid #7b386c;outline-offset:2px}
@keyframes lf-unseal{0%{transform:rotate(-5deg) scale(1)}40%{transform:rotate(0deg) scale(1.08)}100%{transform:rotate(-5deg) scale(1)}}
@keyframes lf-soft-reveal{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.lf-card.lf-just-opened .lf-envelope{animation:lf-unseal .85s ease-out both}
.lf-card.lf-just-opened .lf-result{animation:lf-soft-reveal .75s ease-out both}
@media(prefers-reduced-motion:reduce){.lf-card.lf-just-opened .lf-envelope,.lf-card.lf-just-opened .lf-result{animation:none}.lf-week-item.lf-clickable{transition:none}}
