/* Fransou · Applications v2 (18/10/2026) · le Launchpad, ses sous-pages et le lanceur ⌘ K. Tout est sous .ap2 et .ap2-l : rien ne touche aux autres
   pages. Thème Encre de la charte v0.3 et thème clair. Fransou Texte pour tout ce qui se lit, Fransou Forme pour le seul grand titre.
   Rien sous 12 px, cibles de 44 px, aucun bouton plein (le tiroir n'a pas de geste principal), mouvement en transform et opacity,
   coupé sous prefers-reduced-motion. Polices : Texte servie par Devis et factures v2, Forme posée par ce module. */
@font-face{font-family:'Fransou Texte';src:url('/factures-v2/fonts/FransouTexte-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Fransou Texte';src:url('/factures-v2/fonts/FransouTexte-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Fransou Texte';src:url('/factures-v2/fonts/FransouTexte-Semibold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Fransou Forme';src:url('/applications-v2/FransouForme-Semibold.woff2') format('woff2');font-weight:600;font-display:swap}
.ap2,.ap2-l{
  --fond:#0C181C;--fond-2:#0F1E23;--fond-3:#132429;--tuile:#14272D;--tuile-2:#1A3138;--texte:#FFFFFF;--sec:#BCC6C9;--filet:#22363C;--filet-2:#33494F;
  --alerte:#FF8566;--sur-alerte:#0C181C;--soie-op:.065;--ombre:0 18px 44px rgba(0,0,0,.38);--voile:rgba(12,24,28,.72);
  --police:'Fransou Texte',system-ui,-apple-system,sans-serif;--r-pastille:4px;--r-champ:6px;--r-bouton:8px;--r-carte:12px;--r-tuile:20px;
  --t-press:140ms;--t-menu:180ms;--ease-out:cubic-bezier(.23,1,.32,1);--ease-drawer:cubic-bezier(.32,.72,0,1);
  color-scheme:dark;font:400 15px/1.55 var(--police);font-synthesis:none;font-variant-numeric:tabular-nums;-webkit-text-size-adjust:100%;letter-spacing:normal;text-align:left
}
.ap2[data-theme=clair],.ap2-l[data-theme=clair]{
  --fond:#FFFFFF;--fond-2:#F7F8F7;--fond-3:#FFFFFF;--tuile:#F3F4F3;--tuile-2:#E8ECEB;--texte:#0C181C;--sec:#536066;--filet:#D7DDDE;--filet-2:#C3CCCE;
  --alerte:#B4472B;--sur-alerte:#FFFFFF;--soie-op:.05;--ombre:0 18px 44px rgba(12,24,28,.14);--voile:rgba(243,244,243,.78);color-scheme:light
}
.ap2{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;z-index:1;background:var(--fond);color:var(--texte);isolation:isolate}
.ap2 *,.ap2 *::before,.ap2 *::after,.ap2-l *,.ap2-l *::before,.ap2-l *::after{box-sizing:border-box}
.ap2 a,.ap2-l a{color:inherit;text-decoration:none}
.ap2 button,.ap2 input,.ap2 select,.ap2-l button,.ap2-l input{font:inherit;color:inherit;letter-spacing:normal;margin:0}
.ap2 button,.ap2-l button{cursor:pointer;background:transparent;border:0;padding:0;text-align:inherit}
.ap2 button:disabled{cursor:default;opacity:.45}
.ap2 h1,.ap2 h2,.ap2 p{margin:0}
.ap2 [hidden]{display:none!important}
.ap2 :focus-visible,.ap2-l :focus-visible{outline:2px solid var(--texte);outline-offset:3px;border-radius:8px}
.ap2 .ap2-vh,.ap2-l .ap2-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ap2 .ap2-ic{flex:none}
.ap2 .ap2-chargement{padding:40px;color:var(--sec)}
.ap2 kbd,.ap2-l kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border:1px solid var(--filet-2);border-radius:5px;font:500 12px/1 var(--police);color:var(--sec)}

/* La casquette SOIE : très grande, derrière tout, à la même place sur chaque page du tiroir */
.ap2 .ap2-soie-cadre{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.ap2 .ap2-soie{position:absolute;top:60px;right:-420px;width:1560px;opacity:var(--soie-op);pointer-events:none;transform:rotate(-6deg);will-change:transform}
.ap2 .ap2-entete,.ap2 .ap2-espaces,.ap2 .ap2-page{position:relative;z-index:1}
.ap2 .ap2-soie svg{display:block;width:100%;height:auto}.ap2 .ap2-soie path{fill:var(--texte)}

/* En-tête : le nom seul, le fil, la navigation, le lanceur */
.ap2 .ap2-entete{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;height:68px;padding:0 40px;border-bottom:1px solid var(--filet)}
.ap2 .ap2-g{display:flex;align-items:center;gap:24px;min-width:0}
.ap2 .ap2-nom{display:inline-flex;align-items:center;min-height:44px}.ap2 .ap2-nom img{height:20px;width:auto;display:block}
.ap2 .ap2-nom-e{display:none!important}.ap2[data-theme=clair] .ap2-nom-b{display:none!important}.ap2[data-theme=clair] .ap2-nom-e{display:block!important}
.ap2 .ap2-fil{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--sec);white-space:nowrap;min-width:0}
.ap2 .ap2-fil a:hover{color:var(--texte)}.ap2 .ap2-fil b{color:var(--texte);font-weight:500}.ap2 .ap2-fil i{font-style:normal;opacity:.7}
.ap2 .ap2-nav{display:flex;gap:2px}
.ap2 .ap2-nav a{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:var(--r-bouton);color:var(--sec);font-weight:500;font-size:14px;transition:background-color var(--t-menu),color var(--t-menu)}
.ap2 .ap2-nav a:hover,.ap2 .ap2-nav a[aria-current]{background:var(--tuile);color:var(--texte)}
.ap2 .ap2-k{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 10px 0 12px;border:1px solid var(--filet-2);border-radius:var(--r-bouton);color:var(--sec);transition:background-color var(--t-menu),transform var(--t-press) var(--ease-out)}
.ap2 .ap2-k:hover{background:var(--tuile);color:var(--texte)}.ap2 .ap2-k:active{transform:scale(.97)}
.ap2 .ap2-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--filet-2);font-weight:600;font-size:13px;position:relative}
.ap2 .ap2-avatar::after{content:"";position:absolute;inset:-4px}

