/* Living curriculum: real links and progress layered over a decorative landscape. */
.celestial-tree{position:relative;isolation:isolate;padding:36px 24px 30px;min-height:920px;background-color:#faf8f5;background-image:linear-gradient(#faf8f526,#faf8f526),linear-gradient(#faf8f500 35%,#faf8f540 75%,#faf8f5 100%),url('./images/arbre-paysage.webp?v=20261006-2');background-position:center;background-size:cover;background-repeat:no-repeat;border-radius:26px;overflow:hidden;color:var(--ink,#30273d)}

.celestial-tree:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 14%,#e8ddef60,transparent 25%),linear-gradient(90deg,#faf8f530,transparent 25%,transparent 75%,#faf8f530)}
.tree-intro{display:flex;justify-content:space-between;gap:36px;min-height:235px;position:relative;z-index:2;pointer-events:none}
.tree-intro>div{width:30%;max-width:350px;pointer-events:auto}.tree-intro h1{font:clamp(30px,3.2vw,47px)/1.07 Newsreader,Georgia,serif;letter-spacing:-.035em;margin:12px 0 20px}.tree-intro h1 em{font-weight:400;color:var(--purple,#66508a)}.tree-intro p:not(.eyebrow){font-size:13px;line-height:1.8;max-width:315px;color:#70677b}.tree-intro .eyebrow{font-size:9px;letter-spacing:.19em}
.tree-intro .tree-quote{width:24%;max-width:245px;padding-top:22px}.tree-quote p{font:italic 25px/1.25 Newsreader,Georgia,serif!important;color:#6b558b!important}.tree-quote>span{display:block;font-size:11px;color:#70677b}.tree-quote>a{display:inline-block;margin-top:15px;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.tree-root{position:relative;width:310px;margin:-230px auto 0;text-align:center;z-index:3}.tree-root h2{font:29px/1.12 Newsreader,Georgia,serif;margin:7px 0}.tree-root>.eyebrow{font-size:9px;margin:25px 0 0}.tree-root>p:not(.eyebrow){font-size:11px;margin:8px 0 14px;color:#70677b}.tree-orb{--orb:#9477b4;--halo:#d8c7e9;display:grid;place-items:center;position:relative;width:86px;height:86px;border:1px solid #fffefc;border-radius:50%;color:white;margin:0 auto;background:radial-gradient(circle at 32% 25%,#fffffff0,transparent 35%),radial-gradient(circle at 55% 58%,var(--orb),var(--halo) 70%,#fffdfc);box-shadow:inset 0 0 20px #ffffffc0,0 0 0 7px #ffffff65,0 0 0 8px #d8cbe645,0 0 0 17px #ffffff45,0 0 0 18px #d8cbe635,0 5px 25px #9c7cac30}
.tree-orb:before,.tree-orb:after{content:'';position:absolute;border-radius:50%;inset:-28px;border:1px solid #d4c4df45;pointer-events:none}.tree-orb:after{inset:-36px;border-style:dashed;border-color:#d4c4df28;animation:tree-orbit 95s linear infinite}.tree-orb svg{width:34px;height:34px;filter:drop-shadow(0 0 6px #ffffff90)}.tree-orb.root-orb{width:105px;height:105px;margin-top:0;box-shadow:inset 0 0 24px #ffffffa0,0 0 0 12px #ece4f260,0 0 0 24px #efe7f440,0 0 0 42px #f2ebf630,0 0 55px #cbb5df85}.root-orb svg{width:38px;height:38px}.warm-orb{--orb:#c39b75;--halo:#f0dfc7}
.tree-root-details{position:relative;font-size:11px}.tree-root-details>summary{list-style:none;display:flex;justify-content:center;gap:15px;padding:12px 18px;border-radius:30px;border:1px solid #e0d4e8;background:#fffcf8e8;box-shadow:0 3px 15px #9072a518;cursor:pointer}.tree-root-details>summary::-webkit-details-marker{display:none}.tree-root-details[open]>summary span{transform:rotate(180deg)}.tree-root-details>div{background:#fffdfaf2;border:1px solid #e5dbe9;border-radius:20px;padding:18px;margin-top:10px;text-align:left;box-shadow:0 12px 25px #54436710}
.tree-canopy{position:relative;padding-top:142px}.tree-connections{position:absolute;left:0;top:0;width:100%;height:185px;pointer-events:none;overflow:visible}.tree-branches{display:grid;grid-template-columns:repeat(var(--tree-columns),minmax(0,1fr));gap:22px;position:relative}.tree-branch{min-width:0}.tree-branch-card{position:relative;margin-top:16px;padding:18px 16px 16px;border:1px solid #e8d9cbe0;background:#fffcf9c9;border-radius:24px;backdrop-filter:blur(8px);box-shadow:0 8px 25px #90757b06;min-height:134px}.tree-branch-card .eyebrow{font-size:9px;letter-spacing:.11em;text-align:center;margin:0 0 8px}.tree-branch-card .tree-intention{font-size:11px;color:#655c70;line-height:1.55;text-align:center;min-height:34px;margin:0 0 12px}.tree-branch-card>small{font-size:10px;color:#766a81}.tree-branch-card progress{display:block;height:3px;width:100%;margin-bottom:10px;border:0;overflow:hidden;border-radius:10px;background:#e9e3e9;accent-color:#9276ad}.tree-branch-card progress::-webkit-progress-bar{background:#e9e3e9}.tree-branch-card progress::-webkit-progress-value{background:#9276ad}.tree-branch-card progress::-moz-progress-bar{background:#9276ad}
.tree-module{padding:18px 3px 0}.tree-module h4{font:500 12px/1.6 system-ui,sans-serif;margin:0 0 5px;overflow-wrap:anywhere}.tree-axis{font-size:10px;color:#66527f;line-height:1.5;margin:0 0 13px}.tree-practices{list-style:none!important;padding:0!important;margin:10px 0 0!important}.tree-practices li{position:relative;margin:0;padding:0!important}.tree-practices li:before{content:'';position:absolute;left:20px;top:0;bottom:0;width:1px;background:linear-gradient(#b9a2ce,#dacdbd);z-index:-1}.tree-practices li:last-child:before{bottom:50%}.tree-practices a,.tree-locked-row{display:flex;align-items:center;gap:12px;min-height:63px;padding:7px 0;border-radius:16px;text-decoration:none;font-size:11px;line-height:1.5;transition:background .2s,transform .2s}.tree-practices a:hover{background:#fffdf7bf;transform:translateX(3px)}.tree-practices small{display:block;color:#7a7080;font-size:9px;margin-top:3px}.tree-bead{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #e6dbe9;border-radius:50%;background:#faf6f1;box-shadow:0 0 0 4px #fffdfb85,0 3px 6px #bdb0bf30;color:#86758d}.tree-bead svg{width:17px;height:17px}.available .tree-bead{background:radial-gradient(circle at 30% 20%,#fff,#ede1f3);color:#70518b;border-color:#c9b5db}.acquired .tree-bead{background:radial-gradient(circle at 30% 20%,#b59acd,#705092);color:white;border:4px solid #f7f0fc}.tree-locked-row{color:#79727d}.tree-lock-note{font-size:10px;line-height:1.6;color:#746a7d;background:#faf7f1b0;padding:10px;border-radius:10px}.tree-lock-note a{text-decoration:underline;text-underline-offset:3px}.tree-empty{font-size:11px;line-height:1.7;color:#7c7084;padding:16px;text-align:center}
.tree-footer{text-align:center;margin-top:45px;padding:20px 10px;background:linear-gradient(transparent,#faf8f5b0)}.tree-footer>p{font:italic 25px Newsreader,Georgia,serif;color:#756080;margin:25px 0 0}.tree-legend{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:10px;color:#675971}.tree-legend span{display:flex;align-items:center;gap:5px}.tree-legend svg{width:13px;height:13px}.celestial-tree :focus-visible{outline:2px solid #795592;outline-offset:5px}
@keyframes tree-orbit{to{transform:rotate(360deg)}}
@media(min-width:1500px){.celestial-tree{padding-inline:42px}.tree-branches{gap:32px}.tree-practices a,.tree-locked-row{font-size:12px}.tree-branch-card .eyebrow{font-size:10px}}
@media(max-width:1050px){.tree-intro{min-height:210px}.tree-intro>div{width:32%}.tree-intro h1{font-size:32px}.tree-quote{display:none}.tree-root{margin-top:-210px;margin-right:12%;width:280px}.tree-canopy{padding-top:75px}.tree-connections{display:none}.tree-branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 30px}.tree-branch{position:relative}.tree-branch:before{content:'';height:40px;width:1px;background:#c7b2d5;position:absolute;top:-45px;left:50%}.celestial-tree{background-size:auto 100%;background-position:center bottom}.tree-branch-card{min-height:120px}.tree-branch-card .tree-intention{min-height:0}}
@media(max-width:650px){.celestial-tree{padding:24px 17px;min-height:0;border-radius:22px}.tree-intro{display:block;min-height:0}.tree-intro>div{width:auto;max-width:none}.tree-intro h1{font-size:36px}.tree-intro p:not(.eyebrow){font-size:12px}.tree-root{width:auto;max-width:320px;margin:65px auto 0}.tree-root h2{font-size:28px}.tree-root>.eyebrow{margin-top:30px}.tree-canopy{padding-top:68px}.tree-branches{display:block;border-left:1px solid #cdb7d6;margin-left:22px;padding-left:24px}.tree-branch{padding-top:0;margin-bottom:65px}.tree-branch:before{height:1px;width:26px;top:35px;left:-25px}.tree-branch>.tree-orb{width:70px;height:70px;margin:0 0 20px 12px}.tree-branch>.tree-orb:before{inset:-13px}.tree-branch>.tree-orb:after{inset:-21px}.tree-branch-card{margin-top:0;border-radius:20px}.tree-branch-card .eyebrow,.tree-branch-card .tree-intention{text-align:left}.tree-branch-card .eyebrow{font-size:11px}.tree-branch-card .tree-intention{font-size:12px}.tree-module{padding-top:20px}.tree-practices a,.tree-locked-row{font-size:12px}.tree-branch:last-child{margin-bottom:15px}.tree-footer{margin-top:25px;padding-inline:0}.tree-legend{gap:12px}.celestial-tree{background-size:auto 1000px;background-position:center bottom}.tree-intro .tree-quote{display:none}}
@media(prefers-reduced-motion:reduce){.tree-orb:after{animation:none}.tree-practices a{transition:none}}


.tree-branch-card{display:block;list-style:none;cursor:pointer}.tree-branch-card::-webkit-details-marker{display:none}.tree-branch-card>.eyebrow,.tree-branch-card .tree-intention{display:block}.tree-toggle{position:absolute;right:15px;bottom:12px;color:#8865a1;font-size:16px}.tree-branch-content[open] .tree-toggle{transform:rotate(180deg)}.tree-branch-card:hover{background:#fffcf9f2;border-color:#cab3d6}
@media(min-width:1051px){.tree-intro>div{max-width:390px}.tree-intro h1{font-size:clamp(32px,2.8vw,42px)}.tree-intro .tree-quote p{font-size:23px!important}}
/* Parcours panoramique, palette Borvo et aperçu des contenus. */
#main.workspace.v2-workspace:has(>.celestial-tree){max-width:none;width:100%;margin:0;padding:88px 0 0}
#main>.celestial-tree{border-radius:0;min-height:calc(100svh - 88px);padding:45px clamp(24px,5vw,110px) 36px}
.celestial-tree .tree-orb{--orb:#573d85;--halo:#7c688f;background:radial-gradient(circle at 32% 22%,#ffffff45,transparent 45%),radial-gradient(circle at 55% 58%,#30273d,var(--orb) 68%,var(--halo));border-color:#bdb0cf;box-shadow:inset 0 0 13px #ffffff30,0 0 0 7px #573d8512,0 0 0 8px #573d8540,0 0 0 17px #573d8508,0 0 0 18px #573d8520,0 8px 24px #30273d24}
.celestial-tree .warm-orb{--orb:#526a5a;--halo:#7c9082}.celestial-tree .root-orb{--orb:#443457;--halo:#7c688f}
.tree-orb:before,.tree-orb:after{border-color:#7c908240}.tree-branch-card{border-color:#ced4bf;background:#f8f7f4e8}.tree-branch-card:hover{background:#ffffffed;border-color:#7c9082}.tree-branch-card .eyebrow{color:#30273d;font-weight:600}.tree-axis{color:#526a5a}.tree-branch-card progress::-webkit-progress-value{background:#7c9082}.tree-branch-card progress::-moz-progress-bar{background:#7c9082}
.tree-practices a,.tree-locked-row{display:block;padding:0;margin:12px 0 20px;border:1px solid #e8e6e1;background:#f8f7f4ed;overflow:hidden;border-radius:15px;box-shadow:0 4px 12px #1a1f2e08}.tree-practices a:hover{transform:translateY(-2px);border-color:#7c9082;background:white}.tree-practices li:before{left:23px;z-index:0;top:-20px;bottom:-20px}.tree-lesson-info{position:relative;display:flex;align-items:center;gap:9px;padding:12px}.tree-lesson-info>span:last-child{min-width:0;overflow-wrap:anywhere}.tree-lesson-info .tree-bead{width:27px;height:27px;flex-basis:27px;box-shadow:none;border-width:1px}.tree-bead svg{width:14px;height:14px}.available .tree-bead{background:#573d85;color:#fff;border-color:#573d85}.acquired .tree-bead{background:#526a5a;color:#fff;border-color:#526a5a}
.tree-preview{position:relative;isolation:isolate;display:grid;place-items:center;aspect-ratio:16/9;background:radial-gradient(circle at 20% 15%,#7c908270,transparent 65%),#30273d;color:white;overflow:hidden}.tree-preview.is-text{aspect-ratio:3/1;background:#e8ece3;color:#526a5a}.tree-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.tree-preview img[hidden]{display:none}.tree-preview-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#30273d80;border:1px solid #ffffff80;color:white}.is-text .tree-preview-icon{background:none;color:#526a5a;border:0}.tree-preview svg{width:22px;height:22px}.tree-media-label{position:absolute;bottom:7px;left:8px;padding:3px 7px;border-radius:5px;background:#1a1f2ebd;color:white;font-size:9px}.is-text .tree-media-label{background:transparent;color:#526a5a}.locked .tree-preview{filter:saturate(.25);opacity:.65}
@media(max-width:800px){#main.workspace.v2-workspace:has(>.celestial-tree){padding:75px 0 80px}#main>.celestial-tree{padding:30px 22px;min-height:calc(100svh - 155px)}}
@media(prefers-reduced-motion:reduce){.tree-practices a:hover{transform:none}}
