/* ═══ NOUVELLE VERSION · styles GLOBAUX (le reste vit dans le Shadow DOM de l'accueil : nv/vues.css) ═══
   ⚠️ Tout commence par « body.nv » ou « .nv » : rien ne touche l'ancienne version. */
.nv-hote{position:relative;height:calc(100dvh - var(--top-h,64px));min-height:520px}
.nv-shadowhost{position:absolute;inset:0;display:block}
body.nvplein .content{max-width:none;padding:0;--cx:0px;--cy:0px}
body.nvplein .main{height:100dvh;min-height:0}

/* l'interrupteur (en haut à droite) */
.nvbtn{border:1px solid var(--line2,#d9d2c6);background:var(--surface,#fff);color:var(--accent-strong,#12807d);font:600 12.5px var(--font,inherit);border-radius:99px;padding:6px 13px;cursor:pointer;white-space:nowrap;transition:background .2s}
.nvbtn:hover{background:var(--accent-soft,#dcf0ed)}.nvbtn:active{filter:brightness(.95)}
.nvbtn[hidden]{display:none}
/* Téléphone : l'interrupteur (136 px) poussait la cloche hors de l'écran et toute la page
   défilait de côté (scrollWidth 407 pour 390). Sous 480 px il se retire de la barre ;
   le choix reste dans Réglages › « Version du hub ». */
@media (max-width:480px){.nvbtn#nvBascule{display:none}}
.nvmarque{display:none;align-items:center;gap:9px;color:var(--ink,#171512);text-decoration:none;margin-right:6px;flex:none}
.nvmarque i{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--accent,#1da8a6),var(--accent-strong,#12807d));display:grid;place-items:center;color:#fff;font:700 13px/1 Sora,system-ui,sans-serif;font-style:normal}
.nvmarque b{font:700 15px Sora,system-ui,sans-serif;letter-spacing:-.01em}
body.nv .nvmarque{display:flex}
@media (max-width:480px){.nvmarque b{display:none}}
body.nv .crumb{display:none}

/* plus de menu à gauche : la coquille prend toute la largeur, le menu devient un tiroir à la demande (bouton ☰) */
body.nv .shell,body.nv.rail .shell{grid-template-columns:minmax(0,1fr)!important}
body.nv .sidebar,body.nv.rail .sidebar{position:fixed!important;left:0;top:0;bottom:0;width:min(300px,84vw)!important;transform:translateX(-104%);visibility:hidden;transition:transform .26s cubic-bezier(.32,.72,.28,1),visibility 0s linear .26s;z-index:60;box-shadow:0 0 0 rgba(0,0,0,0)}
body.nv .sidebar.nvopen{transform:none;visibility:visible;transition-delay:0s;box-shadow:12px 0 40px -12px rgba(0,0,0,.35)}
body.nv .burger{display:grid!important}
@media (prefers-reduced-motion:reduce){body.nv .sidebar{transition:none}}

/* ═══ LA BOÎTE MAIL · habillage de la nouvelle version (aucune structure changée : les mêmes mails, les mêmes gestes) ═══
   Avatars à initiales (posés par nv.js : data-ini / --av), dossiers colorés (--fc), volets adoucis. */
body.nv .mail4{border:0;border-radius:20px;box-shadow:0 1px 2px rgba(14,40,38,.05),0 14px 34px -16px rgba(14,60,56,.22)}
body.nv .mrail{background:var(--surface2,#f7faf9);border-right:1px solid var(--line,#e7e1d7)}
body.nv .mdoss button{height:34px;border-radius:10px;transition:background .15s}
body.nv .mdoss button.on{box-shadow:none;background:var(--accent-soft,#dcf0ed)}
body.nv .mdoss button.r-autre svg,body.nv .mdoss button.mvue svg{color:var(--fc,var(--faint))}
body.nv .mdoss button.r-autre[data-fc]::after{content:none}
body.nv .mliste2{border-right:1px solid var(--line,#e7e1d7)}
/* liste : avatar rond à gauche, la case de sélection le remplace au survol */
body.nv .mrow2{grid-template-columns:44px 1fr auto;padding:12px 14px 12px 12px;border-bottom:1px solid color-mix(in srgb,var(--line,#e7e1d7) 70%,transparent);transition:background .15s,box-shadow .15s}
body.nv .mrow2::before{content:attr(data-ini);position:absolute;left:12px;top:13px;width:32px;height:32px;border-radius:50%;background:var(--av,#8aa);color:#fff;display:grid;place-items:center;font:700 11.5px/1 Sora,system-ui,sans-serif;letter-spacing:.02em;box-shadow:0 0 0 2px var(--surface,#fff);transition:opacity .15s,transform .25s cubic-bezier(.34,1.45,.44,1)}
body.nv .mrow2:hover::before,body.nv .mrow2.sel::before,body.nv .mail4.selon .mrow2::before{opacity:0}
body.nv .mrow2 .mck{justify-self:center;align-self:start;margin-top:5px;margin-left:-2px}
body.nv .mrow2 .pt{left:4px;top:26px;width:7px;height:7px;box-shadow:0 0 0 2px var(--surface,#fff)}
/* ⚠️ les règles « .mail4 .mrow2 .pt » de l'ancienne version, plus précises, gagnaient : le point
   tombait EN PLEIN sur la 1re initiale (« LM » lu « •M »). Il se pose au coin bas-droit du disque,
   cerclé de la couleur du fond, hors des lettres. */
body.nv .mail4 .mrows .mrow2 .pt,body.nv .mail4 .mrow2 .pt{left:37px;top:38px;width:8px;height:8px}
body.nv .mrow2.on{background:var(--accent-soft,#dcf0ed);box-shadow:inset 3px 0 0 var(--accent,#1da8a6)}
body.nv .mrow2 .de{gap:8px}
body.nv .mrow2.nl .obj{font-weight:600}
body.nv .mrow2 .pj{color:var(--accent,#1da8a6)}
body.nv .mrow2 .mimp{color:#e0a100}
/* volet de lecture : un peu plus d'air */
body.nv .mail4 .m3read{padding:0 44px 44px}

/* petit écran : la coquille défile au lieu de tout couper à la hauteur de l'écran
   (1100 px, comme vues.css qui empile les colonnes dès 1100 : entre 900 et 1100 la pile
   était coupée par la scène fixe et rien ne défilait) */
@media (max-width:1100px){
  .nv-hote{height:auto;min-height:calc(100dvh - var(--top-h,64px))}
  .nv-shadowhost{position:static}
}
/* 28/09 · le choix de l'accueil (Carte · Écran d'accueil · Vue actuelle), dans la barre du haut, sur l'accueil seulement */
.nvstyles{display:inline-flex;gap:2px;padding:3px;margin-right:8px;border-radius:99px;background:var(--sunk,#efeae2);flex:none}
.nvstyles[hidden]{display:none}
.nvstyles button{height:28px;padding:0 12px;border:0;border-radius:99px;background:none;color:var(--muted,#6e675e);font:600 12.5px var(--font,inherit);white-space:nowrap;cursor:pointer;transition:background-color .15s,color .15s}
.nvstyles button:hover{color:var(--ink,#1c1a17)}
.nvstyles button.on{background:var(--surface,#fff);color:var(--ink,#1c1a17);box-shadow:0 1px 3px rgba(23,21,18,.12)}
@media (max-width:1100px){.nvstyles{display:none}}
