@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--cream:#f7efe7;--cream2:#fffaf5;--ink:#171414;--gold:#c9922d;--gold2:#e9c777;--pink:#df7f8c;--pink2:#f5d9dc;--line:#ead8c6;--muted:#786f69;--shadow:0 18px 50px rgba(56,36,20,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}
body:after{content:"";display:block;height:96px}.shell{min-height:100vh;max-width:1080px;margin:auto;padding:18px 18px 32px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:4px 0 20px}.brand{display:flex;align-items:center;gap:10px}.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover}.brand strong{font-family:"Playfair Display",serif;font-size:19px}.brand span{display:block;color:var(--gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.icon-btn{width:42px;height:42px;border:1px solid var(--line);background:#fffaf5;border-radius:50%;font-size:20px}
.grid{display:grid;gap:16px}.card,.hero,.current-card,.finish-card,.welcome{border:1px solid var(--line);box-shadow:var(--shadow)}.card{background:rgba(255,250,245,.88);border-radius:24px;padding:24px}.hero{padding:30px;border-radius:30px;background:linear-gradient(135deg,#fffaf5,#f4e4d7)}.welcome{padding:28px;border-radius:30px;background:linear-gradient(135deg,#fffaf5,#f7e9dd);box-shadow:none}
h1,h2,h3{font-family:"Playfair Display",serif;margin:0 0 10px}h1{font-size:42px;line-height:1.05}h2{font-size:28px;line-height:1.12}h3{font-size:20px}.lead{font-size:17px;line-height:1.65}.muted{color:var(--muted);line-height:1.65}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:700}.small{font-size:12px}.pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#f8e5e7;color:#a74f5b;font-size:11px;font-weight:700}
.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:14px;padding:13px 18px;font-weight:700;text-decoration:none;background:var(--ink);color:#fff}.btn.pink{background:var(--pink)}.btn.gold{background:var(--gold)}.btn.light{background:#fffdfa;color:var(--ink);border:1px solid var(--line)}.btn.full{width:100%;margin-top:18px}.text-btn{background:none;border:0;color:var(--muted);padding:10px;text-decoration:underline}.stack{display:grid;gap:12px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.right{margin-left:auto}
.progress{height:9px;border-radius:999px;background:#eadfd6;overflow:hidden}.progress>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--gold))}.progress-label{font-size:12px;color:var(--muted)}
.current-card{background:#1a1818;color:#fff;border-radius:28px;padding:26px}.current-card h2{font-size:34px}.current-card p{color:#e9dfd8;line-height:1.65}.current-card .progress{background:#403a37}.current-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.current-card .pill{background:#f5d9dc;color:#8f3d48}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quick-card{display:grid;grid-template-columns:auto 1fr;column-gap:13px;align-items:center;text-align:left;padding:18px;background:#fffaf5;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.quick-card span{grid-row:span 2;font-size:28px}.quick-card strong{font-size:16px}.quick-card small{color:var(--muted);margin-top:3px}.mini-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.progress-circle{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;border:6px solid #f2d9da;color:#a64e58;font-weight:700}
.day-list{display:grid;gap:10px}.day{width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;text-align:left;padding:15px 16px;background:#fffaf5;border:1px solid var(--line);border-radius:18px}.day:hover{transform:translateY(-1px)}.day.done{border-color:#d9b65f}.day.locked{opacity:.52}.day.current{box-shadow:inset 0 0 0 2px var(--pink)}.day-num{font-family:"Playfair Display",serif;font-size:21px}.day small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.back-link{border:0;background:none;color:var(--muted);font-weight:700;text-align:left;padding:4px 0}.day-hero h1{max-width:800px}.content-card{padding:27px}.section-icon{font-size:28px;margin-bottom:8px}.rich-copy{white-space:pre-line;line-height:1.85;font-size:16px;color:#423a35;margin:20px 0}.resource-box{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:18px;background:#f9ead8;border:1px solid #edd8bd}.resource-box>div{display:flex;gap:12px;align-items:center}.resource-box>div>span{font-size:24px}.resource-box small{display:block;color:var(--muted);margin-top:3px}
.step-head{display:flex;gap:14px;align-items:center}.step-head>span{width:38px;height:38px;border-radius:50%;background:#f5d9dc;color:#a84e59;display:grid;place-items:center;font-weight:700}.exercise{padding:17px;background:#f8eee7;border-radius:17px;border:1px solid var(--line);margin:16px 0;line-height:1.7}.exercise strong{display:block;margin-bottom:5px;color:#8d5c20}textarea,input,select{width:100%;border:1px solid var(--line);border-radius:14px;background:#fffdfa;padding:13px 14px;outline:none}textarea{min-height:150px;resize:vertical}textarea:focus,input:focus{border-color:var(--gold)}audio{width:100%;margin:14px 0}.finish-card{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#1a1818;color:#fff;border-radius:25px;padding:24px}.finish-card p{color:#d8cfca;margin:0}
.bonus-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bonus-card{background:#fffaf5;border:1px solid var(--line);border-radius:24px;padding:23px;box-shadow:var(--shadow)}.bonus-badge{font-size:28px;margin-bottom:10px}.bonus-card p{color:var(--muted);line-height:1.7}.bonus-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.bonus-bottom span{font-size:12px;color:var(--muted)}
.auth{max-width:500px;margin:7vh auto}.auth-logo{width:130px;height:130px;display:block;object-fit:cover;border-radius:50%;margin:0 auto 18px}.auth{text-align:center}.auth .stack{text-align:left}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#f0e5dc;padding:5px;border-radius:14px;margin:24px 0}.tab{border:0;background:transparent;border-radius:10px;padding:11px;font-weight:700;color:var(--muted)}.tab.active{background:#fffaf5;color:var(--ink);box-shadow:0 3px 12px rgba(0,0,0,.06)}.notice{padding:14px 16px;border-radius:14px;background:#f8e9e2;border:1px solid var(--line);line-height:1.6}.notice.success{background:#f3eedc}.notice.danger{background:#fdebed;color:#8b3540}
.bottom-nav{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:20;width:min(650px,calc(100% - 24px));display:grid;grid-template-columns:repeat(4,1fr);padding:7px;background:rgba(255,250,245,.96);backdrop-filter:blur(15px);border:1px solid var(--line);box-shadow:0 16px 40px rgba(30,20,10,.18);border-radius:22px}.bottom-nav button{border:0;background:transparent;border-radius:16px;padding:8px 4px;color:#837871;display:grid;gap:3px;place-items:center}.bottom-nav button span{font-size:18px;line-height:1}.bottom-nav button small{font-size:10px;font-weight:700}.bottom-nav button.active{background:#f5d9dc;color:#a54b56}
.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.admin-page .hero{margin-bottom:0}.admin-day{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fffaf5}.admin-day summary{cursor:pointer}.dayform{margin-top:15px}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.theme-number{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f5d9dc;color:#a84e58;font-weight:700}.bonusform{display:grid;gap:10px}.admin-page label{font-size:13px}.admin-page input[type=checkbox]{width:auto}
@media(max-width:720px){.shell{padding:12px 12px 25px}h1{font-size:34px}.hero{padding:24px}.card{padding:19px}.quick-grid,.bonus-grid,.theme-grid{grid-template-columns:1fr}.resource-box,.finish-card{align-items:flex-start;flex-direction:column}.resource-box .btn,.finish-card .btn{width:100%}.current-card{padding:22px}.current-card h2{font-size:29px}}
@media(max-width:430px){.brand strong{font-size:17px}.brand img{width:42px;height:42px}.day{grid-template-columns:34px 1fr auto;padding:13px}.bottom-nav{bottom:8px}}

/* V1 — accueil, profil, parcours guidé et partage WhatsApp */
.welcome-profile{display:flex;justify-content:space-between;align-items:center;gap:24px}.welcome-copy{min-width:0}.welcome-progress{width:112px;display:grid;place-items:center;gap:6px;flex:0 0 112px}.welcome-progress .progress-circle{width:92px;height:92px;border-width:7px;background:#fffaf5;font-family:"Playfair Display",serif;font-size:24px}.welcome-progress span{font-size:10px;letter-spacing:.16em;color:var(--muted);font-weight:700}
.whatsapp-card{display:flex;align-items:flex-start;gap:18px;background:#fffaf5}.whatsapp-icon{width:54px;height:54px;flex:0 0 54px;border-radius:18px;background:#f5d9dc;display:grid;place-items:center;font-size:28px}.whatsapp-card h2{margin-top:3px}.whatsapp-card p{color:var(--muted);line-height:1.65}.whatsapp-note{font-weight:700;color:#8b6331!important}.whatsapp-card .btn{margin-top:4px}
.step-screen{max-width:820px;margin:auto;width:100%}.step-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:24px}.step-progress span{height:5px;border-radius:99px;background:#eadfd6}.step-progress span.active{background:var(--pink)}.step-progress span.done{background:var(--gold)}.question{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.question strong{display:block;font-size:16px;margin-bottom:5px}.question p{color:var(--muted);line-height:1.65;margin-top:0}.question textarea{min-height:115px}.audio-card{background:#f8eee7;border:1px solid var(--line);border-radius:18px;padding:16px;margin:18px 0}.audio-label{font-weight:700;color:#745128}.check-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);background:#fffdfa;border-radius:16px;margin:16px 0;cursor:pointer}.check-card input{width:20px;height:20px;accent-color:var(--pink);flex:0 0 auto}.check-card span{font-weight:700}.victory-summary{display:grid;gap:12px;margin:20px 0}.victory-summary>div{padding:16px;border-radius:16px;background:#f8eee7;border:1px solid var(--line)}.victory-summary p{line-height:1.7;color:var(--muted);white-space:pre-wrap}.share-card{max-width:820px;margin:auto}.share-card textarea{min-height:240px;font-size:15px;line-height:1.7}.share-tip{font-size:13px;color:var(--muted);margin-top:14px}.share-hero{text-align:center}.profile-page{max-width:760px;margin:auto}.profile-page label{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--muted)}.profile-page input:disabled{opacity:.7;background:#f3ece6}.profile-page .btn.full{margin-top:0}
@media(max-width:600px){.welcome-profile{align-items:flex-start}.welcome-progress{width:82px;flex-basis:82px}.welcome-progress .progress-circle{width:72px;height:72px;font-size:20px}.welcome-copy h1{font-size:34px}.whatsapp-card{flex-direction:column}.whatsapp-card .btn{width:100%}.actions{display:grid}.actions .btn{width:100%}}


.journal-part{padding:.8rem 0;border-top:1px solid rgba(0,0,0,.07)}
.journal-part:first-of-type{border-top:0}
.journal-part h3{margin:0 0 .35rem;font-size:1rem}
.journal-part p{margin:0;white-space:pre-wrap}
.support-card{display:flex;gap:1rem;align-items:flex-start}
.support-card .section-icon{flex:0 0 auto}