/* Les pages du tiroir */
.ap2 .ap2-espaces{display:flex;gap:4px;padding:0 40px;border-bottom:1px solid var(--filet);overflow-x:auto;scrollbar-width:none}
.ap2 .ap2-espaces::-webkit-scrollbar{display:none}
.ap2 .ap2-espaces a{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 14px;color:var(--sec);font-weight:500;font-size:14px;white-space:nowrap;transition:color var(--t-menu)}
.ap2 .ap2-espaces a::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--texte);transform:scaleX(0);transition:transform 220ms var(--ease-out)}
.ap2 .ap2-espaces a[aria-current]{color:var(--texte)}.ap2 .ap2-espaces a[aria-current]::after{transform:scaleX(1)}
.ap2 .ap2-espaces a:hover{color:var(--texte)}
.ap2 .ap2-c{min-width:20px;height:20px;padding:0 6px;display:inline-grid;place-items:center;border:1px solid var(--filet-2);border-radius:10px;font-size:12px;font-weight:600;color:var(--texte)}

.ap2 .ap2-page{max-width:1180px;margin:0 auto;padding:48px 48px 150px;animation:ap2-arrive .22s var(--ease-out)}
@keyframes ap2-arrive{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
.ap2 .ap2-hero{max-width:820px}
.ap2 .ap2-sur{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sec);font-weight:500}
.ap2 .ap2-titre{font-family:'Fransou Forme','Fransou Texte',system-ui,sans-serif;font-weight:600;font-size:clamp(44px,5.4vw,72px);line-height:1.05;letter-spacing:-.01em;margin:12px 0 16px;overflow-wrap:anywhere}
.ap2 .ap2-phrase{color:var(--sec);font-size:17px;line-height:1.55;max-width:680px}
.ap2 .ap2-lien-b{text-decoration:underline;text-underline-offset:3px;color:var(--texte);font-weight:500;min-height:32px}
.ap2 .ap2-retour{display:inline-flex;align-items:center;gap:6px;min-height:40px;margin:-12px 0 10px;color:var(--sec);font-size:14px;font-weight:500}
.ap2 .ap2-retour:hover{color:var(--texte)}

/* La barre d'actions */
.ap2 .ap2-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:32px}
.ap2 .ap2-recherche{flex:1 1 320px;min-width:0;display:flex;align-items:center;gap:12px;height:48px;padding:0 14px;border:1px solid var(--filet-2);border-radius:12px;background:var(--fond-2);color:var(--sec);transition:border-color var(--t-menu)}
.ap2 .ap2-recherche:focus-within{border-color:var(--texte)}
.ap2 .ap2-recherche input{flex:1;min-width:0;height:44px;border:0;outline:0;background:transparent;font-size:16px;color:var(--texte);-webkit-appearance:none;appearance:none}
.ap2 .ap2-recherche input::placeholder{color:var(--sec);opacity:1}
.ap2 .ap2-recherche input::-webkit-search-cancel-button{display:none}
.ap2 .ap2-select{position:relative;display:inline-flex;align-items:center;height:48px;border:1px solid var(--filet-2);border-radius:var(--r-bouton);color:var(--sec)}
.ap2 .ap2-select select{height:46px;padding:0 38px 0 14px;border:0;background:transparent;color:var(--texte);font-size:14px;font-weight:500;-webkit-appearance:none;appearance:none;cursor:pointer;max-width:100%}
.ap2 .ap2-select select option{background:var(--fond-3);color:var(--texte)}
.ap2 .ap2-select .ap2-ic{position:absolute;right:12px;pointer-events:none}
.ap2 .ap2-select.ap2-large{flex:1 1 300px;min-width:0}.ap2 .ap2-select.ap2-large select{width:100%}
.ap2 .ap2-vue{display:inline-flex;height:48px;border:1px solid var(--filet-2);border-radius:var(--r-bouton);overflow:hidden}
.ap2 .ap2-vue button{width:46px;display:grid;place-items:center;color:var(--sec);transition:background-color var(--t-menu),color var(--t-menu)}
.ap2 .ap2-vue button[aria-pressed=true]{background:var(--tuile-2);color:var(--texte)}
.ap2 .ap2-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 16px;border:1px solid var(--filet-2);border-radius:var(--r-bouton);font-weight:500;font-size:14px;white-space:nowrap;transition:background-color var(--t-menu),transform var(--t-press) var(--ease-out)}
.ap2 .ap2-btn:hover:not(:disabled){background:var(--tuile)}.ap2 .ap2-btn:active:not(:disabled){transform:scale(.97)}
.ap2 .ap2-btn.ap2-actif{background:var(--tuile-2)}
.ap2 .ap2-choix{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border:1px solid var(--filet-2);border-radius:var(--r-carte);background:var(--fond-2);animation:ap2-arrive .18s var(--ease-out)}
.ap2 .ap2-choix span{flex:1 1 180px;color:var(--sec);font-size:14px}
.ap2 .ap2-choix .ap2-btn{min-height:44px}

