/* Tableau de bord Borvo : navigation panoramique, cartes et suivi. */
.streak-heading .streak-emblem{font-size:35px}.today-layout .today-aside .axis-values{grid-template-columns:1fr 1fr}
.dashboard-topbar{inset:0 0 auto;height:88px;display:flex;justify-content:space-between;gap:22px;padding:0 32px;background:#fffefbf5;border-bottom:1px solid #e8e6e1;backdrop-filter:blur(16px);z-index:40}
.dashboard-topbar .brand{font-size:29px;line-height:1;flex-shrink:0}.dashboard-topbar .brand small{margin-top:8px;font-size:8px;letter-spacing:.2em}
.desktop-nav{display:flex;padding:6px;background:#f0eeeb;border-radius:40px;gap:3px}.desktop-nav a{display:flex;align-items:center;gap:8px;padding:12px 15px;border-radius:30px;font-size:12px;color:var(--muted);white-space:nowrap;min-height:44px}.desktop-nav a.active{background:white;color:var(--purple);box-shadow:0 3px 14px #30273d0a}.desktop-nav .icon{width:17px;height:17px}.desktop-nav a:hover{background:#fff9}
.dashboard-topbar .top-actions{gap:6px}.dashboard-topbar .account-menu summary{display:flex;align-items:center;gap:10px;list-style:none;padding:5px;border-radius:30px;cursor:pointer}.account-menu summary::-webkit-details-marker{display:none}.account-name{font-size:12px;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-topbar .avatar{width:40px;height:40px;background:#e6e0ec;color:var(--purple)}.account-menu nav{min-width:220px;right:0;box-shadow:0 15px 45px #30273d12;border-radius:18px;padding:10px}.account-menu nav a,.account-menu nav button{display:block;padding:12px;border-radius:10px}
.workspace.v2-workspace{max-width:1480px;margin:0 auto;padding:132px 46px 65px;width:100%}.today-layout{grid-template-columns:minmax(0,2.15fr) minmax(300px,1fr);gap:26px;align-items:start}.today-main,.today-aside{min-width:0}.today-aside{padding-top:6px}
.dashboard-welcome{display:flex;gap:22px;align-items:center;margin:0 0 36px}.welcome-avatar{width:76px;height:76px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#e6e8df;color:#526454;font:36px Newsreader,Georgia,serif;overflow:hidden}.welcome-avatar img{width:100%;height:100%;object-fit:cover}.dashboard-welcome .eyebrow{font-size:10px;letter-spacing:.18em;color:var(--muted);margin:0 0 9px}.dashboard-welcome h1{font:400 clamp(32px,3.3vw,48px)/1.05 Newsreader,Georgia,serif;margin:0 0 9px;letter-spacing:-.035em}.dashboard-welcome h1 em{color:var(--purple);font-weight:400}.dashboard-welcome p:last-child{font-size:12px;color:var(--muted);margin:0}
.week-plan{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid #ded8e2}.week-heading{display:flex;align-items:baseline;gap:16px;justify-content:space-between;margin-bottom:16px}.week-heading h2{font-size:24px;margin:0}.week-heading>span{font-size:11px;color:var(--muted)}.week-row{display:flex;gap:24px;align-items:center}.week-days{list-style:none;display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:0;margin:0;flex:1}.week-days li{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--muted)}.week-days li>span{font-size:10px}.week-days strong{display:grid;place-items:center;width:39px;height:39px;font-size:16px;font-weight:500;color:var(--ink)}.week-days .selected strong{border-radius:50%;background:var(--purple);color:white}.week-days i{width:4px;height:4px;border-radius:50%;background:transparent}.week-days .observed i{background:var(--primary,#7c9082)}.week-row .btn{border-radius:16px;background:#eeebe5;min-width:140px;gap:20px;border:0;font-size:12px}
.v2-card,.v2-workspace .card{border:0;border-radius:28px;background:#fff;box-shadow:0 2px 3px #30273d02;padding:28px;margin-bottom:20px}.v2-card h2{font-size:27px}.v2-workspace .btn{border-radius:14px;padding:13px 21px;min-height:48px}.v2-workspace .btn.ghost{background:#f4f2f5;border:0}.v2-workspace .tabs{padding:5px;background:#eeeae7;border:0;border-radius:18px;width:fit-content;max-width:100%;margin-bottom:28px}.v2-workspace .tabs a{border:0;border-radius:13px;padding:11px 18px;font-size:12px}.v2-workspace .tabs a.active{background:white;box-shadow:0 2px 6px #30273d06;color:var(--purple)}
.practice-feature.v2-card{display:grid;grid-template-columns:46% 54%;padding:0;overflow:hidden;background:white;min-height:305px}.practice-feature .practice-visual{height:100%;min-height:305px;position:relative;margin:0;border-radius:0;background:linear-gradient(180deg,#30273d12,#30273d80),url('../images/borvo-meditation-hero.jpg') 55% center/cover;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:23px;color:white}.visual-label{font-size:10px;padding:6px 11px;background:#fffefbe8;border-radius:30px;color:var(--ink)}.visual-word{font:italic 43px Newsreader,Georgia,serif;margin-top:auto;letter-spacing:-.02em}.visual-foot{font-size:8px;letter-spacing:.23em;margin-top:14px}.practice-feature .practice-copy{padding:30px 27px;align-self:center}.practice-copy .eyebrow{font-size:9px;line-height:1.7;color:var(--muted);letter-spacing:.13em}.practice-copy h2{font:400 clamp(26px,2.5vw,36px)/1.05 Newsreader,Georgia,serif;margin:14px 0}.practice-copy p{font-size:12px;line-height:1.7;color:var(--muted)}.practice-duration{display:block;font-size:11px;color:var(--muted);margin:18px 0}.practice-copy .btn{font-size:12px;gap:13px;padding-inline:18px}.practice-feature.integration .practice-visual{background:radial-gradient(ellipse at 20% 90%,#ced4bf 0,transparent 60%),#e6e9df;color:#465649}.practice-feature.integration .visual-word{font-size:48px}.practice-feature.complete .practice-visual{filter:saturate(.6)}
.mood-checkin{position:relative;background:#eeece6}.mood-checkin h2{font-size:25px}.mood-options{gap:9px}.mood-options button{border:1px solid #e8e6e1;border-radius:17px;background:#f8f7f4;min-height:87px}.mood-options button:hover{background:#eee8f4;border-color:#bcaace}.mood-checkin:has(.text-button){display:flex;justify-content:space-between;align-items:center;gap:16px}.mood-checkin:has(.text-button)>p{margin:0}.mood-checkin .text-button{font-size:11px}
.streak-card .streak-heading{display:flex;align-items:center;gap:13px;margin-bottom:18px}.streak-emblem{display:grid;place-items:center;background:#eee8f4;color:var(--purple);width:45px;height:45px;font-size:35px;border-radius:15px}.streak-heading>div{display:flex;align-items:center;gap:12px}.streak-heading strong{font:44px/1 Newsreader,Georgia,serif}.streak-heading span{font-size:12px;line-height:1.5}.streak-heading small{font-size:10px;color:var(--muted)}.streak-grid{gap:6px;margin:20px 0}.streak-day{aspect-ratio:1;min-height:0;border:0;border-radius:11px;background:#f6f5f3;font-size:11px}.streak-day.future{background:#f6f5f3}.streak-day.today{outline-width:1px;outline-offset:-1px;background:#fff}.streak-card .v2-small{font-size:10px}.streak-card .btn{width:100%;font-size:11px}.streak-card details{border-top:1px solid var(--line);padding-top:7px}.streak-card summary{font-size:11px}.today-aside .axis-values{grid-template-columns:1fr 1fr;gap:10px}.today-aside .axis-values>div{background:#f7f5f7;border-radius:17px;padding:15px}.today-aside .axis-values>div:last-child{grid-column:1/-1}.today-aside .axis-values dt{font-size:10px}.today-aside .axis-values dd{font-size:28px}.today-aside .v2-card>p{font-size:12px}.today-aside .v2-card>h2{font-size:25px}.today-aside .v2-card blockquote{font-size:21px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.dashboard-shortcuts{background:#fff;border-radius:26px;margin-bottom:20px;overflow:hidden}.dashboard-shortcuts a{display:flex;align-items:center;gap:13px;padding:22px}.dashboard-shortcuts a+a{border-top:1px solid #f0edf1}.shortcut-symbol{width:37px;height:37px;border-radius:12px;display:grid;place-items:center;background:#eee8f4;color:var(--purple);font-size:24px}.dashboard-shortcuts a>span:nth-child(2){flex:1}.dashboard-shortcuts strong{display:block;font-size:12px;font-weight:600}.dashboard-shortcuts small{display:block;font-size:10px;margin-top:3px}.module-card{position:relative;border-top:4px solid #ced4bf!important}.module-card.locked{background:#efede9;border-top-color:#ddd7de!important}.module-card .eyebrow{margin-top:2px}.v2-module-grid{gap:22px}.module-card .v2-lesson-row{background:#f8f7f4;padding:15px;border:0;border-radius:12px;margin-top:7px}.group-feed{max-width:900px}.group-feed .post{padding:30px}.onboarding.v2-card{background:radial-gradient(ellipse at 100% 0,#e8e6ee,transparent 55%),#fff;padding:50px;max-width:850px;margin:30px auto}.onboarding h1{font-size:49px}.lesson-reader,.lesson-companion{border-radius:26px!important}.v2-workspace .page-heading{margin-bottom:30px}.v2-workspace button:disabled{cursor:default}
@media(min-width:1700px){.workspace.v2-workspace{padding-left:46px}}
@media(max-width:1200px){.dashboard-topbar{padding:0 22px;gap:14px}.desktop-nav a{padding:12px 10px;font-size:11px}.account-name{display:none}.workspace.v2-workspace{padding-inline:30px}.today-layout{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:20px}.dashboard-welcome h1{font-size:36px}.welcome-avatar{width:62px;height:62px}.practice-feature .practice-copy{padding:25px 20px}.week-heading{flex-wrap:wrap;gap:5px}.week-row{gap:12px}.week-row .btn{min-width:110px}.week-days{gap:3px}}
@media(max-width:980px){.desktop-nav .icon{display:none}.dashboard-topbar .brand{font-size:24px}.today-layout{grid-template-columns:minmax(0,1fr) 285px}.workspace.v2-workspace{padding-inline:22px}.practice-feature.v2-card{grid-template-columns:1fr}.practice-feature .practice-visual{min-height:190px;height:190px}.practice-copy h2{font-size:30px}.week-row{flex-wrap:wrap}.week-row .btn{display:none}.dashboard-welcome{gap:14px}.dashboard-welcome h1{font-size:32px}.welcome-avatar{width:50px;height:50px;font-size:26px}.v2-card{padding:23px}}
@media(max-width:800px){.desktop-nav{display:none}.dashboard-topbar{height:75px;padding:0 20px}.dashboard-topbar .brand small{font-size:7px}.dashboard-topbar .top-actions{gap:4px}.dashboard-topbar .avatar{height:34px;width:34px}.workspace.v2-workspace{padding:103px 18px 110px}.today-layout{display:flex;flex-direction:column;gap:0}.today-main,.today-aside{width:100%}.today-aside{padding:4px 0 0}.dashboard-welcome{margin-bottom:28px;gap:14px}.dashboard-welcome h1{font-size:34px}.dashboard-welcome .eyebrow{font-size:8px}.dashboard-welcome p:last-child{font-size:11px}.welcome-avatar{height:54px;width:54px}.week-heading h2{font-size:24px}.week-heading>span{font-size:10px}.week-plan{padding-bottom:17px;margin-bottom:22px}.week-heading{margin-bottom:14px}.week-days strong{height:37px;width:37px}.practice-feature.v2-card{border-radius:24px}.practice-feature .practice-visual{height:210px;min-height:210px;padding:21px}.practice-feature .practice-copy{padding:26px}.practice-copy h2{font-size:34px}.practice-copy p{font-size:13px}.practice-copy .btn{width:100%}.v2-card,.v2-workspace .card{border-radius:24px;padding:24px;margin-bottom:18px}.practice-feature.v2-card{padding:0}.mood-checkin h2{font-size:25px}.mood-options{gap:5px}.mood-options button{padding:8px 2px;border-radius:13px;font-size:10px;min-height:78px}.mood-checkin:has(.text-button){align-items:flex-start;flex-direction:column;gap:8px}.today-aside .axis-values{grid-template-columns:1fr 1fr}.streak-day{aspect-ratio:1}.bottom-nav{background:#fffefbf5;backdrop-filter:blur(14px);padding-top:8px;padding-bottom:max(9px,env(safe-area-inset-bottom));box-shadow:0 -5px 20px #30273d05;border-color:#e8e6e1}.bottom-nav a{border-radius:15px;font-size:10px;min-height:53px}.onboarding.v2-card{padding:28px;margin:0 auto 22px}.onboarding h1{font-size:37px}.v2-workspace .tabs{width:100%;overflow:auto;flex-wrap:nowrap}.v2-workspace .tabs a{padding:10px 12px;font-size:11px;white-space:nowrap}.v2-workspace .admin-tabs{flex-wrap:wrap}.account-menu nav{position:absolute;right:0;top:55px}.v2-workspace .page-heading{margin-bottom:24px}}
