/* Navigation latérale partagée : mobile public, tous formats en espace Pro. */
.menu-toggle,.menu-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;padding:10px;border:1px solid #414a37;border-radius:10px;background:#15190d;color:#c5f20d;cursor:pointer;font:inherit}
.menu-toggle{display:none}
.menu-lines{display:flex;flex-direction:column;gap:5px;width:22px}
.menu-lines i{display:block;height:2px;width:100%;background:currentColor;border-radius:2px}
.menu-close{font-size:28px;line-height:1}
.menu-toggle:focus-visible,.menu-close:focus-visible{outline:3px solid #c5f20d;outline-offset:3px}
.navigation-drawer{position:fixed;inset:0 auto 0 0;margin:0;width:min(320px,90vw);max-width:90vw;height:100dvh;max-height:100dvh;box-sizing:border-box;padding:20px;background:#0c1209;color:#fafbf6;border:0;border-right:1px solid #303a27;overflow-y:auto;overscroll-behavior:contain}
.navigation-drawer::backdrop{background:rgb(0 0 0 / .65)}
.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}
.navigation-drawer nav,.navigation-drawer .workspace-nav{position:static;inset:auto;width:100%;display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0;padding:0;border:0;border-radius:0;overflow:visible;white-space:normal}
.navigation-drawer nav a,.navigation-drawer .workspace-nav a,.navigation-drawer .workspace-nav button{display:flex;align-items:center;min-height:48px;padding:12px 14px;text-align:left;white-space:normal;text-decoration:none;font-size:16px;border-radius:8px}
.navigation-drawer nav a:hover{background:#26361a}
.navigation-drawer .sidebar-brand{display:block;margin:0 0 20px}
.navigation-drawer .sidebar-foot{display:block;margin-top:24px}
.navigation-open{overflow:hidden}
body:has(#dashboard:not([hidden]))>header{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:16px;margin-left:0;padding:20px clamp(20px,3vw,36px)}
body:has(#dashboard:not([hidden]))>header>nav{margin-left:auto}
body:has(#dashboard:not([hidden])) .pro-menu-toggle{display:inline-flex}
body:has(#dashboard:not([hidden])) .portal{margin-left:0;padding:28px clamp(20px,3vw,36px)}
body:has(#dashboard:not([hidden]))>footer{margin-left:auto}
@media(max-width:640px){
 body>header:has(.menu-toggle:not(.pro-menu-toggle)){display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;padding:20px}
 .menu-toggle:not(.pro-menu-toggle){display:inline-flex}
 body>header:has(.menu-toggle:not(.pro-menu-toggle))>nav{display:none}
 body>header .brand{font-size:23px}
 body:has(#dashboard:not([hidden]))>header{flex-wrap:wrap;gap:12px}
 body:has(#dashboard:not([hidden]))>header>nav{width:auto}
 .portal input:not([type=checkbox]):not([type=radio]),.portal select,.portal textarea{font-size:16px}
 .plans .card{padding:24px}
}
@media(max-width:360px){
 header,main,footer{padding-left:20px;padding-right:20px}
 .button{padding:14px 18px;gap:12px;font-size:15px;max-width:100%}
 .plans .card{padding:22px}
}

/* Déconnexion en bas du tiroir, sur tous les formats. */
.navigation-drawer .workspace-nav{min-height:calc(100dvh - 108px)}
.navigation-drawer .sidebar-foot{margin-top:auto;padding:22px 0 0}
.navigation-drawer .workspace-nav #logout{width:100%;margin-top:16px;min-height:48px;justify-content:center;border:1px solid #704642;background:#2d1e19;color:#ffc4b6;font-size:15px;text-align:center}
.navigation-drawer .workspace-nav #logout:hover{background:#43271f}
body:has(#logout:not([hidden])) .pro-menu-toggle{display:inline-flex}
body:has(#dashboard[hidden]) #navigation-drawer .workspace-nav>:not(.sidebar-foot){display:none}