/* Les domaines en puces */
.ap2 .ap2-puces{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.ap2 .ap2-puce{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 15px;border-radius:20px;border:1px solid var(--filet);color:var(--sec);font-size:14px;font-weight:500;white-space:nowrap;transition:background-color var(--t-menu),color var(--t-menu),border-color var(--t-menu)}
.ap2 .ap2-puce small{font-size:12px;opacity:.8}
.ap2 .ap2-puce:hover{color:var(--texte);border-color:var(--filet-2)}
.ap2 .ap2-puce[aria-current]{background:var(--texte);border-color:var(--texte);color:var(--fond)}

/* L'étagère des favorites */
.ap2 .ap2-etagere{margin-top:40px;padding:22px 24px 18px;border:1px solid var(--filet);border-radius:24px;background:var(--fond-2)}
.ap2 .ap2-etagere-t{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.ap2 .ap2-etagere-t h2{font-size:16px;font-weight:600;white-space:nowrap}
.ap2 .ap2-etagere-t p{flex:1;color:var(--sec);font-size:13px;min-width:0}
.ap2 .ap2-etagere-t .ap2-btn{min-height:40px}
.ap2 .ap2-rangee{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:16px 8px}

/* Les domaines */
.ap2 .ap2-domaine{margin-top:48px}
.ap2 .ap2-domaine-t{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--filet)}
.ap2 .ap2-domaine-t h2{font-size:20px;font-weight:600}
.ap2 .ap2-domaine-t span{color:var(--sec);font-size:13px}
.ap2 .ap2-domaine-t a{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-height:36px;color:var(--sec);font-size:13px;font-weight:500}
.ap2 .ap2-domaine-t a:hover{color:var(--texte)}
.ap2 .ap2-grille{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:24px 8px}

/* La tuile, façon iOS */
.ap2 .ap2-tuile{position:relative;min-width:0;border-radius:16px}
.ap2 .ap2-tuile .ap2-ouvrir{display:flex;flex-direction:column;align-items:center;gap:9px;padding:8px 4px 6px;text-align:center;border-radius:16px;min-width:0}
.ap2 .ap2-icone{position:relative;width:72px;height:72px;flex:none;display:grid;place-items:center;border-radius:var(--r-tuile);background:var(--tuile);border:1px solid var(--filet);color:var(--texte);transition:transform 220ms var(--ease-out),background-color var(--t-menu),border-color var(--t-menu)}
.ap2 .ap2-icone .ap2-ic{width:30px;height:30px}
.ap2 .ap2-tuile .ap2-ouvrir:hover .ap2-icone{transform:translateY(-3px);background:var(--tuile-2);border-color:var(--filet-2)}
.ap2 .ap2-tuile .ap2-ouvrir:active .ap2-icone{transform:scale(.94);transition-duration:120ms}
.ap2 .ap2-n{font-size:13px;line-height:1.3;max-width:124px;overflow-wrap:anywhere}
.ap2 .ap2-e{font-size:12px;line-height:1.3;color:var(--sec);max-width:132px;margin-top:-4px}
.ap2 .ap2-al{color:var(--alerte)!important}
.ap2 .ap2-pastille,.ap2-l .ap2-pastille{position:absolute;top:-7px;right:-9px;min-width:24px;height:24px;padding:0 7px;display:grid;place-items:center;border-radius:12px;background:var(--texte);color:var(--fond);font-size:12px;font-weight:600;border:2px solid var(--fond);animation:ap2-pop .45s var(--ease-out) both}
.ap2 .ap2-pastille.ap2-al,.ap2-l .ap2-pastille.ap2-al{background:var(--alerte);color:var(--sur-alerte)!important}
.ap2 .ap2-point{position:absolute;top:-3px;right:-3px;width:12px;height:12px;border-radius:50%;background:var(--alerte);border:2px solid var(--fond)}
@keyframes ap2-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
.ap2 .ap2-menu-b{position:absolute;top:0;left:4px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:var(--sec);opacity:0;transition:opacity var(--t-menu),background-color var(--t-menu)}
.ap2 .ap2-tuile:hover .ap2-menu-b,.ap2 .ap2-menu-b:focus-visible,.ap2 .ap2-menu-b[aria-expanded=true]{opacity:1}
.ap2 .ap2-menu-b:hover{background:var(--tuile-2);color:var(--texte)}
@media (hover:none){.ap2 .ap2-menu-b{opacity:.7;width:28px;height:28px}}
.ap2 .ap2-menu{position:fixed;z-index:30;min-width:220px;padding:6px;border:1px solid var(--filet-2);border-radius:var(--r-carte);background:var(--fond-3);box-shadow:var(--ombre);animation:ap2-menu .16s var(--ease-out);transform-origin:top left}
@keyframes ap2-menu{from{opacity:0;transform:scale(.96)}}
.ap2 .ap2-menu button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 12px;border-radius:8px;font-size:14px;font-weight:500;white-space:nowrap}
.ap2 .ap2-menu button:hover,.ap2 .ap2-menu button:focus-visible{background:var(--tuile)}
/* Mode modification : les icônes frissonnent, on retire d'un geste, on glisse */
.ap2 .ap2-edition .ap2-icone{animation:ap2-frisson .3s ease-in-out infinite alternate}
.ap2 .ap2-edition:nth-child(2n) .ap2-icone{animation-delay:-.15s}
@keyframes ap2-frisson{from{transform:rotate(-1.5deg)}to{transform:rotate(1.5deg)}}
.ap2 .ap2-retirer{position:absolute;top:0;left:calc(50% - 46px);width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--tuile-2);border:1px solid var(--filet-2);color:var(--texte);z-index:2}
.ap2 .ap2-retirer::after{content:"";position:absolute;inset:-8px}
.ap2 [data-ap2-rangee] > *{touch-action:pan-y;cursor:grab}
.ap2 .ap2-edition{touch-action:none}
.ap2 .ap2-glisse{z-index:6;opacity:.92;cursor:grabbing;transition:none!important}
.ap2 .ap2-glisse .ap2-icone{box-shadow:var(--ombre);transform:scale(1.06)!important;animation:none}
.ap2 .ap2-cible .ap2-icone,.ap2 .ap2-cible.ap2-ordre-l{outline:2px dashed var(--sec);outline-offset:4px}
/* Sélection multiple */
.ap2 .ap2-case{position:absolute;z-index:2;top:2px;left:8px;width:26px;height:26px;display:grid;place-items:center;border-radius:7px;border:1.5px solid var(--filet-2);background:var(--fond)}
.ap2 .ap2-case::after{content:"";position:absolute;inset:-9px}
.ap2 .ap2-choisie .ap2-case{background:var(--texte);border-color:var(--texte);color:var(--fond)}
.ap2 .ap2-choisie .ap2-icone{border-color:var(--texte)}

