@font-face{font-family:'Bricolage Grotesque';src:url(/assets/fonts/brico.woff2) format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:'Literata';src:url(/assets/fonts/lit.woff2) format('woff2');font-weight:400 500;font-display:swap}
@font-face{font-family:'Literata';src:url(/assets/fonts/lit-i.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}

/* Direction 1B « Lumineux » : papier clair, encre presque noire, soleil jaune, cartes pastel menthe et lilas, grandes formes arrondies */
:root{
  --paper:#FBFAF7; --surface:#FFFFFF; --ink:#1D1C22; --muted:#55535C; --faint:#8A8892; --line:#E7E4DC; --chip:#EFEDE7;
  --lapis:#1D1C22; --lapis-soft:#EFEDE7; --gold:oklch(0.55 0.13 85); --hl:oklch(0.93 0.09 90); --hl-ink:#1D1C22;
  --sun:oklch(0.85 0.13 85); --sun-ink:#1D1C22; --sun-soft:oklch(0.95 0.05 88); --rose-soft:oklch(0.94 0.04 300);
  --sage:oklch(0.5 0.11 160); --sage-soft:oklch(0.93 0.06 160); --mint:oklch(0.85 0.13 160);
  --sky:oklch(0.5 0.1 245); --sky-soft:oklch(0.93 0.04 245);
  --plum:oklch(0.5 0.14 300); --plum-soft:oklch(0.93 0.05 300); --lilac:oklch(0.85 0.13 300);
  --block:#1D1C22; --block-2:#2A2930; --block-ink:#FBFAF7; --block-muted:#C9C7CF;
  --shadow:0 12px 40px rgba(29,28,34,.10);
  --display:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;
  --text:"Literata","Georgia",serif;
  --ui:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;
  --read-size:1.18rem; --read-lh:1.75;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#141317; --surface:#1D1C22; --ink:#F1EFE9; --muted:#A9A7B0; --faint:#7E7C86; --line:#2C2B32; --chip:#26252C;
  --lapis:#F1EFE9; --lapis-soft:#26252C; --gold:oklch(0.83 0.12 85); --hl:oklch(0.38 0.07 85); --hl-ink:#FBF6E6;
  --sun:oklch(0.85 0.13 85); --sun-soft:oklch(0.3 0.05 85); --rose-soft:oklch(0.29 0.04 300);
  --sage:oklch(0.8 0.11 160); --sage-soft:oklch(0.29 0.05 160); --mint:oklch(0.75 0.12 160);
  --sky:oklch(0.8 0.08 245); --sky-soft:oklch(0.29 0.04 245);
  --plum:oklch(0.8 0.1 300); --plum-soft:oklch(0.29 0.05 300); --lilac:oklch(0.75 0.12 300);
  --block:#0D0C10; --block-2:#1F1E24; --block-ink:#F1EFE9; --block-muted:#A9A7B0;
  --shadow:0 12px 40px rgba(0,0,0,.35); color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#141317; --surface:#1D1C22; --ink:#F1EFE9; --muted:#A9A7B0; --faint:#7E7C86; --line:#2C2B32; --chip:#26252C;
  --lapis:#F1EFE9; --lapis-soft:#26252C; --gold:oklch(0.83 0.12 85); --hl:oklch(0.38 0.07 85); --hl-ink:#FBF6E6;
  --sun:oklch(0.85 0.13 85); --sun-soft:oklch(0.3 0.05 85); --rose-soft:oklch(0.29 0.04 300);
  --sage:oklch(0.8 0.11 160); --sage-soft:oklch(0.29 0.05 160); --mint:oklch(0.75 0.12 160);
  --sky:oklch(0.8 0.08 245); --sky-soft:oklch(0.29 0.04 245);
  --plum:oklch(0.8 0.1 300); --plum-soft:oklch(0.29 0.05 300); --lilac:oklch(0.75 0.12 300);
  --block:#0D0C10; --block-2:#1F1E24; --block-ink:#F1EFE9; --block-muted:#A9A7B0;
  --shadow:0 12px 40px rgba(0,0,0,.35); color-scheme:dark}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{background:var(--paper);color:var(--ink);font-family:var(--ui);-webkit-font-smoothing:antialiased}
button,input{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--lapis);outline-offset:2px;border-radius:6px}
/* Barre de maquette (hors site) */
.mock{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:center;padding:10px 16px;font-size:12.5px;color:var(--muted);border-bottom:1px solid var(--line)}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:2px;background:var(--surface)}
.seg button{border:0;background:none;padding:5px 12px;border-radius:999px;cursor:pointer;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--lapis-soft);color:var(--lapis);font-weight:600}
.stage{padding-block:24px;padding-inline:16px;display:flex;justify-content:center}
.site{container-type:inline-size;width:100%;max-width:1180px;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:clip;position:relative;transition:max-width .35s ease}
.stage.phone .site{max-width:390px;border-radius:34px;border-width:8px;border-color:var(--ink)}
/* En-tête */
.hd{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:24px;padding:14px 28px;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.logo{font-family:var(--display);font-style:italic;font-weight:600;font-size:1.6rem;letter-spacing:-.01em;color:var(--ink);background:none;border:0;cursor:pointer;padding:0;white-space:nowrap}
.logo span{color:var(--gold)}
.nav{display:flex;gap:4px;margin-left:auto}
.nav button{border:0;background:none;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:14.5px;color:var(--muted)}
.nav button:hover{color:var(--ink);background:var(--lapis-soft)}
.nav button.on{color:var(--ink);font-weight:600}
.btn{border:0;border-radius:999px;padding:10px 18px;font-weight:600;font-size:14.5px;cursor:pointer;transition:transform .12s ease,background .2s}
.btn:active{transform:scale(.97)}
.btn.pri{background:var(--lapis);color:var(--paper)}
.btn.ghost{background:var(--lapis-soft);color:var(--lapis)}
.eyebrow{font-family:var(--ui);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600}
h1,h2,h3{font-family:var(--display);font-weight:600;text-wrap:balance;margin:0;letter-spacing:-.01em}
/* Accueil */
.home{display:grid;gap:56px;padding:48px 28px 64px}
.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:end}
.hero h1{font-size:clamp(2.6rem,6cqi,4.4rem);line-height:1.02}
.hero h1 em{color:var(--lapis)}
.hero p{font-family:var(--text);color:var(--muted);font-size:1.08rem;line-height:1.6;max-width:34rem;margin:16px 0 24px}
.search{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:6px 6px 6px 16px;box-shadow:var(--shadow);max-width:34rem}
.search input{flex:1;min-width:0;border:0;background:none;padding:10px 0;font-size:15.5px;outline:none}
.hints{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:13px;color:var(--muted)}
.hints button{border:1px solid var(--line);background:none;border-radius:999px;padding:4px 10px;cursor:pointer;color:var(--muted)}
.hints button:hover{border-color:var(--lapis);color:var(--lapis)}
.vdj{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow);position:relative}
.vdj blockquote{margin:14px 0 18px;font-family:var(--display);font-size:1.7rem;line-height:1.25;font-weight:500}
.vdj cite{font-style:normal;font-family:var(--ui);font-size:13.5px;color:var(--lapis);font-weight:600}
.vdj .row{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap}
.sec{display:grid;gap:20px}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sec-h h2{font-size:2rem}
.link{background:none;border:0;color:var(--lapis);font-weight:600;font-size:14px;cursor:pointer;padding:0}
.resume{display:flex;align-items:center;gap:20px;background:var(--lapis-soft);border-radius:16px;padding:20px 24px;flex-wrap:wrap}
.resume .t{flex:1;min-width:200px}
.resume strong{font-family:var(--display);font-size:1.45rem;display:block}
.resume small{color:var(--muted);font-size:13.5px}
.bar{height:6px;border-radius:9px;background:color-mix(in srgb,var(--lapis) 18%,transparent);overflow:hidden;margin-top:10px}
.bar i{display:block;height:100%;background:var(--lapis);border-radius:9px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;display:grid;gap:10px;cursor:pointer;text-align:left;transition:border-color .2s,transform .2s}
.plan:hover{border-color:var(--lapis);transform:translateY(-2px)}
.plan .d{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.plan h3{font-size:1.45rem}
.plan p{margin:0;font-family:var(--text);font-size:.95rem;color:var(--muted);line-height:1.55}
.themes{display:flex;flex-wrap:wrap;gap:10px}
.theme{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:12px 16px;cursor:pointer;text-align:left;display:grid;gap:2px;min-width:140px}
.theme b{font-family:var(--display);font-size:1.25rem;font-weight:600}
.theme span{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.theme:hover{border-color:var(--lapis)}
.news{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:36px}
.news h2{font-size:2.1rem}
.news p{font-family:var(--text);color:var(--muted);line-height:1.6;margin:10px 0 0}
.news form{display:flex;gap:8px;flex-wrap:wrap}
.news input{flex:1;min-width:180px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:11px 18px;outline:none}
.news input:focus{border-color:var(--lapis)}
.news .ok{font-size:13.5px;color:var(--lapis);margin-top:10px}
.ft{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13.5px;color:var(--muted);padding:28px;border-top:1px solid var(--line)}
.ft a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.ft .sis{display:flex;gap:18px;flex-wrap:wrap}
.don{font-size:13.5px;color:var(--muted)}
.don button{margin-left:6px}
/* Lecture */
.prog{position:sticky;top:61px;z-index:4;height:2px;background:transparent}
.prog i{display:block;height:100%;width:0;background:var(--lapis);transition:width .1s linear}
.reader{max-width:38rem;margin:0 auto;padding:40px 24px 120px}
.crumbs{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:36px;flex-wrap:wrap}
.pick{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 14px;font-size:14px;cursor:pointer}
.tools{display:flex;gap:6px}
.icon{width:38px;height:38px;border-radius:999px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;cursor:pointer;font-family:var(--display);font-size:1.05rem}
.icon:hover{border-color:var(--lapis);color:var(--lapis)}
.ch-head{text-align:center;margin-bottom:36px}
.ch-head h1{font-size:clamp(2.8rem,9cqi,4rem);line-height:1;margin:8px 0 6px}
.ch-head .n{font-family:var(--display);font-style:italic;font-size:1.3rem;color:var(--muted)}
.sub{font-family:var(--ui);font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin:0 0 14px}
.text{font-family:var(--text);font-size:var(--read-size);line-height:var(--read-lh);hyphens:auto;text-wrap:pretty}
.text.sans{font-family:var(--ui)}
.text p{margin:0 0 1em}
.v{cursor:pointer;border-radius:4px;transition:background .2s;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:1px 0}
.v:hover{background:color-mix(in srgb,var(--lapis) 7%,transparent)}
.v.sel{background:color-mix(in srgb,var(--lapis) 14%,transparent)}
.v.hl{background:var(--hl);color:var(--hl-ink)}
.v sup{font-family:var(--ui);font-size:.62em;font-weight:600;color:var(--lapis);margin:0 .28em 0 .1em;font-variant-numeric:tabular-nums;vertical-align:.45em}
.text.lines .v{display:block;margin-bottom:.45em}
.drop::first-letter{font-family:var(--display);font-size:4.2em;float:left;line-height:.82;padding:.06em .1em 0 0;color:var(--lapis);font-weight:600}
.pager{display:flex;justify-content:space-between;gap:12px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line)}
.pager :is(button,a){color:inherit;text-decoration:none;background:none;border:0;cursor:pointer;text-align:left;padding:0}
.pager small{display:block;font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.pager b{font-family:var(--display);font-size:1.35rem;font-weight:600}
.note{font-size:12.5px;color:var(--muted);text-align:center;margin-top:28px}
/* Barre d'actions sur un verset et panneau de réglages */
.sheet{position:sticky;bottom:16px;z-index:6;margin:0 auto;width:max-content;max-width:calc(100% - 32px);display:flex;gap:4px;background:var(--ink);color:var(--paper);border-radius:999px;padding:6px;box-shadow:0 12px 32px rgba(0,0,0,.25);transform:translateY(20px);opacity:0;pointer-events:none;transition:transform .25s cubic-bezier(.2,.8,.2,1),opacity .2s}
.sheet.show{transform:none;opacity:1;pointer-events:auto}
.sheet button{border:0;background:none;color:inherit;padding:8px 13px;border-radius:999px;cursor:pointer;font-size:13.5px;font-weight:500;white-space:nowrap}
.sheet button:hover{background:color-mix(in srgb,var(--paper) 14%,transparent)}
.sheet .ref{padding:8px 10px 8px 14px;font-weight:600;opacity:.75;font-size:13.5px}
.panel{position:absolute;right:24px;top:118px;z-index:7;width:290px;max-width:calc(100% - 32px);background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px;display:grid;gap:16px}
.panel label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;display:block;margin-bottom:8px}
.panel .seg{display:flex}
.panel .seg button{flex:1}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;background:var(--ink);color:var(--paper);padding:10px 18px;border-radius:999px;font-size:14px;transition:.25s;z-index:20;pointer-events:none}
.toast.show{opacity:1;transform:translate(-50%,0)}
.tabbar{display:none}
@container (max-width:720px){
  .hd{padding:12px 18px;gap:12px}
  .nav{display:none}
  .home{padding:28px 18px 40px;gap:44px}
  .hero{grid-template-columns:1fr;gap:28px}
  .plans{grid-template-columns:1fr}
  .news{grid-template-columns:1fr;gap:18px}
  .theme{min-width:0;flex:1 1 40%}
  .vdj blockquote{font-size:1.45rem}
  .reader{padding:28px 20px 110px}
  .prog{top:57px}
  .panel{right:16px;top:110px}
  .tabbar{display:flex;position:sticky;bottom:0;z-index:5;justify-content:space-around;background:var(--surface);border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))}
  .tabbar button{border:0;background:none;display:grid;justify-items:center;gap:2px;font-size:11px;color:var(--muted);cursor:pointer;padding:4px 10px}
  .tabbar button b{font-family:var(--display);font-size:1.25rem;font-weight:600;line-height:1}
  .tabbar button.on{color:var(--lapis)}
  .sheet{bottom:76px}
  .ft{padding:22px 18px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* Touches de couleur */
.hero{position:relative}
.home{background:radial-gradient(60rem 26rem at 85% -4rem,var(--sun-soft),transparent 70%),radial-gradient(40rem 22rem at -10% 10rem,var(--rose-soft),transparent 70%)}
.vdj{background:linear-gradient(150deg,var(--sun-soft),var(--rose-soft));border-color:transparent}
.vdj::before{content:"";position:absolute;right:22px;top:22px;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle,var(--sun) 0 40%,color-mix(in srgb,var(--sun) 30%,transparent) 41% 100%)}
.vdj .btn.ghost{background:var(--surface)}
.resume{background:linear-gradient(120deg,var(--lapis),color-mix(in srgb,var(--lapis) 70%,var(--gold)));color:var(--paper)}
.resume small{color:color-mix(in srgb,var(--paper) 80%,transparent)}
.resume .bar{background:color-mix(in srgb,var(--paper) 25%,transparent)}
.resume .bar i{background:var(--sun)}
.resume .btn.pri{background:var(--sun);color:#2B1D21}
.plan{border-top:5px solid var(--c);background:linear-gradient(to bottom,var(--cs),var(--surface) 55%)}
.plan:nth-child(1){--c:var(--sky);--cs:var(--sky-soft)}
.plan:nth-child(2){--c:var(--sage);--cs:var(--sage-soft)}
.plan:nth-child(3){--c:var(--sun);--cs:var(--sun-soft)}
.plan:hover{border-color:var(--c)}
.plan .d{color:var(--c);font-weight:600}
.theme{background:var(--cs);border-color:transparent}
.theme b{color:var(--c)}
.theme:hover{border-color:var(--c)}
.theme:nth-child(4n+1){--c:var(--sky);--cs:var(--sky-soft)}
.theme:nth-child(4n+2){--c:var(--gold);--cs:var(--sun-soft)}
.theme:nth-child(4n+3){--c:var(--sage);--cs:var(--sage-soft)}
.theme:nth-child(4n+4){--c:var(--plum);--cs:var(--plum-soft)}
.news{background:var(--sage-soft);border:0;border-radius:20px;padding:36px}
.news .eyebrow{color:var(--sage)}
.btn.pri{box-shadow:0 4px 14px color-mix(in srgb,var(--lapis) 30%,transparent)}
.ch-head{padding:28px 16px 22px;border-radius:20px;background:linear-gradient(150deg,var(--sun-soft),var(--rose-soft))}
.drop::first-letter{color:var(--gold)}
.prog i{background:linear-gradient(90deg,var(--sun),var(--lapis))}
@container (max-width:720px){.news{padding:24px}}


.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.trsel{appearance:none;padding-right:14px;max-width:16rem}
.tools{flex-wrap:wrap}
.picker,.cmp{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:18px;margin-bottom:28px;display:grid;gap:14px}
.picker[hidden],.cmp[hidden]{display:none}
.bk{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:6px}
.bk button,.chs button{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:8px 10px;cursor:pointer;text-align:left;font-size:14px}
.bk button:hover,.chs button:hover{border-color:var(--lapis);color:var(--lapis)}
.bk button.cur,.chs button.cur{background:var(--lapis);color:var(--paper);border-color:var(--lapis)}
.chs{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.8rem,1fr));gap:6px}
.chs button{text-align:center;font-variant-numeric:tabular-nums}
.pk-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pk-h b{font-family:var(--display);font-size:1.4rem}
.cmp{position:sticky;bottom:90px;z-index:6;max-height:60vh;overflow:auto;margin:0 auto 12px;width:min(38rem,calc(100% - 32px))}
.cmp .it{padding:10px 0;border-top:1px solid var(--line);font-family:var(--text);line-height:1.6}
.cmp .it small{display:block;font-family:var(--ui);font-size:12px;font-weight:600;color:var(--gold);letter-spacing:.06em;text-transform:uppercase}
.results{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.results li button{all:unset;cursor:pointer;display:block;padding:12px 14px;border-radius:12px;font-family:var(--text);line-height:1.55}
.results li button:hover{background:var(--lapis-soft)}
.results b{font-family:var(--ui);font-size:13px;color:var(--lapis);display:block}
.results mark{background:var(--hl);color:var(--hl-ink);border-radius:3px}
.loading{color:var(--muted);font-style:italic}
.v.flash{animation:flash 1.6s ease}
@keyframes flash{0%,40%{background:var(--hl)}100%{background:transparent}}
.listen{background:var(--lapis);color:var(--paper);border-color:var(--lapis);font-weight:600}
.listen:hover{filter:brightness(1.08)}
.player{position:sticky;bottom:16px;z-index:7;margin:0 auto 12px;width:min(36rem,calc(100% - 32px));display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--paper);border-radius:20px;padding:10px 12px;box-shadow:0 14px 34px rgba(0,0,0,.28)}
.player[hidden]{display:none}
.pp{width:42px;height:42px;flex:none;border-radius:50%;border:0;background:var(--sun);color:#2B1D21;display:grid;place-items:center;cursor:pointer}
.pl-t{flex:1;min-width:0}
.pl-t b{font-family:var(--display);font-size:1.15rem;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-t small{font-size:12px;opacity:.7}
.pl-t .bar{height:4px;margin-top:6px;background:color-mix(in srgb,var(--paper) 22%,transparent)}
.pl-t .bar i{background:var(--sun);transition:width .3s}
.sp{border:0;background:color-mix(in srgb,var(--paper) 12%,transparent);color:inherit;border-radius:999px;padding:7px 10px;cursor:pointer;font-size:13px;font-weight:600;max-width:9rem}
.sp option{color:#2B1D21}
.v.speaking{background:var(--sun-soft);box-shadow:0 0 0 2px var(--sun-soft)}
@container (max-width:720px){#ttsVoice{display:none}.player{bottom:76px}}


/* Nouveautés : renvois, colonnes, plans, méditation, images, espace */
.sheet{max-width:calc(100% - 24px);overflow-x:auto;scrollbar-width:none}
.sheet::-webkit-scrollbar{display:none}
.intro{display:grid;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin:-12px 0 28px}
.intro .meta{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--lapis-soft);color:var(--lapis)}
.chip.g{background:var(--sun-soft);color:var(--gold)}
.chip.s{background:var(--sage-soft);color:var(--sage)}
.intro p{margin:0;font-family:var(--text);line-height:1.55;color:var(--muted)}
.par{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.par .h{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:6px}
.par .cell{padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);min-width:0}
.par .cell .v{display:block}
.par .v2 sup{font-family:var(--ui);font-size:.62em;font-weight:600;color:var(--muted);margin-right:.28em;vertical-align:.45em}
.v .nm{display:inline-block;width:.5em;height:.5em;border-radius:50%;background:var(--sage);margin-left:.2em;vertical-align:.2em}
.refs{display:grid;gap:2px}
.refs button{all:unset;cursor:pointer;display:block;padding:10px 0;border-top:1px solid var(--line);font-family:var(--text);line-height:1.55}
.refs button:hover b{text-decoration:underline}
.refs b{display:block;font-family:var(--ui);font-size:13px;color:var(--lapis)}
.refs small{display:block;font-size:11.5px;color:var(--muted);padding-top:8px;border-top:1px solid var(--line)}
.notebox textarea{width:100%;min-height:110px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--paper);color:var(--ink);font-family:var(--text);font-size:1rem;line-height:1.5;resize:vertical}
.notebox .row{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.colsw{display:inline-flex;align-items:center;gap:6px}
.pick.on{background:var(--lapis-soft);color:var(--lapis);border-color:var(--lapis);font-weight:600}
/* Pages plans et espace */
.page{padding:40px 28px 72px;display:grid;gap:28px;max-width:58rem;margin:0 auto}
.page h1{font-size:clamp(2.4rem,6cqi,3.4rem);line-height:1.05}
.page .lead{font-family:var(--text);color:var(--muted);margin:8px 0 0;line-height:1.6;max-width:40rem}
.ptabs{display:flex;gap:8px;flex-wrap:wrap}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.stat b{display:block;font-family:var(--display);font-size:2.2rem;line-height:1;font-variant-numeric:tabular-nums}
.stat span{font-size:13px;color:var(--muted)}
.stat.fire b{color:var(--gold)}
.today{background:linear-gradient(130deg,var(--sun-soft),var(--rose-soft));border-radius:20px;padding:22px 24px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.today .t{flex:1;min-width:220px}
.today small{color:var(--muted);font-size:13px}
.today strong{display:block;font-family:var(--display);font-size:1.6rem}
.cal{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.3rem,1fr));gap:5px}
.cal button{aspect-ratio:1;max-width:100%;border:1px solid var(--line);border-radius:9px;background:var(--surface);font-size:12px;cursor:pointer;font-variant-numeric:tabular-nums;color:var(--muted)}
.cal button.done{background:var(--sage);border-color:var(--sage);color:var(--paper);font-weight:600}
.cal button.cur{outline:2px solid var(--gold);outline-offset:1px;color:var(--ink);font-weight:700}
.days{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.days li{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 14px}
.days li.done{opacity:.6}
.days input{width:20px;height:20px;accent-color:var(--sage);flex:none}
.days .d{font-size:12px;color:var(--muted);width:4.2rem;flex:none;font-variant-numeric:tabular-nums}
.days .r{flex:1;min-width:0;font-family:var(--text)}
.days .go{flex:none}
.list{display:grid;gap:8px}
.item{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px;display:grid;gap:4px;text-align:left;cursor:pointer;font:inherit;color:inherit}
.item:hover{border-color:var(--lapis)}
.item b{font-size:13px;color:var(--lapis)}
.item span{font-family:var(--text);line-height:1.5}
.item em{font-style:normal;font-size:14px;color:var(--sage);font-family:var(--ui)}
.empty{color:var(--muted);font-family:var(--text);font-style:italic}
.sync{font-size:13px;color:var(--muted);background:var(--sky-soft);border-radius:12px;padding:12px 14px}
/* Méditation */
.medi{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:24px 16px calc(24px + env(safe-area-inset-bottom,0px));background:radial-gradient(80vmax 60vmax at 50% 0%,var(--sun-soft),var(--paper) 70%);color:var(--ink);overflow:auto}
.medi .in{max-width:40rem;width:100%;display:grid;gap:26px;justify-items:center;text-align:center}
.breath{width:84px;height:84px;border-radius:50%;background:radial-gradient(circle,var(--sun) 0 35%,color-mix(in srgb,var(--sun) 25%,transparent) 36% 100%);animation:breath 8s ease-in-out infinite}
@keyframes breath{0%,100%{transform:scale(.8);opacity:.75}50%{transform:scale(1.15);opacity:1}}
.medi blockquote{margin:0;font-family:var(--display);font-size:clamp(1.7rem,4.5vw,2.6rem);line-height:1.25;font-weight:500;text-wrap:balance}
.medi cite{font-style:normal;font-weight:600;color:var(--lapis)}
.medi .q{font-family:var(--text);font-style:italic;color:var(--muted);font-size:1.05rem}
.medi .row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.medi .hint{font-size:12.5px;color:var(--muted)}
/* Image de verset */
.imgm{position:fixed;inset:0;z-index:30;background:color-mix(in srgb,#120a0d 72%,transparent);display:grid;place-items:center;padding:16px;overflow:auto}
.imgm .box{background:var(--surface);border-radius:20px;padding:18px;display:grid;gap:14px;width:min(30rem,100%)}
.imgm img{width:100%;border-radius:12px;display:block;aspect-ratio:1;background:var(--line)}
.imgm .row{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.imgm small{color:var(--muted);font-size:12.5px}
@container (max-width:720px){
  .par{grid-template-columns:1fr;gap:0}.par .h:nth-child(2){display:none}
  .par .cell:nth-child(even){padding-top:0;border-bottom:1px solid var(--line);margin-bottom:6px}
  .par .cell:nth-child(odd){border-bottom:0}
  .page{padding:28px 18px 56px}
  .stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.stat{padding:12px}.stat b{font-size:1.7rem}
}


/* ===== Direction 1B : surcharges ===== */
body{font-family:var(--ui)}
h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.03em}
.eyebrow{color:var(--gold);font-weight:700;letter-spacing:.08em}
.site{border-radius:20px}
/* Site en ligne : pleine largeur, sans cadre de maquette */
body{margin:0}
#plDays .go{padding:12px 10px;margin:-12px -10px}
#plDays input{width:22px;height:22px}
.stage{padding:0}
.stage .site{max-width:none;border:0;border-radius:0}
.hd{padding:18px 32px;border-bottom:0;background:color-mix(in srgb,var(--paper) 90%,transparent)}
.logo{font-family:var(--display);font-style:normal;font-weight:700;font-size:1.4rem;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:10px}
.logo .dot{width:26px;height:26px;border-radius:50%;background:var(--sun);display:inline-block}
.nav{gap:4px;align-items:center}
.nav button{font-weight:600;font-size:15px;color:var(--ink);padding:10px 14px;border-radius:12px}
.nav button:hover{background:var(--chip)}
.nav button.on{background:var(--chip)}
.nav button.cta{background:var(--ink);color:var(--paper);padding:11px 18px;border-radius:14px;margin-left:6px}
.nav button.cta:hover{background:var(--ink);opacity:.88}
.btn{border-radius:14px;font-weight:700;padding:12px 20px}
.btn.sm{padding:9px 14px;font-size:14px;border-radius:12px}
.btn.pri{background:var(--ink);color:var(--paper);box-shadow:none}
.btn.ghost{background:var(--chip);color:var(--ink)}
.btn.sun{background:var(--sun);color:var(--sun-ink);padding:14px 24px;border-radius:12px;font-size:16px}
.link{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
/* Accueil */
.home{background:none;padding:40px 32px 64px;gap:72px}
.hero{grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(3rem,7.2cqi,5.4rem);line-height:.95;letter-spacing:-.045em;margin:0}
.hero-t{display:grid;gap:26px}
.hero-t p{margin:0;font-family:var(--ui);font-size:1.2rem;line-height:1.5;color:var(--muted);max-width:28em}
.search{border:2px solid var(--ink);border-radius:18px;padding:7px 7px 7px 20px;box-shadow:none;max-width:36rem;background:var(--surface)}
.search input{font-size:16.5px}
.search input::placeholder{color:var(--faint)}
.hints{margin:0;gap:8px;font-weight:600}
.hints span{color:var(--faint);padding:8px 0}
.hints button{background:var(--chip);border:0;color:var(--ink);padding:8px 14px;font-weight:600}
.hints button:hover{background:var(--sun);color:var(--sun-ink)}
.art{position:relative;min-height:470px;border-radius:28px;background:var(--chip);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:28px}
.shape{position:absolute;border-radius:50%}
.s1{width:62%;aspect-ratio:1;background:var(--sun);right:-12%;top:-14%}
.s2{width:46%;aspect-ratio:1;background:var(--mint);left:-12%;bottom:-16%}
.s3{width:30%;aspect-ratio:1;background:var(--lilac);right:8%;bottom:6%;border-radius:40% 60% 55% 45%}
.vdj{position:relative;z-index:1;background:var(--surface);border:0;border-radius:22px;padding:24px 26px;box-shadow:var(--shadow);max-width:330px}
.vdj::before{display:none}
.vdj blockquote{font-family:var(--text);font-size:1.3rem;line-height:1.4;font-weight:400;margin:12px 0 14px}
.vdj cite{color:var(--muted);font-weight:600}
.vdj .row{margin-top:16px;gap:6px}
.vdj .btn.ghost{background:var(--chip)}
.resume{background:var(--sun-soft);color:var(--ink);border-radius:24px;padding:22px 26px}
.resume strong{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:1.5rem}
.resume small{color:var(--muted)}
.resume .bar{background:color-mix(in srgb,var(--ink) 10%,transparent)}
.resume .bar i{background:var(--sun)}
.resume .btn.pri{background:var(--ink);color:var(--paper)}
.sec{gap:24px}
.sec h2{font-size:clamp(2rem,4.2cqi,2.8rem)}
.paths{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.path{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:24px;min-height:220px;color:#1D1C22;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.path:hover{transform:translateY(-3px)}
.path:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.path .tag{font-size:14.5px;font-weight:600}
.path .ttl{font-family:var(--display);font-size:1.75rem;line-height:1.05;letter-spacing:-.02em;font-weight:700;flex:1}
.path .dsc{font-size:15.5px;line-height:1.5}
.path .cta{font-weight:700;font-size:15px}
.p-sun{background:var(--sun)} .p-mint{background:var(--mint)} .p-lilac{background:var(--lilac)}
.planblock{background:var(--block);color:var(--block-ink);border-radius:28px;padding:44px;display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center}
.planblock h2{font-size:clamp(2rem,4cqi,2.7rem);line-height:1}
.planblock p{color:var(--block-muted);font-size:1.05rem;line-height:1.5;margin:14px 0 0}
.plist{display:grid;gap:10px}
.plist button{all:unset;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;border-radius:16px;background:var(--block-2);color:var(--block-ink)}
.plist button:hover{outline:2px solid var(--sun)}
.plist b{display:block;font-size:1.15rem;font-weight:600}
.plist small{color:var(--block-muted);font-size:14px}
.plist i{font-style:normal;font-size:13px;font-weight:700;padding:7px 13px;border-radius:999px;background:var(--sun);color:#1D1C22;white-space:nowrap}
.themes{gap:10px}
.theme{border:0;border-radius:16px;padding:14px 18px;background:var(--cs)}
.theme b{font-family:var(--display);font-weight:700;color:var(--ink);font-size:1.2rem}
.theme span{color:var(--muted)}
.theme:nth-child(4n+1){--cs:var(--sun-soft)} .theme:nth-child(4n+2){--cs:var(--sage-soft)} .theme:nth-child(4n+3){--cs:var(--plum-soft)} .theme:nth-child(4n+4){--cs:var(--sky-soft)}
.theme:hover{outline:2px solid var(--ink)}
.news{background:var(--chip);border-radius:24px;padding:40px}
.news .eyebrow{color:var(--gold)}
.news h2{font-size:2.2rem;margin-top:8px}
.news p{font-family:var(--ui)}
.news input{border:2px solid var(--ink);border-radius:14px}
.news .ok{color:var(--sage)}
.don{color:var(--muted)}
.ft{font-size:14.5px}
.ft a{border-bottom:0;font-weight:600}
/* Lecture */
.pick{border:0;background:var(--chip);border-radius:12px;font-weight:600}
.pick.on,.pick[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.listen{background:var(--sun);color:var(--sun-ink)}
.icon{border:0;background:var(--chip);border-radius:12px;font-family:var(--display);font-weight:700}
.icon:hover{color:var(--ink);background:var(--sun)}
.ch-head{background:var(--sun-soft);border-radius:28px;padding:32px 16px 26px}
.ch-head h1{font-size:clamp(3rem,10cqi,4.6rem);letter-spacing:-.045em}
.ch-head .n{font-family:var(--ui);font-style:normal;font-weight:600;color:var(--muted);font-size:1.05rem}
.intro{border:0;background:var(--chip);border-radius:20px}
.chip{background:var(--surface);color:var(--ink)}
.chip.g{background:var(--sun);color:#1D1C22} .chip.s{background:var(--surface);color:var(--muted)}
.v sup{color:var(--gold);font-weight:700}
.drop::first-letter{font-family:var(--display);font-weight:800;color:var(--ink)}
.v.sel{background:color-mix(in srgb,var(--sun) 35%,transparent)}
.v.speaking{background:var(--sun-soft);box-shadow:0 0 0 2px var(--sun)}
.sheet{background:var(--ink);color:var(--paper);border-radius:16px}
.picker,.cmp,.panel{border:0;border-radius:22px}
.bk button,.chs button{border:0;background:var(--chip);border-radius:12px;font-weight:600}
.bk button:hover,.chs button:hover{background:var(--sun-soft);color:var(--ink)}
.bk button.cur,.chs button.cur{background:var(--ink);color:var(--paper)}
.par .h,.cmp .it small{color:var(--gold)}
.refs b,.results b,.item b{color:var(--gold)}
.results li button:hover{background:var(--chip)}
.player{background:var(--block);color:var(--block-ink);border-radius:20px}
.pp{background:var(--sun);color:#1D1C22}
.pl-t b{font-family:var(--display);font-weight:700}
.prog i{background:var(--sun)}
.seg{background:var(--chip);border:0}
.seg button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
/* Plans, espace, méditation */
.page h1{letter-spacing:-.045em}
.stat{border:0;background:var(--chip);border-radius:20px}
.stat b{font-family:var(--display);font-weight:800}
.stat.fire{background:var(--sun)} .stat.fire b,.stat.fire span{color:#1D1C22}
.today{background:var(--block);color:var(--block-ink);border-radius:24px}
.today small{color:var(--block-muted)} .today strong{font-family:var(--display);font-weight:700}
.today .bar{background:var(--block-2)} .today .bar i{background:var(--sun)}
.today .btn.pri{background:var(--sun);color:#1D1C22} .today .btn.ghost{background:var(--block-2);color:var(--block-ink)}
.cal button{border:0;background:var(--chip);border-radius:10px;font-weight:600}
.cal button.done{background:var(--mint);color:#1D1C22}
.cal button.cur{outline:2px solid var(--ink);background:var(--sun);color:#1D1C22}
.days li{border:0;background:var(--chip)}
.item{border:0;background:var(--chip);border-radius:16px}
.item:hover{outline:2px solid var(--ink)}
.item em{color:var(--sage)}
.sync{background:var(--sky-soft);color:var(--ink)}
.medi{background:var(--paper)}
.medi .breath{background:var(--sun)}
.medi blockquote{font-family:var(--text);font-weight:400}
.medi cite{color:var(--gold)}
.imgm .box{border-radius:24px}
.mock .seg button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.tabbar button.on{color:var(--ink)} .tabbar button.on b{color:var(--gold)}
.tabbar button b{font-family:var(--ui)}
@container (max-width:720px){
  .home{padding:24px 18px 40px;gap:48px}
  .hero{grid-template-columns:1fr;gap:28px}
  .hero h1{font-size:3.2rem}
  .art{min-height:340px}
  .paths{grid-template-columns:1fr;gap:12px}
  .path{min-height:0;padding:22px}
  .planblock{grid-template-columns:1fr;padding:28px 22px;gap:24px}
  .news{padding:26px 20px}
  .hd{padding:14px 18px}
}


/* Navigation : 66 livres, Aller à, bande de chapitres */
.jumpbtn{display:inline-flex;align-items:center;gap:8px;border:0;background:var(--chip);color:var(--muted);border-radius:12px;padding:9px 12px;cursor:pointer;font-weight:600;font-size:14.5px;margin-right:6px}
.jumpbtn:hover{color:var(--ink)}
.themebtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:12px;background:none;color:var(--ink);cursor:pointer;margin-right:2px}
.themebtn:hover{background:var(--chip)}
kbd{font-family:var(--ui);font-size:11.5px;font-weight:700;background:var(--surface);color:var(--muted);border-radius:6px;padding:2px 6px;border:1px solid var(--line)}
.hints .allbooks{background:var(--ink);color:var(--paper)}
.hints .allbooks:hover{background:var(--ink);color:var(--paper);opacity:.88}
.jump{position:fixed;inset:0;z-index:40;background:color-mix(in srgb,#0d0c10 55%,transparent);display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px 16px}
.jbox{width:min(36rem,100%);background:var(--surface);color:var(--ink);border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.3);overflow:hidden}
.jin{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}
.jin input{flex:1;min-width:0;border:0;background:none;font-size:18px;font-weight:600;outline:none;color:var(--ink)}
.jres{list-style:none;margin:0;padding:8px;max-height:52vh;overflow:auto}
.jres li{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;cursor:pointer}
.jres li[aria-selected="true"],.jres li:hover{background:var(--sun-soft)}
.jres .b{width:38px;height:38px;flex:none;border-radius:11px;display:grid;place-items:center;font-weight:800;font-size:13px;background:var(--c,var(--chip));color:#1D1C22}
.jres .t{flex:1;min-width:0}
.jres .t b{display:block;font-size:16px}
.jres .t small{color:var(--muted);font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jres .k{font-size:12px;color:var(--faint)}
.jfoot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.chstrip{display:flex;gap:6px;overflow-x:auto;padding:4px 2px 12px;margin:-18px 0 22px;scrollbar-width:thin;scroll-snap-type:x proximity}
.chstrip :is(button,a){flex:none;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:40px;height:40px;border:0;border-radius:12px;background:var(--chip);color:var(--ink);font-weight:700;font-size:14px;cursor:pointer;font-variant-numeric:tabular-nums;position:relative;scroll-snap-align:center}
.chstrip :is(button,a).rd{background:var(--sage-soft)}
.chstrip :is(button,a).rd::after{content:"";position:absolute;bottom:5px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--sage)}
.chstrip :is(button,a).cur{background:var(--ink);color:var(--paper)}
.chstrip :is(button,a):hover:not(.cur){background:var(--sun-soft)}
.crumb{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px}
.crumb button{all:unset;cursor:pointer}
.crumb button:hover{color:var(--ink);text-decoration:underline}
.swipehint{font-size:12.5px;color:var(--faint);text-align:center;margin-top:10px}
/* Page des 66 livres */
.libbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.libbar input{flex:1;min-width:220px;border:2px solid var(--ink);border-radius:14px;padding:12px 16px;font-size:16px;background:var(--surface);color:var(--ink);outline:none}
.libstats{display:flex;gap:10px;flex-wrap:wrap}
.libstats span{background:var(--chip);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:600}
.libstats span b{font-variant-numeric:tabular-nums}
.grp{display:grid;gap:12px;margin-bottom:30px}
.grp-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.grp-h h2{font-size:1.5rem;display:flex;align-items:center;gap:10px}
.grp-h h2::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--c)}
.grp-h small{color:var(--muted);font-size:14px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:8px}
.tile{all:unset;cursor:pointer;position:relative;overflow:hidden;border-radius:16px;padding:14px 14px 16px;background:var(--cs);display:grid;gap:2px;min-height:62px}
.tile:hover,.tile.open{outline:2px solid var(--ink)}
.tile:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.tile b{font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.15}
.tile small{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.tile i{position:absolute;left:0;bottom:0;height:4px;background:var(--c);border-radius:0 4px 4px 0}
.tile .ab{position:absolute;right:10px;top:10px;font-size:11px;font-weight:800;color:var(--muted);opacity:.7}
.chpanel{grid-column:1/-1;background:var(--surface);border:2px solid var(--ink);border-radius:18px;padding:16px;display:grid;gap:12px}
.chpanel .h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.chpanel .h b{font-size:1.2rem}
.chpanel p{margin:0;font-family:var(--text);color:var(--muted);line-height:1.5}
.chpanel .chs{grid-template-columns:repeat(auto-fill,minmax(2.6rem,1fr))}
.chpanel .chs button.rd{background:var(--sage-soft)}
.g-sun{--c:var(--sun);--cs:var(--sun-soft)} .g-mint{--c:var(--mint);--cs:var(--sage-soft)} .g-lilac{--c:var(--lilac);--cs:var(--plum-soft)} .g-sky{--c:oklch(0.78 0.1 245);--cs:var(--sky-soft)}
@container (max-width:720px){.jumpbtn span,.jumpbtn kbd{display:none}.jumpbtn{margin:0;padding:10px;min-width:44px;min-height:44px;justify-content:center}.nav{display:flex;margin-left:auto}.nav>button:not(.jumpbtn):not(.themebtn){display:none}.tiles{grid-template-columns:repeat(2,1fr)}.jump{padding-top:6vh}}


/* ===== Accompagnement ===== */
.c-sun{--c:var(--sun);--cs:var(--sun-soft)}
.c-mint{--c:var(--mint);--cs:var(--sage-soft)}
.c-sage{--c:var(--sage);--cs:var(--sage-soft)}
.c-sky{--c:var(--sky);--cs:var(--sky-soft)}
.c-lilac{--c:var(--lilac);--cs:var(--rose-soft)}
.c-plum{--c:var(--plum);--cs:var(--plum-soft)}
.acc{background:var(--block);color:var(--block-ink);border-radius:28px;padding:40px 36px}
.acc .eyebrow{color:var(--sun)}
.acc-h{display:grid;gap:10px;max-width:44rem}
.acc-h p{font-family:var(--text);color:var(--block-muted);line-height:1.6;margin:0}
.sits{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.sit{position:relative;display:grid;gap:4px;align-content:start;padding:18px 20px 18px 22px;border-radius:18px;background:var(--cs);color:var(--ink);text-decoration:none;min-height:88px;overflow:hidden;transition:transform .15s}
.sit::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c)}
.sit:hover{transform:translateY(-2px)}
.sit b{font-family:var(--display);font-size:1.12rem;line-height:1.2;letter-spacing:-.01em}
.sit span{font-size:14px;color:var(--muted)}
.sit .bar,.pc-prog .bar{display:block;height:6px;border-radius:6px;background:color-mix(in srgb,var(--ink) 10%,transparent);margin-top:8px;overflow:hidden}
.sit .bar i,.pc-prog .bar i{display:block;height:100%;background:var(--ink);border-radius:6px}
.sits.big .sit{min-height:110px;padding:22px 22px 22px 26px}
.sits.big .sit b{font-size:1.3rem}
.pc{max-width:46rem}
#pcRoot{display:grid;gap:24px}
.pc-hd{display:grid;gap:10px;background:var(--cs);border-radius:24px;padding:28px}
.pc-hd .lead{color:var(--ink);opacity:.85}
.pc-back{font-weight:600;color:var(--ink);text-decoration:none;font-size:15px}
.pc-prog{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:end;justify-content:space-between;margin-top:8px}
.pc-prog>div:first-child{flex:1 1 200px}
.pc-rem{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:15px}
.pc-rem select{font:inherit;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.pc-aide{border:2px solid var(--line);border-radius:18px;padding:16px 20px;font-size:15px;line-height:1.55}
.pc-aide a{color:inherit;font-weight:700}
.pcdays{display:grid;gap:12px}
.pcday{border:1px solid var(--line);border-radius:20px;background:var(--surface)}
.pcday[open]{box-shadow:var(--shadow)}
.pcday summary{list-style:none;display:flex;gap:14px;align-items:center;padding:16px 18px;cursor:pointer}
.pcday summary::-webkit-details-marker{display:none}
.pcn{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;background:var(--chip)}
.pcday.done .pcn{background:var(--sage);color:var(--paper)}
.pcday[open] .pcn{background:var(--sun);color:var(--sun-ink)}
.pct{display:grid;gap:2px}
.pct small{font-size:13px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.pct b{font-family:var(--display);font-size:1.15rem;line-height:1.25}
.pcb{display:grid;gap:18px;padding:4px 22px 24px}
.pcv{margin:0;font-family:var(--text);font-size:1.12rem;line-height:1.7;padding:18px 20px;border-radius:14px;background:var(--hl);color:var(--hl-ink)}
.pcv sup{font-size:.62em;font-family:var(--display);font-weight:700;opacity:.6;margin-right:2px}
.pcv cite{display:block;margin-top:10px;font-style:normal;font-family:var(--display);font-size:14px;font-weight:600}
.pcv cite a{color:inherit}
.pctx{font-family:var(--text);line-height:1.75;margin:0;font-size:1.05rem}
.pcb small{display:block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold);margin-bottom:4px}
.pcq label{display:block;font-family:var(--display);font-weight:600;font-size:1.1rem;margin-bottom:8px}
.pcq textarea{width:100%;box-sizing:border-box;font:inherit;font-family:var(--text);font-size:1rem;line-height:1.6;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--paper);color:var(--ink);resize:vertical}
.pcp p,.pcg p{margin:0;font-family:var(--text);line-height:1.65}
.pcp p{font-style:italic}
.pcdone{justify-self:start}
.pc-end{display:grid;gap:10px;padding:24px;border-radius:20px;background:var(--chip)}
.pc-end p{margin:0}
.pc-note{font-size:14px;color:var(--muted);margin:0}
@container (max-width:640px){
  .acc{padding:28px 20px;border-radius:22px}
  .sits{grid-template-columns:1fr 1fr;gap:10px}
  .sit{padding:14px 14px 14px 18px;min-height:76px}
  .sit b{font-size:1rem}
  .pc-hd{padding:22px 18px}
  .pcb{padding:4px 16px 20px}
}


/* ===== Personnages de la Bible ===== */
.ps{max-width:52rem}
#psRoot{display:grid;gap:28px}
.ps-hd{display:grid;gap:10px;background:var(--cs,var(--chip));border-radius:24px;padding:28px}
.ps-hd .lead{color:var(--ink);opacity:.85}
.ps-hd h1 small{display:block;font-size:.42em;letter-spacing:-.01em;font-weight:600;margin-top:6px;opacity:.8}
.ps-back{font-weight:600;color:var(--ink);text-decoration:none;font-size:15px}
.ps-tags{display:flex;flex-wrap:wrap;gap:8px}
.ps-tag{display:inline-block;font-size:14px;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--surface);color:var(--ink);text-decoration:none;border:1px solid var(--line)}
.ps-tag:hover{border-color:var(--ink)}
.ps-h2{font-size:1.7rem;margin:0 0 12px}
.ps-h3{font-size:1.1rem;margin:18px 0 10px;color:var(--muted);font-weight:600;letter-spacing:0}
.ps-q{width:100%;box-sizing:border-box;font:inherit;font-size:17px;padding:14px 18px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.ps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.psc{position:relative;display:grid;gap:6px;align-content:start;padding:18px 20px 18px 24px;border-radius:18px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .15s}
.psc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c)}
.psc:hover{transform:translateY(-2px)}
.psc b{font-family:var(--display);font-size:1.3rem;letter-spacing:-.02em}
.psc span{color:var(--muted);font-size:15px;line-height:1.35}
.psc em{font-style:normal;font-size:13px;color:var(--muted);line-height:1.5}
.ps-empty{color:var(--muted);margin:0}
.pss{display:grid;gap:16px;border:1px solid var(--line);border-radius:22px;background:var(--surface);padding:26px 24px;scroll-margin-top:90px}
.pss h2{font-size:clamp(1.5rem,3.5cqi,2rem);line-height:1.15;margin:0}
.pss-sit{justify-self:start;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:6px 12px;border-radius:999px;background:var(--cs);color:var(--ink);text-decoration:none}
.pss-sit::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--c);margin-right:8px;vertical-align:1px}
.pss p{margin:0;font-family:var(--text);line-height:1.75;font-size:1.05rem}
.pss small{display:block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold);margin-bottom:4px}
.pss-phrase{margin:0;font-family:var(--display);font-weight:600;font-size:1.3rem;line-height:1.35;letter-spacing:-.01em;border-left:5px solid var(--c);padding:4px 0 4px 16px;text-wrap:balance}
.pss-acc{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:14px 18px;border-radius:14px;background:var(--chip);font-size:15px;color:var(--ink);text-decoration:none}
.pss-acc b{font-family:var(--display)}
.pss-more{font-weight:700;color:var(--ink)}
.ps-q2{display:grid;gap:8px;padding:24px;border-radius:20px;background:var(--hl);color:var(--hl-ink)}
.ps-q2 p{margin:0;font-family:var(--display);font-size:1.3rem;font-weight:600;line-height:1.35}
.ps-q2 small{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.ps-read{display:flex;flex-wrap:wrap;gap:10px}
.ps-read a{display:grid;gap:2px;padding:12px 16px;border-radius:14px;background:var(--chip);color:var(--ink);text-decoration:none}
.ps-read a b{font-family:var(--display)}
.ps-read a span{font-size:14px;color:var(--muted)}
.ps-sec{border:1px solid var(--line);border-radius:28px;padding:36px;background:var(--surface)}
.ps-sec .acc-h p{color:var(--muted)}
.ps-sec .btn{justify-self:start;text-decoration:none}
@container (max-width:640px){
  .ps-hd{padding:22px 18px}
  .pss{padding:20px 16px}
  .ps-grid{grid-template-columns:1fr}
  .ps-sec{padding:24px 18px;border-radius:22px}
}


/* ===== Guide « Quelle Bible choisir ? » ===== */
#gdRoot{display:grid;gap:28px}
.g-aff{font-size:15px;line-height:1.6;color:var(--muted);background:var(--chip);border-radius:16px;padding:16px 20px}
.g-aff b{color:var(--ink)}
.g-how ol{margin:0;padding-left:1.3em;display:grid;gap:12px;font-family:var(--text);line-height:1.7;font-size:1.05rem}
.g-how b{font-family:var(--display)}
.gs{display:grid;gap:14px;scroll-margin-top:90px}
.gs-h h2{font-size:1.7rem;margin:0 0 6px}
.gs-h h2::before{content:"";display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--c);margin-right:10px;vertical-align:3px}
.gs-h p{margin:0;color:var(--muted);line-height:1.6}
.gb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.gb{position:relative;display:grid;gap:8px;align-content:start;padding:20px 20px 20px 24px;border-radius:18px;background:var(--surface);border:1px solid var(--line);overflow:hidden;scroll-margin-top:90px}
.gb::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c)}
.gb-h{display:grid;gap:6px}
.gb h3{margin:0;font-family:var(--display);font-size:1.25rem;letter-spacing:-.02em;line-height:1.2}
.gb-style{justify-self:start;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--cs);color:var(--ink)}
.gb-ed{color:var(--muted);font-size:13.5px}
.gb p{margin:0;font-family:var(--text);line-height:1.65;font-size:.98rem}
.gb .gb-savoir{font-size:.92rem;color:var(--muted)}
.gb-savoir b{color:var(--ink);font-family:var(--display)}
.gb-link{justify-self:start;margin-top:4px;font-size:14.5px;font-weight:700;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--c);padding-bottom:1px}
.gb-link:hover{border-bottom-color:var(--ink)}
.g-gifts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.g-gifts li{display:grid;gap:4px;padding:16px 20px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.g-gifts b{font-family:var(--display)}
.g-gifts span{font-family:var(--text);line-height:1.6;color:var(--muted)}
.g-gifts a{color:var(--ink);font-weight:600}
.g-free{display:grid;gap:10px;padding:26px;border-radius:22px;background:var(--chip)}
.g-free p{margin:0;line-height:1.6}
.gd-body{display:grid;gap:18px;font-family:var(--text);font-size:1.08rem;line-height:1.8;max-width:42rem}
.gd-body h2{font-family:var(--display);font-size:clamp(1.45rem,3.2cqi,1.8rem);line-height:1.2;margin:22px 0 0;scroll-margin-top:90px}
.gd-body h3{font-family:var(--display);font-size:1.2rem;margin:8px 0 0}
.gd-body p,.gd-body ul,.gd-body ol{margin:0}
.gd-body ul,.gd-body ol{padding-left:1.3em;display:grid;gap:8px}
.gd-body a{color:var(--ink);text-decoration-color:var(--gold);text-underline-offset:3px}
.gd-body strong{font-weight:600}
.gd-q{margin:6px 0;padding:16px 20px;border-left:5px solid var(--c,var(--sun));background:var(--surface);border-radius:0 14px 14px 0}
.gd-q p{font-style:italic}
.gd-q cite{display:block;margin-top:6px;font-style:normal;font-family:var(--display);font-size:14px;color:var(--muted)}
.gd-date{font-size:14px;color:var(--muted);font-family:var(--display)}
.g-mention{margin:0;font-size:13px;color:var(--muted);line-height:1.5}


/* ===== Bible : page /bible/, sélecteur livre / chapitre ===== */
.libgo{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px}
.lg{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:2px;align-content:start;border-radius:18px;padding:16px 18px;background:var(--chip);color:var(--ink)}
.lg small{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lg b{font-family:var(--display);font-size:1.35rem;line-height:1.15}
.lg span{font-size:14px;color:var(--muted)}
.lg:hover,.lg:focus-visible{outline:2px solid var(--ink)}
.lg-pri{background:var(--sun-soft)}
.lg-pri span{color:var(--ink);font-weight:600}
.libidx{display:flex;gap:8px;flex-wrap:wrap}
.libidx button{border:0;border-radius:999px;padding:7px 13px 7px 11px;background:var(--cs);color:var(--ink);font:600 14px var(--ui);cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.libidx button::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c)}
.libidx button:hover{outline:2px solid var(--ink)}
.grp{scroll-margin-top:90px}
.chs a{display:flex;align-items:center;justify-content:center;min-height:2.4rem;border-radius:12px;background:var(--chip);color:var(--ink);font-weight:600;font-size:14px;text-decoration:none;font-variant-numeric:tabular-nums}
.chs a:hover{background:var(--sun-soft)}
.chs a.rd{background:var(--sage-soft)}
.libmore{margin:0;color:var(--muted);font-size:15px}
.libmore a{color:var(--ink);font-weight:600}
.picker .pk-g{display:grid;gap:6px}
.picker .pk-g small{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:7px}
.picker .pk-g small::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c)}
.picker #pkBooks{display:grid;grid-template-columns:1fr;gap:14px;max-height:min(60vh,34rem);overflow:auto;padding-right:4px}
.picker .bk{grid-template-columns:repeat(auto-fill,minmax(8rem,1fr))}
.picker .chs button.rd{background:var(--sage-soft)}
.picker .pk-h b{font-size:1.2rem}
.picker [hidden]{display:none}
@container (max-width:720px){
  .libgo{grid-template-columns:1fr 1fr}
  .libgo .lg-pri{grid-column:1/-1}
  .lg{padding:14px}
  .lg b{font-size:1.15rem}
  .picker .bk{grid-template-columns:repeat(2,1fr)}
}
