/* Version mobile (ecrans de 760px et moins) : seul fichier a modifier pour regler l'apparence sur telephone.
   Charge apres style.css ; les regles telephone sont dans des @media (max-width:760px), le bloc tablette est dans un @media (761-1100px). */
@media (max-width:760px){
  .sp-t{font-size:26.5px}
  .sp-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n v" "b b";gap:8px 10px}
  .sp-n{grid-area:n}
  .sp-bar{grid-area:b}
  .sp-v{grid-area:v}
}
@media (max-width:760px){
  .k6{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .only-d{display:none!important}
  .only-m{display:block}
  body{font-size:18.4px}
  .top{position:static;backdrop-filter:none;background:transparent;border:0}
  .top-in{padding:14px 16px 0}
  .tabs{display:none}
  .hbtns{width:100%;justify-content:space-between}
  .wrap{padding:14px 14px calc(120px + env(safe-area-inset-bottom,0))}
  .card{padding:16px}
  .hero{padding:20px 18px}
  .hero .v{font-size:39.1px}
  .g-kpi{grid-template-columns:1fr 1fr;gap:10px}
  .kpi .v{font-size:24.2px}
  .g-2{grid-template-columns:1fr}
  .eq{grid-template-columns:1fr;gap:6px}
  .eq .op{text-align:center;font-size:23px}
  .srow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n v" "b b";gap:5px 10px}
  .srow .sname{grid-area:n}
  .srow .sbar{grid-area:b}
  .srow .sval{grid-area:v}
  .btn{min-height:44px}
  .btn.sm{min-height:38px}
  label.f input,label.f select,.search{min-height:46px;font-size:18.4px}
  .mrow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"i p" "i b"}
  .mrow>:nth-child(1){grid-area:i}
  .mrow>:nth-child(2){display:none}
  .mrow>:nth-child(3){grid-area:p}
  .mrow>:nth-child(4){grid-area:b;justify-self:end}
  .ov{align-items:flex-end}
  .sheet{padding:16px 16px calc(16px + env(safe-area-inset-bottom,0));max-height:90vh}
  .sheet::before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 14px}
  .row-end{flex-direction:column-reverse}
  .row-end .btn{width:100%;min-height:48px}
  .fgrid{grid-template-columns:1fr 1fr}
  .fgrid .full{grid-column:1/-1}
  .wrow,.wrow.w2{grid-template-columns:1fr 1fr}
  .wrow>:first-child{grid-column:1/-1}
  .risk{grid-template-columns:1fr}
  .wiz h2{font-size:27.6px}
  /* ecran de connexion : bloc centre verticalement dans l'ecran au lieu d'etre colle en haut */
  .wiz{min-height:100vh;min-height:100dvh;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding-bottom:calc(26px + env(safe-area-inset-bottom,0))}
  .bnav{display:flex;position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0));z-index:30;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:24px;padding:6px;box-shadow:0 10px 30px rgba(10,14,20,.18)}
  .bn{flex:1;appearance:none;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 2px;min-height:54px;font-size:12.1px;color:var(--muted);border-radius:18px;cursor:pointer}
  .bn svg{width:23px;height:23px}
  .fab{display:flex;align-items:center;gap:6px;position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0));z-index:30;height:50px;padding:0 20px 0 16px;border:0;font-weight:700;cursor:pointer}
  .fab svg{width:20px;height:20px}
  .toast{bottom:calc(150px + env(safe-area-inset-bottom,0))}
}
@media (max-width:760px){
  .card{padding:16px}
  .hero{padding:20px 18px}
  .hero .v{font-size:41.4px}
  .tab{padding:8px 12px}
}
@media (max-width:760px){
  .fgrid.row1{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .hbtns{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;width:100%}
  .hbtns .pill{grid-column:span 6;justify-content:center;font-size:13.8px;padding:7px 8px;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .hbtns .btn{min-width:0;padding:8px 6px;font-size:15px;line-height:1.15;white-space:normal;text-align:center}
  .hbtns .btn.pro{grid-column:1/-1}
  .hbtns [data-act="refresh"]{grid-column:span 5}
  .hbtns #themebtn{grid-column:span 3;padding-inline:4px}
  .hbtns [data-act="logout"]{grid-column:span 4}
  .toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px}
  .toolbar .sp{display:none}
  .toolbar .btn{min-width:0;padding:8px 6px;font-size:15px;line-height:1.2;white-space:normal;text-align:center}
  .toolbar .search,.toolbar>select,.toolbar>input,.toolbar>label{grid-column:1/-1}
}
@media (max-width:760px){
  .fgrid.al{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .mods{grid-template-columns:1fr}
  .steps.how{grid-template-columns:1fr}
  .lrow{flex-wrap:wrap}
}
@media (max-width:760px){
  .mixrow{grid-template-columns:14px minmax(0,1fr) auto}
  .mx-a{grid-column:2 / -1;justify-content:flex-start;min-width:0}
}
@media (max-width:760px){
  .dca-tab th,.dca-tab td{padding:9px 4px;font-size:12.5px;white-space:normal}
  .dca-tab td.n{white-space:nowrap}
  .dca-tab th{font-size:11px;letter-spacing:.02em}
  .dca-tab .chip{display:none}
  .dca-tab td:first-child{white-space:nowrap}
}
@media (max-width:760px){
  .v-full{display:none}
  .v-short{display:inline}
}

/* ===== Optimisation mobile : textes, espaces, grilles, chevauchements, feuille « Plus » ===== */
@media (max-width:760px){
  /* textes : taille et interligne plus compacts (la police de base passait a 18,4 px) */
  body{font-size:16.5px;line-height:1.45}
  .hint{font-size:14.5px;line-height:1.4;margin:0 0 10px}
  .card h2{font-size:18px;line-height:1.25;margin-bottom:4px}
  .brand h1{font-size:23px}
  .brand .sub{font-size:13.5px;line-height:1.35}
  .sec-title{font-size:12.5px;margin:22px 2px 10px}
  .wrap{padding:10px 12px calc(112px + env(safe-area-inset-bottom,0))}
  .top-in{padding:12px 12px 0}

  /* espaces : cartes et grilles resserrees */
  .card{padding:14px;border-radius:20px}
  .hero{padding:16px 16px;border-radius:20px}
  .hero .v{font-size:38px;margin:4px 0 12px}
  .grid{gap:10px}

  /* cases d'indicateurs : 3 par ligne (2 s'il n'y en a que 2) */
  .g-kpi:not(.k6){grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}
  .g-kpi:not(.k6) .kpi{padding:10px 10px 9px;border-radius:16px;min-width:0}
  .g-kpi:not(.k6) .kpi .l{font-size:10.5px;line-height:1.25;letter-spacing:.03em;overflow-wrap:anywhere}
  .g-kpi:not(.k6) .kpi .v{font-size:clamp(15px,4.7vw,19px);margin-top:5px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .g-kpi:not(.k6) .kpi .s{font-size:11.5px;line-height:1.3;margin-top:3px;overflow-wrap:anywhere}
  .k6 .card{padding:11px 11px 10px}

  /* tuiles et rangees */
  .tile{padding:10px 12px}
  .tile .n{font-size:19px}
  .lrow{gap:10px}
  .btn{padding:9px 16px;font-size:15.5px}
  .btn.sm{padding:5px 12px;font-size:14.5px}
  label.f{font-size:13.5px}
  label.f input,label.f select,.search{font-size:16.5px;padding:9px 12px;min-height:44px}
  .fgrid{gap:10px}

  /* barres d'outils : le texte occupe toute la largeur, les boutons passent dessous (plus de chevauchement) */
  .toolbar>*{min-width:0!important}
  .toolbar>div{grid-column:1/-1;flex:none!important}
  .toolbar>.btn.pro{grid-column:1/-1}

  /* bouton d'achat : pastille ronde, moins de contenu masque */
  .fab{width:52px;height:52px;padding:0;justify-content:center;font-size:0;gap:0;right:14px;bottom:calc(82px + env(safe-area-inset-bottom,0))}
  .fab svg{width:24px;height:24px}

  /* bouton d'actualisation : au-dessus du « + », plus petit, couleur d'accent secondaire */
  .fab.fab2{width:42px;height:42px;right:19px;bottom:calc(144px + env(safe-area-inset-bottom,0));background:var(--accent2)!important;color:#fff!important}
  .fab.fab2 svg{width:20px;height:20px}
  .fab.fab2:disabled{opacity:1}
  .fab.fab2.spin svg{animation:r .8s linear infinite}
  .toast{white-space:nowrap}

  /* barre du bas plus basse */
  .bnav{left:10px;right:10px;border-radius:22px;padding:4px}
  .bn{min-height:50px;font-size:11.5px;padding:5px 2px}
  .bn svg{width:22px;height:22px}
  .toast{bottom:calc(140px + env(safe-area-inset-bottom,0))}

  /* feuille « Plus » */
  .sheet{padding:14px 14px calc(14px + env(safe-area-inset-bottom,0))}
  .sheet h2{font-size:20px;margin-bottom:10px}
  .moregrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .mtile{appearance:none;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface2);color:var(--ink);cursor:pointer;min-width:0}
  .mtile:active,.mrow2:active{background:var(--accent-soft)}
  .mtile .mi{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent);margin-bottom:8px}
  .mtile .mi svg,.mrow2 .mi svg{width:22px;height:22px}
  .mtile b{font-size:16px;line-height:1.2}
  .mtile small{font-size:12.5px;line-height:1.3;color:var(--muted)}
  .mpro{font-style:normal;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:99px;background:var(--accent2);color:#1E2D4A;vertical-align:2px}
  .moreacts{display:flex;flex-direction:column;margin-top:12px;border:1px solid var(--line);border-radius:18px;overflow:hidden}
  .mrow2{appearance:none;display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:16px;font-weight:600;text-align:left;cursor:pointer}
  .mrow2:last-child{border-bottom:0}
  .mrow2 .mi{display:grid;place-items:center;width:28px;color:var(--muted)}
  .mrow2 em{margin-left:auto;font-style:normal;font-weight:500;color:var(--muted);font-size:14.5px}
  .mrow2.pro{background:color-mix(in srgb,var(--accent2) 14%,var(--surface))}
  .mrow2.pro .mi{color:var(--accent2)}
  .mrow2.out,.mrow2.out .mi{color:var(--loss)}
}
@media (max-width:760px){
  /* en-tete : pastilles et boutons sur des lignes compactes */
  .hbtns{display:flex;flex-wrap:wrap;gap:6px}
  .hbtns .pill,.hbtns .btn{flex:1 1 auto;grid-column:auto;font-size:13.5px;padding:7px 10px;min-height:38px;white-space:nowrap;justify-content:center}
  .hbtns .btn.pro{flex-basis:100%}
  .hbtns #themebtn{flex:0 0 auto}
  /* sous-textes des cases : 4 lignes maximum */
  .g-kpi:not(.k6) .kpi .s{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  /* filtres : deux listes par ligne */
  .toolbar:has(select){grid-template-columns:1fr 1fr}
  .toolbar>select{grid-column:auto}
  .toolbar:has(select:nth-of-type(3))>select:nth-of-type(1){grid-column:1/-1}
}
@media (max-width:760px){
  .hbtns .pill,.hbtns .btn{font-size:13px;padding:7px 8px}
  .hbtns #themebtn{padding:7px 10px}
  .toolbar>select.search,.toolbar>input.search{grid-column:auto}
  .toolbar>input.search,.toolbar:has(select:nth-of-type(3))>select.search:nth-of-type(1){grid-column:1/-1}
}
@media (max-width:760px){
  .hbtns .pill{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .hbtns [data-act="refresh"]{flex:1.4 1 0;min-width:0}
}
@media (max-width:760px){
  .g-kpi:not(.k6) .kpi .v{font-size:clamp(13.5px,4.3vw,17px);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;letter-spacing:-.02em}
  .g-kpi:not(.k6) .kpi{padding:9px 9px 8px}
  .note{font-size:14.5px;line-height:1.4;padding:10px 12px}
  .fgrid>label.f:only-child{grid-column:1/-1}
}
@media (max-width:760px){
  .step{padding:12px 14px}
  .step p,.plc p,.plc li,.plc ul{font-size:14.5px;line-height:1.4}
  .step .ph{font-size:12px}
  .steps,.plc{gap:10px}
}
@media (max-width:760px){
  .toolbar:has(select):not(:has(select:nth-of-type(2)))>select.search{grid-column:1/-1}
}
@media (max-width:760px){
  /* equation « investi + performance = valeur » : 3 cases sur une ligne */
  .eq{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.1fr);gap:4px;align-items:stretch}
  .eq .op{align-self:center;font-size:18px;line-height:1}
  .eq .b{padding:9px 9px 8px;border-radius:14px}
  .eq .b .l{font-size:10.5px;line-height:1.25;letter-spacing:.03em}
  .eq .b .v{font-size:clamp(13.5px,4.2vw,17px);margin-top:4px;line-height:1.15;overflow-wrap:anywhere;letter-spacing:-.02em}
  .eq .b .hint,.eq .b .s,.eq .b small{font-size:11.5px;line-height:1.3}
}
@media (max-width:760px){
  .eq .v.gain::before,.eq .v.loss::before{content:none}
}
@media (max-width:760px){
  /* en-tete : 2 pastilles puis 3 boutons, chacun dans sa propre case (plus de texte coupe) */
  .hbtns{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px}
  .hbtns .pill,.hbtns .btn{flex:none;min-width:0;overflow:visible;text-overflow:clip;white-space:normal;text-align:center;justify-content:center;line-height:1.15;font-size:13.5px;padding:7px 6px;min-height:40px}
  .hbtns .pill{grid-column:span 6}
  .hbtns [data-act="refresh"]{grid-column:span 5}
  .hbtns #themebtn{grid-column:span 3;padding:7px 4px}
  .hbtns [data-act="logout"]{grid-column:span 4}
  .hbtns .btn.pro{grid-column:1/-1}
}
@media (max-width:760px){
  /* barre du bas : Accueil au centre, plus grand et colore (page centrale du site) */
  .bnav{align-items:flex-end;overflow:visible}
  .bn[data-nav="home"]{flex:0 0 76px;min-height:64px;margin-top:-18px;margin-inline:4px;gap:2px;justify-content:center;border-radius:22px;border:3px solid var(--bg);background:var(--brand);color:#fff;font-size:12px;font-weight:700;box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 40%,transparent)}
  .bn[data-nav="home"] svg{width:28px;height:28px}
  .bn[data-nav="home"][aria-selected="true"]{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 40%,transparent),0 8px 18px color-mix(in srgb,var(--brand) 40%,transparent)}
}
@media (max-width:760px){
  .bn:not([data-nav="home"]){flex:1 1 0;min-width:0}
  .bn[aria-selected="true"]:not([data-nav="home"]){background:var(--accent-soft);color:var(--accent)}
}
@media (max-width:760px){
  /* Accueil : teal plus terne (melange du vert de marque avec un gris-bleu) */
  .bn[data-nav="home"]{background:color-mix(in srgb,var(--brand) 60%,#46525c);box-shadow:0 6px 14px rgba(0,0,0,.22)}
  .bn[data-nav="home"][aria-selected="true"]{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 30%,transparent),0 6px 14px rgba(0,0,0,.22)}
}
@media (max-width:760px){
  /* en-tete : titre + symboles d'etat sur une ligne, nom d'utilisateur mis en valeur */
  .mtitle{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .brand .logo{flex:1 1 auto;min-width:0}
  .brand .logo>div:last-child{flex:1 1 auto;min-width:0}
  .mstat{display:inline-flex;gap:6px;flex:none}
  .msym{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--surface);border:1.5px solid var(--c,var(--line));color:var(--c,var(--muted))}
  .msym svg{width:16px;height:16px}
  .hbtns .pill{display:none}
  .hbtns{grid-template-columns:minmax(0,1fr) auto auto}
  .hbtns [data-act="refresh"]{grid-column:auto}
  .hbtns #themebtn,.hbtns [data-act="logout"]{grid-column:auto;padding:7px 12px}
  .hbtns .btn.pro{grid-column:1/-1}
  .brand .sub .sep{display:none}
  .brand .sub .uname{display:block;font-size:20px;line-height:1.2;font-weight:800;letter-spacing:-.01em;color:var(--accent);margin:2px 0 1px}
  .brand .sub .sinfo{display:block;font-size:13px;line-height:1.35}
}
@media (max-width:760px){
  /* nom d'utilisateur : degrade de teal */
  .brand .sub .uname{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent2) 85%,var(--accent)));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}

  /* Portefeuille : boutons d'action en 3 colonnes egales */
  .toolbar:not(:has(select,input,div)){grid-template-columns:repeat(3,minmax(0,1fr))}
  .toolbar:not(:has(select,input,div)) .btn{padding:7px 4px;font-size:13px;line-height:1.15;min-height:46px;display:flex;align-items:center;justify-content:center}

  /* Portefeuille : cartes de positions plus compactes, liseré de couleur selon le gain */
  .pcard{padding:12px 12px 12px 14px;border-radius:20px;margin-bottom:8px;border-left:4px solid var(--line)}
  .pcard:has(.pc-pnl .gain){border-left-color:var(--gain)}
  .pcard:has(.pc-pnl .loss){border-left-color:var(--loss)}
  .pc-h .nm{font-size:17px;line-height:1.2}
  .pc-h .nm small{font-size:13px;line-height:1.3}
  .pc-main{margin-top:8px}
  .pc-val{font-size:25px}
  .pc-pnl{font-size:14.5px;line-height:1.3}
  .pc-grid{margin-top:10px;padding-top:8px;gap:8px 6px;font-size:15px}
  .pc-grid span{font-size:11px}
  .pc-act{margin-top:10px}
  .pc-act .btn{min-height:40px;padding:6px 10px;font-size:14.5px}
}
@media (max-width:760px){
  /* Evolution du mois : selecteur de mois et bouton d'actualisation sur la meme ligne */
  .hm-top{flex-wrap:nowrap;gap:8px}
  .hm-nav{flex:1 1 auto;min-width:0}
  .hm-nav select{flex:1 1 auto;min-width:0;width:100%}
  .hm-top [data-act="hist-refresh"]{flex:none;width:38px;height:38px;min-height:0;padding:0;border-radius:50%;display:grid;place-items:center}
  .hm-top [data-act="hist-refresh"] .lbl{display:none}
  .hm-top [data-act="hist-refresh"] .ri{display:block;width:18px;height:18px}
  /* jours de gain / perte / neutres sur une ligne, bilan dessous */
  .hm-chips{gap:6px}
  .hm-chips .chip{font-size:12.5px;padding:4px 9px;white-space:nowrap}
  .hm-chips>span:not(.chip){flex:1 0 100%}
  /* legende : petit bouton qui deploie les trois reperes */
  .hm-leg{margin-top:8px}
  .hm-leg summary{display:inline-flex;align-items:center;gap:6px;list-style:none;cursor:pointer;font-size:13px;font-weight:600;color:var(--muted);padding:5px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
  .hm-leg summary::-webkit-details-marker{display:none}
  .hm-leg summary::after{content:"▾";font-size:11px}
  .hm-leg[open] summary::after{content:"▴"}
  .hm-leg .hm-legend{flex-direction:column;gap:8px;margin-top:8px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);font-size:13px}
}
@media (max-width:760px){
  /* en-tete compact : logo, titre, symboles d'etat et boutons (icones) sur la meme ligne */
  .brand{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto auto auto;column-gap:6px;row-gap:3px;align-items:center}
  .brand .logo,.brand .logo>div:last-child,.mtitle,.hbtns{display:contents}
  .brand .mark{grid-column:1;grid-row:1/3;align-self:start;width:40px;height:40px;border-radius:12px}
  .brand h1{grid-column:2;grid-row:1;font-size:18px;line-height:1.12;white-space:normal}
  .mstat{grid-column:3;grid-row:1;gap:4px}
  .msym{width:26px;height:26px}
  .msym svg{width:14px;height:14px}
  .brand .sub{grid-column:2/-1;grid-row:2}
  .hbtns [data-act="refresh"]{grid-column:4;grid-row:1}
  .hbtns #themebtn{grid-column:5;grid-row:1}
  .hbtns [data-act="logout"]{grid-column:6;grid-row:1}
  .hbtns .btn.sm:not(.pro){width:34px;height:34px;min-height:0;min-width:0;padding:0;border-radius:50%;display:grid;place-items:center}
  .hbtns .btn.sm:not(.pro) .lbl{display:none}
  .hbtns .btn.sm:not(.pro) .bi{display:block;width:17px;height:17px}
  .hbtns #themebtn svg{margin:0!important;width:17px!important;height:17px!important;vertical-align:0!important}
  .hbtns .btn.spin::after{display:none}
  .hbtns .btn.spin .bi{animation:r .7s linear infinite}
  .hbtns .btn.pro{grid-column:1/-1;grid-row:3;margin-top:6px}
}
@media (max-width:400px){
  /* tres petit ecran : le titre passe sur deux lignes, on libere la place du logo */
  .brand{grid-template-columns:minmax(0,1fr) auto auto auto auto}
  .brand .mark{display:none}
  .brand h1{grid-column:1}
  .mstat{grid-column:2}
  .hbtns [data-act="refresh"]{grid-column:3}
  .hbtns #themebtn{grid-column:4}
  .hbtns [data-act="logout"]{grid-column:5}
  .brand .sub{grid-column:1/-1}
}
@media (max-width:340px){
  .brand{grid-template-columns:minmax(0,1fr) auto auto auto auto}
  .brand .mark{display:none}
  .brand h1{grid-column:1}
  .mstat{grid-column:2}
  .hbtns [data-act="refresh"]{grid-column:3}
  .hbtns #themebtn{grid-column:4}
  .hbtns [data-act="logout"]{grid-column:5}
  .brand .sub{grid-column:1/-1}
}
@media (max-width:760px){
  /* detail jour par jour : tableau compact, textes courts */
  .hm .tw th,.hm .tw td{padding:8px 5px;font-size:13px;white-space:nowrap}
  .hm .tw th{font-size:10.5px;letter-spacing:.02em;white-space:normal;line-height:1.2}
  .hm details.acc .hb{padding-left:12px;padding-right:12px}
  .hm details.acc .hint{font-size:13.5px;line-height:1.4}
}
@media (max-width:760px){
  .hm .tw th,.hm .tw td{padding:8px 3px;font-size:12px}
  .hm .tw th{font-size:10px}
  .hm .tw td:first-child,.hm .tw th:first-child{padding-left:2px}
}
@media (max-width:760px){
  .hm details.acc details.acc .hb{padding-left:4px;padding-right:4px}
}
@media (max-width:760px){
  /* Methode DCA : textes courts, champs cote a cote, resultat en deux cases */
  .sec-title .v-short{letter-spacing:.06em}
  .fgrid:has([data-set="profile.dcaAmt"]){grid-template-columns:1.2fr 1fr;align-items:start}
  .fgrid:has([data-set="profile.dcaAmt"]) label.f{font-size:12.5px;line-height:1.25}
  .fgrid:has([data-set="profile.dcaAmt"]) label.f small{font-size:11.5px;line-height:1.3}
  .v-short.dca-sum{display:block}
  .dca-sum .dca-l{display:block;font-size:14.5px;line-height:1.35;margin-bottom:8px}
  .dca-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .dca-two>span{display:block;padding:8px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
  .dca-two small{display:block;font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-weight:600}
  .dca-two b{display:block;font-size:16px;margin-top:2px;font-variant-numeric:tabular-nums}
}
@media (max-width:760px){
  /* Part de mes liquidites : champ et bouton « suggestion » sur la meme ligne, aide sur toute la largeur */
  .fgrid:has([data-set="profile.pct"]){grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:6px;align-items:center}
  .fgrid:has([data-set="profile.pct"])>label.f{display:contents}
  .fgrid:has([data-set="profile.pct"]) label.f .fl{grid-column:1/-1;grid-row:1}
  .fgrid:has([data-set="profile.pct"]) label.f input{grid-column:1;grid-row:2;margin-top:0}
  .fgrid:has([data-set="profile.pct"]) label.f small{grid-column:1/-1;grid-row:3;margin-top:0}
  .fgrid:has([data-set="profile.pct"])>div{grid-column:2;grid-row:2}
  .fgrid:has([data-set="profile.pct"])>div .btn{padding:6px 12px;font-size:13.5px;min-height:46px;white-space:nowrap}
}
@media (max-width:760px){
  /* Accueil : coloré seulement quand il est actif, sinon même teinte que les autres onglets */
  .bn[data-nav="home"]:not([aria-selected="true"]){background:none;color:var(--muted);box-shadow:none}
  .bn[data-nav="home"][aria-selected="true"]{color:#fff}
  /* bouton flottant + (achat) supprimé ; le bouton d'actualisation reste */
  .fab:not(.fab2){display:none}
}
@media (max-width:760px){
  /* Accueil : toujours visible, teinté même inactif ; plein quand actif */
  .bn[data-nav="home"]:not([aria-selected="true"]){background:color-mix(in srgb,var(--brand) 22%,transparent);color:var(--brand);box-shadow:0 6px 14px rgba(0,0,0,.18)}
  .bn[data-nav="home"][aria-selected="true"]{background:var(--brand);color:#fff}
  /* bouton d'actualisation : juste au-dessus de la barre du bas */
  .fab.fab2{bottom:calc(86px + env(safe-area-inset-bottom,0))}
}
@media (max-width:760px){
  /* Portefeuille : Achat, Vendre, Versement/retrait et Exporter sur une seule ligne */
  .toolbar:not(:has(select,input,div)){grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .toolbar:not(:has(select,input,div)) .btn.only-d{display:flex!important}
  .toolbar:not(:has(select,input,div)) .btn{font-size:12.2px;padding:6px 3px;min-height:48px;overflow-wrap:anywhere}
}
/* Tablette (iPad en portrait) : le titre et les boutons passent sur deux lignes au lieu de s'ecraser */
@media (min-width:761px) and (max-width:1100px){
  .brand{flex-wrap:wrap;row-gap:10px}
  .brand .logo{flex:1 1 100%}
  .brand .hbtns{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-start}
  .brand h1{white-space:nowrap}
}