/* Vue en liste */
.ap2 .ap2-liste{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}
.ap2 .ap2-ligne,.ap2 .ap2-ordre-l{position:relative;display:flex;align-items:center;gap:6px;min-height:58px;padding:4px 6px;border-radius:10px;transition:background-color var(--t-menu)}
.ap2 .ap2-ligne:hover,.ap2 .ap2-ordre-l:hover{background:var(--tuile)}
.ap2 .ap2-ligne .ap2-case{position:relative;top:auto;left:auto;margin:0 6px}
.ap2 .ap2-ligne .ap2-ouvrir,.ap2 .ap2-ordre-l .ap2-ouvrir{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:50px}
.ap2 .ap2-icone.ap2-petite{width:38px;height:38px;border-radius:11px}.ap2 .ap2-icone.ap2-petite .ap2-ic{width:18px;height:18px}
.ap2 .ap2-t{display:flex;flex-direction:column;min-width:0;line-height:1.3}.ap2 .ap2-t b{font-weight:500;font-size:15px}.ap2 .ap2-t small{color:var(--sec);font-size:13px}
.ap2 .ap2-etoile,.ap2 .ap2-mini{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:var(--sec);flex:none;transition:background-color var(--t-menu),color var(--t-menu),transform var(--t-press) var(--ease-out)}
.ap2 .ap2-etoile:hover,.ap2 .ap2-mini:hover:not(:disabled){background:var(--tuile-2);color:var(--texte)}
.ap2 .ap2-etoile:active,.ap2 .ap2-mini:active:not(:disabled){transform:scale(.9)}
.ap2 .ap2-etoile.ap2-on{color:var(--texte)}.ap2 .ap2-etoile.ap2-on .ap2-ic{fill:currentColor}
.ap2 .ap2-ligne .ap2-btn{min-height:44px}
/* L'ordre des favorites */
.ap2 .ap2-ordre{list-style:none;margin:28px 0 0;padding:0;max-width:760px;display:flex;flex-direction:column;gap:6px}
.ap2 .ap2-ordre-l{border:1px solid var(--filet);background:var(--fond-2)}
.ap2 .ap2-poignee{display:grid;place-items:center;width:28px;color:var(--sec)}
.ap2 .ap2-rang{width:22px;text-align:center;color:var(--sec);font-size:13px;font-weight:600}
/* Une carte d'actions (Masquées) */
.ap2 .ap2-carte{margin-top:32px;padding:20px 22px;border:1px solid var(--filet);border-radius:var(--r-carte);background:var(--fond-2)}
.ap2 .ap2-carte h2{font-size:16px;font-weight:600}.ap2 .ap2-carte p{color:var(--sec);font-size:14px;margin-top:4px}.ap2 .ap2-carte .ap2-actions{margin-top:16px}
/* Mots courts */
.ap2 .ap2-mots{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.ap2 .ap2-mots li{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 4px 0 12px;border:1px solid var(--filet);border-radius:10px}
.ap2 .ap2-mots li span{flex:1;min-width:0}
.ap2 .ap2-recherche.ap2-mot{flex:0 1 220px}
.ap2 .ap2-carte{max-width:820px}
/* Réglages */
.ap2 .ap2-reglages{display:flex;flex-direction:column;gap:12px;margin-top:32px;max-width:820px}
.ap2 .ap2-reglage{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;border:1px solid var(--filet);border-radius:var(--r-carte);background:var(--fond-2)}
.ap2 .ap2-reglage > div:first-child{display:flex;flex-direction:column;min-width:0}.ap2 .ap2-reglage b{font-weight:600}.ap2 .ap2-reglage small{color:var(--sec);font-size:13px}
.ap2 .ap2-segm{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--filet-2);border-radius:10px;flex:none}
.ap2 .ap2-segm button{min-height:40px;padding:0 14px;border-radius:7px;font-size:14px;font-weight:500;color:var(--sec);white-space:nowrap;transition:background-color var(--t-menu),color var(--t-menu)}
.ap2 .ap2-segm button[aria-pressed=true]{background:var(--texte);color:var(--fond)}
.ap2 .ap2-note{margin-top:28px;color:var(--sec);font-size:14px;max-width:760px}.ap2 .ap2-note a{color:var(--texte);text-decoration:underline;text-underline-offset:3px}
.ap2 .ap2-vide{margin-top:28px;color:var(--sec)}.ap2 .ap2-vide a{color:var(--texte);text-decoration:underline}
.ap2 .ap2-rien{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.ap2 .ap2-rien p{flex-basis:100%;color:var(--sec)}
.ap2 .ap2-autres{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:56px;padding-top:20px;border-top:1px solid var(--filet);color:var(--sec);font-size:14px}
.ap2 .ap2-lien-d{display:inline-flex;align-items:center;min-height:40px;color:var(--texte);font-weight:500}.ap2 .ap2-lien-d:hover{text-decoration:underline}

/* Le dock (bureau) devient la barre du bas (téléphone) */
.ap2 .ap2-dock{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:4;display:flex;align-items:center;gap:6px;padding:8px;border:1px solid var(--filet-2);border-radius:22px;background:var(--fond-3);box-shadow:var(--ombre)}
.ap2 .ap2-dock a,.ap2 .ap2-dock button{display:flex;align-items:center;gap:8px;height:48px;padding:0 14px;border-radius:14px;color:var(--sec);font-size:14px;font-weight:500;transition:background-color var(--t-menu),color var(--t-menu),transform var(--t-press) var(--ease-out)}
.ap2 .ap2-dock a:hover,.ap2 .ap2-dock button:hover{background:var(--tuile-2);color:var(--texte)}
.ap2 .ap2-dock a:active,.ap2 .ap2-dock button:active{transform:scale(.95)}
.ap2 .ap2-dock a[aria-current]{background:var(--texte);color:var(--fond)}

/* L'annonce (avec Annuler) */
.ap2 .ap2-annonce{position:fixed;left:50%;bottom:100px;transform:translateX(-50%);z-index:8;display:flex;align-items:center;gap:16px;max-width:calc(100% - 32px);padding:12px 16px;border-radius:12px;background:var(--texte);color:var(--fond);font-size:14px;font-weight:500;box-shadow:var(--ombre);animation:ap2-annonce .22s var(--ease-out)}
@keyframes ap2-annonce{from{opacity:0;transform:translate(-50%,8px)}}
.ap2 .ap2-annonce button{min-height:36px;padding:0 6px;font-weight:600;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

/* Ouverture façon iOS (hors de .ap2 : elle survit au changement de page) */
.ap2-ouverture{position:fixed;left:0;top:0;width:100vw;height:100vh;z-index:9999;background:#14272D;border-radius:20px;transform-origin:0 0;pointer-events:none;transition:transform 230ms cubic-bezier(.32,.72,0,1),border-radius 230ms,opacity 200ms ease}
.ap2-ouverture.ap2-ouverture-clair{background:#F3F4F3}

/* Le lanceur ⌘ K */
.ap2-l{position:fixed;inset:0;z-index:9000;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:start;padding:12vh 16px 16px;background:var(--voile);color:var(--texte);animation:ap2-voile .16s ease}
@keyframes ap2-voile{from{opacity:0}}
.ap2-l .ap2-l-boite{width:min(680px,100%);max-height:76vh;display:flex;flex-direction:column;border:1px solid var(--filet-2);border-radius:18px;background:var(--fond-3);box-shadow:var(--ombre);overflow:hidden;animation:ap2-monte .22s var(--ease-out)}
@keyframes ap2-monte{from{opacity:0;transform:translateY(8px) scale(.985)}}
.ap2-l .ap2-l-saisie{display:flex;align-items:center;gap:12px;height:62px;padding:0 16px;border-bottom:1px solid var(--filet);color:var(--sec)}
.ap2-l .ap2-l-saisie input{flex:1;min-width:0;height:56px;border:0;outline:0;background:transparent;color:var(--texte);font-size:17px}
.ap2-l .ap2-l-saisie input::placeholder{color:var(--sec);opacity:1}
.ap2-l .ap2-l-res{overflow-y:auto;padding-bottom:8px}
.ap2-l .ap2-l-sec{padding:14px 18px 4px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sec);font-weight:500}
.ap2-l .ap2-l-etat{padding:12px 18px 0;color:var(--sec);font-size:14px}.ap2-l .ap2-l-etat button{text-decoration:underline;color:var(--texte);font-weight:500;min-height:32px}
.ap2-l .ap2-l-favs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:6px 10px 8px}
.ap2-l .ap2-l-fav{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;border-radius:12px;font-size:12px;text-align:center;line-height:1.25}
.ap2-l .ap2-l-fav .ap2-icone{position:relative;width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:var(--tuile);border:1px solid var(--filet)}
.ap2-l .ap2-l-fav kbd{display:none}
.ap2-l .ap2-l-fav:hover,.ap2-l .ap2-l-fav.ap2-on{background:var(--tuile)}
.ap2-l .ap2-l-fav.ap2-on kbd{display:inline-flex}
.ap2-l .ap2-l-ligne{display:flex;align-items:center;gap:14px;width:100%;min-height:48px;padding:8px 18px;font-size:15px;text-align:left}
.ap2-l .ap2-l-ligne > span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ap2-l .ap2-l-ligne small{margin-left:auto;color:var(--sec);font-size:13px;white-space:nowrap;padding-left:12px}
.ap2-l .ap2-l-ligne.ap2-on,.ap2-l .ap2-l-ligne:hover{background:var(--tuile)}
.ap2-l .ap2-l-i{width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:9px;background:var(--tuile);border:1px solid var(--filet)}
.ap2-l .ap2-al{color:var(--alerte)!important}
.ap2-l .ap2-l-pied{display:flex;flex-wrap:wrap;gap:6px 18px;padding:12px 18px;border-top:1px solid var(--filet);color:var(--sec);font-size:12px}

@media (max-width:980px){.ap2 .ap2-grille,.ap2 .ap2-rangee{grid-template-columns:repeat(6,minmax(0,1fr))}.ap2 .ap2-nav{display:none}}
@media (max-width:760px){
  .ap2 .ap2-entete{height:60px;padding:0 16px}.ap2 .ap2-fil,.ap2 .ap2-k{display:none}
  .ap2 .ap2-espaces{padding:0 8px}
  .ap2 .ap2-soie{width:780px;right:-280px;top:70px}
  .ap2 .ap2-page{padding:28px 16px 140px}
  .ap2 .ap2-titre{font-size:42px}.ap2 .ap2-phrase{font-size:16px}
  .ap2 .ap2-actions{margin-top:22px;gap:8px}.ap2 .ap2-recherche{flex-basis:100%}
  .ap2 .ap2-btn{padding:0 12px}
  .ap2 .ap2-puces{flex-wrap:nowrap;overflow-x:auto;margin:14px -16px 0;padding:0 16px 4px;scrollbar-width:none}.ap2 .ap2-puces::-webkit-scrollbar{display:none}
  .ap2 .ap2-etagere{margin-top:26px;padding:16px 10px 12px;border-radius:20px}
  .ap2 .ap2-etagere-t{flex-wrap:wrap;padding:0 6px;gap:6px 12px}.ap2 .ap2-etagere-t p{order:3;flex-basis:100%}.ap2 .ap2-etagere-t .ap2-btn{margin-left:auto}
  .ap2 .ap2-grille,.ap2 .ap2-rangee{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 2px}
  .ap2 .ap2-icone{width:60px;height:60px;border-radius:17px}.ap2 .ap2-icone .ap2-ic{width:26px;height:26px}
  .ap2 .ap2-n{font-size:12px}.ap2 .ap2-e{font-size:12px}
  .ap2 .ap2-domaine{margin-top:34px}.ap2 .ap2-domaine-t h2{font-size:18px}.ap2 .ap2-domaine-t a{margin-left:0}
  .ap2 .ap2-liste{grid-template-columns:1fr}
  .ap2 .ap2-retirer{left:calc(50% - 40px)}
  .ap2 .ap2-reglage{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}
  .ap2 .ap2-dock{left:0;right:0;bottom:0;transform:none;justify-content:space-around;gap:0;padding:6px 6px calc(10px + env(safe-area-inset-bottom));border-radius:0;border-width:1px 0 0;box-shadow:none}
  .ap2 .ap2-dock a,.ap2 .ap2-dock button{flex-direction:column;justify-content:center;gap:3px;height:auto;min-height:54px;padding:4px 8px;font-size:12px}
  .ap2 .ap2-dock a[aria-current]{background:transparent;color:var(--texte)}
  .ap2 .ap2-annonce{bottom:92px}
  .ap2-l{padding:10px 10px 0;align-items:start}.ap2-l .ap2-l-boite{max-height:calc(100vh - 20px)}.ap2-l .ap2-l-favs{grid-template-columns:repeat(4,minmax(0,1fr))}.ap2-l .ap2-l-pied{display:none}.ap2-l .ap2-l-saisie kbd{display:none}.ap2-l .ap2-l-saisie input{font-size:16px}
  .ap2-l .ap2-l-ligne small{max-width:46%;overflow:hidden;text-overflow:ellipsis}
}
@media (prefers-reduced-motion:reduce){.ap2 *,.ap2-l *,.ap2-l{animation:none!important;transition-duration:1ms!important}.ap2 .ap2-soie{transform:rotate(-6deg)!important}.ap2 .ap2-page{animation:none}}
/* Au téléphone, la barre du bas porte déjà « Fransou » : la bulle de conversation de l'appli ne se pose pas sur le tiroir. */
@media (max-width:760px){body:has(.ap2) .fi-talk{display:none!important}}

/* ════════ Le Launchpad (décision de François, 18/10) : la recherche, une page par domaine, les points, le dock. Rien d'autre. ════════ */
.ap2.ap2-mode-lp{overflow:hidden}
.ap2.ap2-mode-lp .ap2-soie{top:50%;left:50%;right:auto;width:1700px;margin:-380px 0 0 -850px;opacity:.16;filter:blur(1px)}
.ap2 .ap2-givre{position:fixed;inset:0;z-index:0;pointer-events:none;backdrop-filter:blur(26px) saturate(1.2);-webkit-backdrop-filter:blur(26px) saturate(1.2);background:color-mix(in srgb,var(--fond) 55%,transparent)}
.ap2 .ap2-lp{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column}
.ap2 .ap2-lp-haut{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:22px 28px 0}
.ap2 .ap2-lp-haut .ap2-nom{justify-self:start}.ap2 .ap2-lp-haut .ap2-nom img{height:18px}
.ap2 .ap2-lp-recherche{display:flex;align-items:center;gap:8px;width:300px;height:40px;padding:0 12px;border:1px solid var(--filet-2);border-radius:10px;background:color-mix(in srgb,var(--fond-2) 70%,transparent);color:var(--sec);transition:border-color var(--t-menu),width .3s var(--ease-out)}
.ap2 .ap2-lp-recherche:focus-within{border-color:var(--texte);width:360px}
.ap2 .ap2-lp-recherche input{flex:1;min-width:0;height:38px;border:0;outline:0;background:transparent;color:var(--texte);font-size:14px;text-align:center;-webkit-appearance:none;appearance:none}
.ap2 .ap2-lp-recherche input::placeholder{color:var(--sec);opacity:1}.ap2 .ap2-lp-recherche input::-webkit-search-cancel-button{display:none}
.ap2 .ap2-lp-coin{justify-self:end;display:flex;align-items:center;gap:10px}
.ap2 .ap2-lp-regl{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;color:var(--sec);transition:background-color var(--t-menu),color var(--t-menu)}.ap2 .ap2-lp-regl:hover{background:var(--tuile);color:var(--texte)}
.ap2 .ap2-lp-fini{min-height:40px;background:var(--texte);color:var(--fond);border-color:var(--texte);font-weight:600}
.ap2 .ap2-lp-titre{text-align:center;margin-top:14px;min-height:20px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--sec)}
.ap2 .ap2-lp-titre b{color:var(--texte);font-weight:600}
.ap2 .ap2-phrase{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ap2 .ap2-phrase.ap2-phrase-vue{position:static;width:auto;height:auto;clip:auto;white-space:normal;text-align:center;font-size:14px;color:var(--sec);margin:6px auto 0;max-width:640px;padding:0 16px}
.ap2 .ap2-page .ap2-phrase.ap2-phrase-vue{text-align:left;margin:0 0 16px;padding:0}
.ap2 .ap2-lp-vitre{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:pan-y}
.ap2 .ap2-lp-rail{display:flex;height:100%;will-change:transform;transition:transform .55s cubic-bezier(.22,1,.36,1)}
.ap2 .ap2-lp-rail.ap2-libre{transition:none}
.ap2 .ap2-lp-page{flex:0 0 100%;min-width:0;display:grid;place-items:center;padding:16px 6vw 0;margin:0;overflow:hidden}
.ap2 .ap2-lp-grille{display:grid;grid-template-columns:repeat(7,128px);gap:30px 30px;justify-content:center;align-content:center}
.ap2 .ap2-lp .ap2-tuile .ap2-ouvrir{gap:12px;padding:6px 2px}
.ap2 .ap2-lp .ap2-icone{width:92px;height:92px;border-radius:24px;background:color-mix(in srgb,var(--tuile) 88%,transparent);box-shadow:0 10px 30px -14px rgba(0,0,0,.35)}
.ap2 .ap2-lp .ap2-icone .ap2-ic{width:38px;height:38px}
.ap2 .ap2-lp .ap2-n{font-size:14px;font-weight:500;max-width:128px}
.ap2 .ap2-lp .ap2-e{font-size:12px;max-width:128px}
.ap2 .ap2-lp-page.ap2-arrive .ap2-tuile{animation:ap2-entre .5s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--ap2-d,0ms)}
.ap2 .ap2-lp-page.ap2-arrive .ap2-tuile:nth-child(n){animation-delay:calc(var(--i,0) * 16ms)}
.ap2 .ap2-lp-page .ap2-tuile[style]{animation:ap2-entre .5s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--ap2-d,0ms)}
@keyframes ap2-entre{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}
.ap2 .ap2-lp .ap2-menu-b{position:absolute;top:-2px;left:calc(50% - 60px);width:28px;height:28px;opacity:1;pointer-events:auto;background:color-mix(in srgb,var(--fond-3) 88%,transparent);border:1px solid var(--filet-2);color:var(--sec);z-index:2}
.ap2 .ap2-lp .ap2-menu-b .ap2-ic{width:14px;height:14px}
.ap2 .ap2-lp .ap2-menu-b::after{content:"";position:absolute;inset:-8px}
.ap2 .ap2-lp .ap2-menu-b:hover,.ap2 .ap2-lp .ap2-menu-b:focus-visible{color:var(--texte);background:var(--tuile-2)}
.ap2 .ap2-lp-dock .ap2-menu-b{top:-8px;left:-8px;width:20px;height:20px}
.ap2 .ap2-lp-dock .ap2-menu-b .ap2-ic{width:11px;height:11px}
.ap2 .ap2-lp-dock .ap2-menu-b::after{inset:-6px}
/* Les choix proposés (renommer, mot court, nom de page) */
.ap2 .ap2-menu-q{font-size:13px;color:var(--sec);font-weight:500}
.ap2 .ap2-choix-l{display:flex;flex-wrap:wrap;gap:6px}
.ap2 .ap2-choix-b{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:18px;border:1px solid var(--filet-2);font-size:14px;font-weight:500;color:var(--texte);transition:background-color var(--t-menu)}
.ap2 .ap2-choix-b:hover,.ap2 .ap2-choix-b:focus-visible{background:var(--tuile-2)}
.ap2 .ap2-lp-fl{position:absolute;top:50%;z-index:3;width:44px;height:44px;margin-top:-22px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--filet-2);background:color-mix(in srgb,var(--fond-3) 80%,transparent);color:var(--texte);opacity:0;transition:opacity .2s}
.ap2 .ap2-lp-vitre:hover .ap2-lp-fl,.ap2 .ap2-lp-fl:focus-visible{opacity:.9}
.ap2 .ap2-lp-fl.ap2-g{left:22px}.ap2 .ap2-lp-fl.ap2-d{right:22px}
.ap2 .ap2-lp-points{display:flex;justify-content:center;gap:4px;padding:12px 0 16px;min-height:20px}
.ap2 .ap2-lp-points button{position:relative;width:20px;height:20px;display:grid;place-items:center}
.ap2 .ap2-lp-points button::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--filet-2);transition:background .2s,transform .2s}
.ap2 .ap2-lp-points button[aria-current]::before{background:var(--texte);transform:scale(1.25)}
.ap2 .ap2-lp-dock{position:relative;align-self:center;margin:0 auto 24px;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:24px;border:1px solid var(--filet-2);background:color-mix(in srgb,var(--fond-3) 75%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);max-width:calc(100% - 24px)}
.ap2 .ap2-lp-dock-favs,.ap2 .ap2-lp-dock-rec{display:flex;gap:8px}
.ap2 .ap2-lp-dock .ap2-tuile .ap2-ouvrir{padding:0}
.ap2 .ap2-lp-dock .ap2-icone{width:56px;height:56px;border-radius:15px;transition:transform .2s var(--ease-out)}
.ap2 .ap2-lp-dock .ap2-icone .ap2-ic{width:24px;height:24px}
.ap2 .ap2-lp-dock .ap2-tuile .ap2-ouvrir:hover .ap2-icone{transform:translateY(-6px) scale(1.12)}
.ap2 .ap2-lp-dock .ap2-pastille{min-width:20px;height:20px;font-size:12px;top:-6px;right:-7px;padding:0 5px}
.ap2 .ap2-lp-sep{width:1px;align-self:stretch;background:var(--filet-2);margin:6px 4px}
.ap2 .ap2-lp-dock-vide{padding:14px 18px;color:var(--sec);font-size:14px}
.ap2 .ap2-lp-edition .ap2-tuile .ap2-icone{animation:ap2-frisson .3s ease-in-out infinite alternate}
.ap2 .ap2-lp-edition .ap2-tuile:nth-child(2n) .ap2-icone{animation-delay:-.15s}
.ap2 .ap2-lp-edition .ap2-tuile{cursor:grab;touch-action:none}
.ap2 .ap2-lp .ap2-retirer{left:calc(50% - 56px);top:-2px}
.ap2 .ap2-lp-dock .ap2-retirer{left:-8px;top:-8px;width:24px;height:24px}
.ap2 .ap2-lp .ap2-rien{flex-direction:column;align-items:center;text-align:center}
/* Le menu d'une icône, comme sur Mac */
.ap2 .ap2-menu{width:min(264px,calc(100vw - 16px));min-width:0;max-width:none;padding:6px}
.ap2:has(.ap2-menu) .ap2-menu-b{opacity:0!important}
/* Une page de résultats : les icônes centrées, quel que soit leur nombre */
.ap2 .ap2-lp-grille.ap2-lp-resultats{display:flex;flex-wrap:wrap;justify-content:center;max-width:1076px}
.ap2 .ap2-lp-grille.ap2-lp-resultats>.ap2-tuile{width:128px}
@media (max-width:760px){.ap2 .ap2-lp-grille.ap2-lp-resultats{max-width:340px;gap:20px 12px}.ap2 .ap2-lp-grille.ap2-lp-resultats>.ap2-tuile{width:76px}}
.ap2 .ap2-menu-t{padding:8px 12px 6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sec);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ap2 .ap2-menu-l{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:8px;color:var(--texte)}
.ap2 .ap2-menu-l:hover{background:var(--tuile)}
.ap2 .ap2-menu-l select{flex:1;min-width:0;height:40px;border:0;background:transparent;color:var(--texte);font-size:14px;font-weight:500;cursor:pointer}
.ap2 .ap2-menu-l select option{background:var(--fond-3)}
.ap2 .ap2-menu-f{display:flex;flex-direction:column;gap:10px;padding:8px}
.ap2 .ap2-menu-f label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--sec)}
.ap2 .ap2-menu-f input{height:44px;padding:0 12px;border:1px solid var(--filet-2);border-radius:var(--r-champ);background:var(--fond-2);color:var(--texte);font-size:16px}
.ap2 .ap2-menu-f input:focus{outline:2px solid var(--texte);outline-offset:1px}
.ap2 .ap2-menu-f small{color:var(--sec);font-size:12px}
.ap2 .ap2-menu-f div{display:flex;gap:8px}.ap2 .ap2-menu-f .ap2-btn{min-height:40px;flex:1;padding:0 10px}
.ap2 .ap2-menu-f button[type=submit]{background:var(--texte);color:var(--fond);border-color:var(--texte);font-weight:600}
.ap2 .ap2-note-h{color:var(--sec);font-size:17px;line-height:1.55;max-width:680px}
.ap2.ap2-mode-lp .ap2-annonce{bottom:120px}
@media (max-width:980px){.ap2 .ap2-lp-grille{grid-template-columns:repeat(5,120px);gap:24px 18px}}
@media (max-width:760px){
  .ap2 .ap2-lp-haut{grid-template-columns:auto 1fr auto;padding:14px 14px 0;gap:10px}
  .ap2 .ap2-lp-recherche,.ap2 .ap2-lp-recherche:focus-within{width:auto;min-width:0}
  .ap2 .ap2-lp-recherche input{font-size:16px}
  .ap2 .ap2-lp-coin .ap2-k{display:none}
  .ap2 .ap2-lp-titre{margin-top:12px;font-size:12px}
  .ap2 .ap2-lp-page{padding:8px 10px 0}
  .ap2 .ap2-lp-grille{grid-template-columns:repeat(4,76px);gap:20px 12px}
  .ap2 .ap2-lp .ap2-icone{width:62px;height:62px;border-radius:17px}.ap2 .ap2-lp .ap2-icone .ap2-ic{width:28px;height:28px}
  .ap2 .ap2-lp .ap2-e{display:none}.ap2 .ap2-lp .ap2-n{font-size:12px;max-width:80px}
  .ap2 .ap2-lp .ap2-retirer{left:-6px}
  .ap2 .ap2-lp .ap2-menu-b{left:-4px;top:-6px;width:26px;height:26px}
  .ap2 .ap2-lp-dock .ap2-menu-b{left:-5px;top:-6px;width:18px;height:18px}
  .ap2 .ap2-lp-fl{display:none}
  .ap2 .ap2-lp-dock{margin-bottom:calc(14px + env(safe-area-inset-bottom));gap:6px;padding:8px}
  .ap2 .ap2-lp-dock .ap2-icone{width:48px;height:48px;border-radius:13px}
  .ap2 .ap2-lp-dock-favs .ap2-tuile:nth-child(n+5),.ap2 .ap2-lp-dock-rec .ap2-tuile:nth-child(n+2){display:none}
  .ap2.ap2-mode-lp .ap2-soie{width:900px;margin:-200px 0 0 -450px}
}
@media (prefers-reduced-motion:reduce){.ap2 .ap2-lp-rail{transition:none}.ap2 .ap2-lp-page .ap2-tuile{animation:none!important}}

.ap2 .ap2-ordre-pages{margin-top:14px}.ap2 .ap2-ordre-pages .ap2-ordre-l{min-height:52px;padding:4px 8px}.ap2 .ap2-ordre-pages .ap2-t{flex:1}
/* 19/10 · relecture des captures : les propositions sont des pastilles en ligne (et non des lignes du menu), et un nom d'appli ne
   se coupe jamais au milieu d'un mot ; s'il le faut, il se coupe à la syllabe (français). */
.ap2 .ap2-menu .ap2-choix-b{display:inline-flex;width:auto;min-height:36px;padding:0 12px;border-radius:18px;border:1px solid var(--filet-2);font-size:14px;font-weight:500;white-space:nowrap}
.ap2 .ap2-lp .ap2-n{overflow-wrap:normal;word-break:normal;-webkit-hyphens:auto;hyphens:auto}
@media (max-width:760px){.ap2 .ap2-lp-grille{grid-template-columns:repeat(4,80px);gap:20px 8px}.ap2 .ap2-lp .ap2-n{font-size:11.5px;max-width:80px;line-height:1.25}}

/* 19/10 · contre-vérification : cibles de 44 px au moins (le dessin ne change pas : il est porté par ::before), un seul arrêt de
   tabulation par icône (le ⋯ s'ouvre au clavier par Maj + F10 ou la touche Menu), contour de focus visible sur la recherche. */
.ap2 .ap2-lp .ap2-menu-b{width:44px;height:44px;top:-12px;left:calc(50% - 64px);background:transparent;border:0;display:grid;place-items:center;color:var(--sec)}
.ap2 .ap2-lp .ap2-menu-b::before{content:"";position:absolute;width:26px;height:26px;left:9px;top:9px;border-radius:50%;background:color-mix(in srgb,var(--fond-3) 88%,transparent);border:1px solid var(--filet-2);z-index:-1}
.ap2 .ap2-lp .ap2-menu-b::after{content:none}
.ap2 .ap2-lp .ap2-menu-b:hover::before,.ap2 .ap2-lp .ap2-menu-b:focus-visible::before{background:var(--tuile-2)}
.ap2 .ap2-lp .ap2-menu-b .ap2-ic{position:relative;width:14px;height:14px}
.ap2 .ap2-lp-dock .ap2-menu-b{width:44px;height:44px;top:-18px;left:-18px}
.ap2 .ap2-lp-dock .ap2-menu-b::before{width:20px;height:20px;left:12px;top:12px}
.ap2 .ap2-lp-dock .ap2-menu-b .ap2-ic{width:11px;height:11px}
.ap2 .ap2-lp-dock-favs,.ap2 .ap2-lp-dock-rec{gap:22px}.ap2 .ap2-lp-dock{gap:18px;padding:12px 16px 10px 22px}
.ap2 .ap2-lp-points{gap:0}.ap2 .ap2-lp-points button{width:44px;height:44px}
.ap2 .ap2-lp-recherche:focus-within,.ap2 .ap2-recherche:focus-within,.ap2-l .ap2-l-saisie:focus-within{outline:2px solid var(--texte);outline-offset:2px}
.ap2-l .ap2-l-saisie:focus-within{outline-offset:-4px;border-radius:14px}
@media (max-width:760px){
  .ap2 .ap2-lp .ap2-menu-b{width:44px;height:44px;top:-16px;left:calc(50% - 50px)}
  .ap2 .ap2-lp .ap2-menu-b::before{width:24px;height:24px;left:10px;top:10px}
  .ap2 .ap2-lp-dock .ap2-menu-b{width:44px;height:44px;top:-18px;left:-18px}
  .ap2 .ap2-lp-dock .ap2-menu-b::before{width:18px;height:18px;left:13px;top:13px}
  .ap2 .ap2-lp-dock-favs,.ap2 .ap2-lp-dock-rec{gap:20px}.ap2 .ap2-lp-dock{gap:14px;padding:10px 12px 8px 20px}
}
/* Cibles de 44 px partout (contre-vérification du 19/10, P3-3) : le dessin ne change pas, la zone de clic grandit. */
.ap2 .ap2-k{height:44px}
.ap2 .ap2-lp-regl{width:44px;height:44px}
.ap2 .ap2-avatar{width:44px;height:44px;border:0}
.ap2 .ap2-avatar::before{content:"";position:absolute;inset:4px;border-radius:50%;border:1px solid var(--filet-2);pointer-events:none}
.ap2 .ap2-lp-recherche input{height:44px}
.ap2 .ap2-lp-recherche{height:44px}
