:root{--blue:#064785;--blue-dark:#043765;--teal:#064785;--light:#e6e6e6;--text:#003f7c}*{box-sizing:border-box}body{margin:0;background:#f4f4f4;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text)}.phone{max-width:520px;min-height:100vh;margin:0 auto;background:white;position:relative;overflow:hidden}.screen{display:none;min-height:100vh;padding:10px 10px 96px}.screen.active{display:block}.home-screen{padding:64px 18px 120px;text-align:center}.brand{margin:auto}.brand-logo{display:block;width:78%;max-width:310px;margin:0 auto 4px;object-fit:contain}.proson-home-logo{width:62%;max-width:250px;margin-bottom:12px}.cra-home-logo{width:36%;max-width:150px;border-radius:16px;margin-bottom:24px}.tagline{font-size:20px;font-weight:600;color:#555}.home-screen h1{font-size:25px;color:var(--blue);margin:28px 0 18px}.product-card{height:140px;position:relative;margin:auto;width:250px}.box,.radiator,.belt{position:absolute;background:linear-gradient(135deg,#111,#777);box-shadow:0 15px 25px #ddd}.box{left:35px;top:46px;width:105px;height:50px;transform:skewY(8deg)}.radiator{right:48px;top:20px;width:78px;height:95px}.belt{left:98px;top:100px;width:90px;height:28px;border-radius:20px}address{font-style:normal;font-size:22px;line-height:1.25}.continue{position:absolute;bottom:55px;left:50%;transform:translateX(-50%);min-width:170px}.topbar{height:58px;background:#e5e5e5;display:flex;align-items:center;gap:12px;padding:8px 18px;margin:-10px -10px 24px}.play{width:54px;height:54px;border:0;border-radius:0;background:transparent url("assets/play-proson.png") center/contain no-repeat;color:transparent;font-size:0;line-height:1;padding:0}.info{margin-left:auto;border:3px solid navy;color:navy;border-radius:50%;width:38px;height:38px;background:white;font:bold 26px Georgia}.top-title{font-size:18px;line-height:1.1;color:var(--text);flex:1}.centered{text-align:center}.centered h2{font-size:25px;font-weight:400;line-height:1.25;margin:20px 28px}.preset{display:block;margin:14px auto;padding:22px 10px;width:78%;background:var(--blue);color:#fff;border:0;font-size:25px}.manual{display:flex;justify-content:center;align-items:center;gap:35px;font-size:26px}.manual input{width:150px;font-size:26px;text-align:center;color:#777;border:2px solid #999;padding:6px}.next{position:absolute;right:22px;bottom:25px}.primary{background:var(--blue);color:white;border:0;padding:14px 24px;font-size:24px}.maxline{text-align:center;font-size:20px;line-height:1.2;margin:12px 4px 30px}.outputs{margin-bottom:100px}.output-head{display:flex;align-items:center;background:var(--blue);color:white;font-size:25px;padding:17px 18px;margin-top:0}.output-head button{margin-left:auto;border:0;border-radius:50%;background:white;color:var(--blue);font-size:32px;width:36px;height:36px;line-height:34px;font-weight:bold}.row{display:grid;grid-template-columns:1fr 130px 42px;align-items:center;gap:12px;padding:9px 0 9px 12px;border-bottom:1px solid #ddd;font-size:25px}.row input{width:100%;border:1px solid #ddd;border-radius:8px;padding:7px 10px;text-align:right;font-size:25px;font-weight:bold;color:var(--blue)}.del{border:0;background:#ed1717;color:white;border-radius:50%;width:32px;height:32px;font-size:22px;font-weight:bold}.bottom-nav{position:absolute;bottom:18px;left:10px;right:10px;display:flex;justify-content:space-between;pointer-events:none}.bottom-nav button{pointer-events:auto}.switch-row{grid-template-columns:1fr 75px 58px}.switches{display:grid;gap:4px}.sw{display:flex;align-items:center;gap:6px}.dial{width:32px;height:32px;border-radius:50%;background:radial-gradient(circle,#ffff85 0 45%,#222 47% 55%,#ffff85 57%);border:2px solid #333}.num{display:inline-block;background:var(--blue);color:#fff;font-weight:bold;text-align:center;font-size:28px;width:43px;padding:4px}.meters{font-size:22px;color:#000}.tabs{display:flex;justify-content:space-between;padding:20px}.tabs button{background:var(--blue);color:#fff;border:0;font-size:28px;padding:16px 50px}dialog{border:0;max-width:520px;width:100%;height:100%;padding:10px;background:white;color:#000}dialog::backdrop{background:rgba(0,0,0,.25)}.helptext{font-size:22px;line-height:1.25}.close{float:right;margin:10px}hr{border:0;border-top:2px solid #bbb;margin:38px 0}.hidden{display:none}
@media(min-width:700px){body{padding:20px}.phone,dialog{box-shadow:0 0 20px #ccc;border-radius:18px;min-height:860px}.screen{min-height:860px}}

@media(max-height:760px){.home-screen{padding-top:28px}.proson-home-logo{width:52%;max-width:210px}.cra-home-logo{width:30%;max-width:125px;margin-bottom:14px}.product-card{height:100px;transform:scale(.8)}address{font-size:18px}.home-screen h1{font-size:22px;margin:16px 0 10px}.continue{bottom:24px}}
.cum-note{font-size:16px;line-height:1.2;margin:8px 10px 8px;color:#444;font-weight:600}.row.invalid input{border:2px solid #d30000;background:#fff2f2;color:#b00000}.error-message{margin:0 10px 10px 12px;padding:9px 10px;border-left:5px solid #d30000;background:#fff2f2;color:#b00000;font-size:17px;line-height:1.25}.primary.disabled,.primary:disabled{opacity:.45;cursor:not-allowed}

/* v12 - harmonie couleurs PROSON */
.primary,.preset,.tabs button{background:var(--blue)!important;color:#fff!important;border:0}
.primary:hover,.preset:hover,.tabs button:hover{background:var(--blue-dark)!important}
.primary:focus-visible,.preset:focus-visible,.tabs button:focus-visible{outline:3px solid rgba(6,71,133,.28);outline-offset:2px}
.global-note{font-size:16px;line-height:1.2;margin:-20px 10px 18px;color:#444;font-weight:600;text-align:center}

/* v13 - boutons de commande arrondis */
.primary,
.preset,
.tabs button,
.continue,
.next,
.close,
.bottom-nav button {
  border-radius: 14px !important;
}
.output-head button,
.del,
.play,
.info {
  border-radius: 50% !important;
}
button {
  -webkit-tap-highlight-color: transparent;
}

/* v14 - choix de langue par drapeaux */
.language-select{display:flex;justify-content:center;gap:18px;margin:10px 0 20px}
.flag-btn,.flag-small{border:2px solid transparent;background:#fff;border-radius:14px;cursor:pointer;line-height:1;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.flag-btn{font-size:38px;padding:9px 14px}
.flag-small{font-size:23px;padding:5px 7px}
.flag-btn.active,.flag-small.active{border-color:var(--blue);box-shadow:0 0 0 3px rgba(6,71,133,.16)}
.lang-mini{display:flex;gap:6px;margin-left:auto;align-items:center}
.lang-mini + .info{margin-left:0}
@media(max-width:420px){.flag-btn{font-size:34px}.flag-small{font-size:20px;padding:4px 6px}.topbar{gap:8px;padding-left:12px;padding-right:12px}.top-title{font-size:15px}}

/* v15 - 5 langues */
.language-select{flex-wrap:wrap;max-width:360px;margin-left:auto;margin-right:auto}
.lang-mini{gap:2px}
.flag-small{font-size:19px;padding:4px 5px;border-radius:10px}
@media(max-width:420px){.flag-small{font-size:17px;padding:3px 4px}.topbar{gap:5px}.play{width:46px;height:46px}.info{width:34px;height:34px;font-size:22px}}

/* v16 - drapeaux sur une seule ligne */
.language-select{
  flex-wrap:nowrap !important;
  max-width:none !important;
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom:4px;
}
.language-select::-webkit-scrollbar{display:none}
.lang-mini{
  flex-wrap:nowrap !important;
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  max-width:190px;
  scrollbar-width:none;
}
.lang-mini::-webkit-scrollbar{display:none}
@media(max-width:420px){
  .language-select{gap:8px !important; justify-content:center;}
  .flag-btn{font-size:30px !important; padding:7px 8px !important; border-radius:12px !important;}
  .lang-mini{max-width:165px; gap:1px !important;}
  .flag-small{font-size:15px !important; padding:3px 3px !important; border-radius:8px !important;}
}

/* v17 - selecteur de langue en bouton deroulant */
.language-dropdown{
  position:relative;
  display:inline-flex;
  justify-content:center;
  margin:10px auto 20px;
  z-index:20;
}
.lang-toggle{
  background:var(--blue);
  color:#fff;
  border:0;
  border-radius:14px;
  padding:12px 18px;
  font-size:22px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(0,0,0,.12);
}
.lang-menu{
  display:none;
  position:absolute;
  top:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%);
  min-width:190px;
  background:#fff;
  border:2px solid var(--blue);
  border-radius:14px;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
  overflow:hidden;
  z-index:50;
}
.language-dropdown.open .lang-menu{display:block}
.lang-menu button{
  display:block;
  width:100%;
  padding:12px 16px;
  background:#fff;
  color:var(--text);
  border:0;
  text-align:left;
  font-size:20px;
  font-weight:700;
  cursor:pointer;
}
.lang-menu button:hover,
.lang-menu button.active{
  background:rgba(6,71,133,.1);
}
.lang-mini{
  margin:0 0 0 auto !important;
  max-width:none !important;
  overflow:visible !important;
  white-space:normal !important;
  flex:none !important;
}
.lang-mini .lang-toggle{
  padding:7px 10px;
  font-size:15px;
  border-radius:10px;
  white-space:nowrap;
}
.lang-mini .lang-menu{
  left:auto;
  right:0;
  transform:none;
  min-width:160px;
}
.lang-mini .lang-menu button{
  font-size:16px;
  padding:10px 12px;
}
.lang-mini + .info{margin-left:0}
.flag-btn,.flag-small,.language-select{display:none!important}
@media(max-width:420px){
  .lang-toggle{font-size:19px;padding:10px 14px}
  .lang-menu{min-width:175px}
  .lang-menu button{font-size:18px;padding:11px 14px}
  .lang-mini .lang-toggle{font-size:0;width:44px;height:36px;padding:0;overflow:hidden}
  .lang-mini .lang-toggle::first-letter{font-size:22px}
  .lang-mini .lang-menu{right:-8px}
}


/* v18 - page d'accueil compacte et centree */
.phone{overflow-x:hidden}
.home-screen{
  min-height:100svh;
  padding:clamp(18px,4.2svh,34px) 18px clamp(18px,4.2svh,34px) !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  text-align:center;
  gap:clamp(6px,1.2svh,12px);
}
.home-screen .brand{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0 auto !important;
  gap:clamp(8px,1.4svh,12px);
}
.proson-home-logo{
  width:min(62%,250px) !important;
  max-height:clamp(58px,10svh,95px);
  object-fit:contain;
  margin:0 auto !important;
}
.cra-home-logo{
  width:min(36%,150px) !important;
  max-height:clamp(58px,10svh,105px);
  object-fit:contain;
  margin:0 auto !important;
  border-radius:14px;
}
.cra-premium{
  color:#63b246;
  font-weight:800;
  font-size:clamp(10px,2.7vw,14px);
  letter-spacing:.11em;
  width:min(36%,150px);
  max-width:150px;
  text-align:justify;
  text-align-last:justify;
  margin:calc(-1 * clamp(3px,.6svh,6px)) auto 0;
  line-height:1;
}
.home-screen h1{
  width:100%;
  max-width:94vw;
  margin:0 auto !important;
  text-align:center;
  font-size:clamp(17px,4.25vw,25px) !important;
  line-height:1.05;
  white-space:nowrap;
  overflow:visible;
  letter-spacing:.01em;
}
.home-screen .language-dropdown{
  margin:0 auto !important;
}
.home-screen .lang-toggle{
  padding:7px 12px !important;
  font-size:clamp(15px,4vw,18px) !important;
  border-radius:11px !important;
  box-shadow:0 2px 6px rgba(0,0,0,.10);
}
.home-screen .lang-menu button{
  font-size:clamp(16px,4vw,18px) !important;
  padding:9px 12px !important;
}
.home-screen address{
  width:100%;
  max-width:90vw;
  margin:0 auto !important;
  text-align:center;
  font-size:clamp(16px,4.4vw,22px) !important;
  line-height:1.22 !important;
}
.home-screen .continue{
  position:static !important;
  transform:none !important;
  left:auto !important;
  bottom:auto !important;
  margin:0 auto !important;
  min-width:160px;
  align-self:center;
}
@supports not (height: 100svh){
  .home-screen{min-height:100vh;}
}
@media(max-width:390px){
  .home-screen h1{font-size:16px !important;letter-spacing:0}
  .proson-home-logo{width:58% !important}
  .cra-home-logo,.cra-premium{width:34% !important}
  .home-screen address{font-size:15px !important}
  .home-screen .continue{font-size:20px;padding:12px 22px}
}
@media(max-height:760px){
  .home-screen{padding-top:clamp(12px,3svh,24px) !important;padding-bottom:clamp(12px,3svh,24px) !important;gap:5px !important}
  .home-screen .brand{gap:6px !important}
  .proson-home-logo{max-height:68px}
  .cra-home-logo{max-height:68px}
  .cra-premium{font-size:10px}
  .home-screen address{font-size:15px !important;line-height:1.15 !important}
  .home-screen h1{font-size:16px !important}
  .home-screen .lang-toggle{padding:6px 10px !important;font-size:15px !important}
  .home-screen .continue{padding:10px 20px;font-size:19px}
}

/* v19 - ajustements accueil : logo PROSON taille v17 et PREMIUM MEMBER justifie */
.home-screen .proson-home-logo{
  width:62% !important;
  max-width:250px !important;
  max-height:none !important;
}
.home-screen .cra-premium{
  width:min(36%,150px) !important;
  max-width:150px !important;
  color:#63b246 !important;
  font-weight:800 !important;
  font-size:clamp(8px,2.1vw,11px) !important;
  letter-spacing:.20em !important;
  text-align:justify !important;
  text-align-last:justify !important;
  line-height:1 !important;
  margin-top:calc(-1 * clamp(2px,.5svh,5px)) !important;
}
@media(max-width:390px){
  .home-screen .proson-home-logo{width:62% !important;max-width:250px !important;}
  .home-screen .cra-premium{width:34% !important;font-size:8px !important;letter-spacing:.18em !important;}
}
@media(max-height:760px){
  .home-screen .proson-home-logo{width:62% !important;max-width:250px !important;max-height:none !important;}
  .home-screen .cra-premium{font-size:8px !important;letter-spacing:.18em !important;}
}

/* v20 - logo Conference Rental Alliance agrandi de 30% */
.home-screen .cra-home-logo{
  width:min(46.8%,195px) !important;
  max-width:195px !important;
}
.home-screen .cra-premium{
  width:min(46.8%,195px) !important;
  max-width:195px !important;
}
@media(max-width:390px){
  .home-screen .cra-home-logo,
  .home-screen .cra-premium{width:44.2% !important;max-width:195px !important;}
}
@media(max-height:760px){
  .home-screen .cra-home-logo{max-height:88px !important;}
}


/* v21 - PREMIUM MEMBER sur deux lignes, memes largeurs et centre sur l'axe du logo CRA */
.home-screen .cra-premium{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:center !important;
  width:min(46.8%,195px) !important;
  max-width:195px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  margin-top:calc(-1 * clamp(2px,.5svh,5px)) !important;
  color:#63b246 !important;
  font-weight:800 !important;
  font-size:clamp(8px,2.0vw,10px) !important;
  line-height:1.02 !important;
  text-align:center !important;
}
.home-screen .cra-premium .premium-word{
  display:block !important;
  width:100% !important;
  text-align:justify !important;
  text-align-last:justify !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}
.home-screen .cra-premium .premium-word::after{
  content:"";
  display:inline-block;
  width:100%;
}
@media(max-width:390px){
  .home-screen .cra-premium{width:44.2% !important;max-width:195px !important;font-size:7.5px !important;}
}
@media(max-height:760px){
  .home-screen .cra-premium{font-size:7.5px !important;line-height:1 !important;}
}

/* v22 - Correction centrage PREMIUM / MEMBER sous le logo CRA */
.home-screen .cra-premium{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:min(46.8%,195px) !important;
  max-width:195px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.home-screen .cra-premium .premium-word{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  text-align:center !important;
  text-align-last:center !important;
  white-space:nowrap !important;
  overflow:visible !important;
}
.home-screen .cra-premium .premium-word::after{
  content:none !important;
  display:none !important;
}
.home-screen .cra-premium .premium-word:first-child{
  letter-spacing:.45em !important;
  text-indent:.45em !important;
}
.home-screen .cra-premium .premium-word:last-child{
  letter-spacing:.58em !important;
  text-indent:.58em !important;
}
@media(max-width:390px){
  .home-screen .cra-premium .premium-word:first-child{letter-spacing:.36em !important;text-indent:.36em !important;}
  .home-screen .cra-premium .premium-word:last-child{letter-spacing:.47em !important;text-indent:.47em !important;}
}

/* v24 - mode ecran unique : une seule page visible, sans scroll global */
html,
body{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  margin:0 !important;
  overflow:hidden !important;
  overscroll-behavior:none !important;
}
body{
  position:fixed !important;
  inset:0 !important;
  -webkit-overflow-scrolling:auto !important;
}
.phone{
  height:100dvh !important;
  min-height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}
.screen{
  display:none !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100dvh !important;
  min-height:0 !important;
  max-height:100dvh !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior:contain !important;
}
.screen.active{
  display:block !important;
}
.home-screen.active{
  overflow:hidden !important;
}
.bottom-nav,
.continue,
.next{
  position:absolute !important;
}
@media(min-width:700px){
  body{position:static !important;overflow:hidden !important;}
  .phone,dialog{
    height:calc(100dvh - 40px) !important;
    min-height:0 !important;
    max-height:860px !important;
  }
  .screen{height:100% !important;max-height:100% !important;}
}


/* v25 - accueil plus aeré entre CRA et Continuer */
.home-screen.active{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(12px,2.1svh,22px) !important;
  padding-top:clamp(16px,3svh,30px) !important;
  padding-bottom:clamp(16px,3svh,30px) !important;
}
.home-screen.active .brand{
  gap:clamp(7px,1.15svh,12px) !important;
  flex:0 0 auto !important;
}
.home-screen.active .cra-premium{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.home-screen.active h1{
  margin:0 auto !important;
}
.home-screen.active .language-dropdown{
  margin:0 auto !important;
}
.home-screen.active .home-contact{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(12px,2svh,20px) !important;
  margin:0 auto !important;
  line-height:1.22 !important;
}
.home-screen.active .home-contact .contact-block{
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}
.home-screen.active .home-contact .web-block{
  line-height:1.18 !important; /* pas d'espace entre www.proson.eu et l'email */
}
.home-screen.active .continue{
  margin:0 auto !important;
}
@media(max-height:760px){
  .home-screen.active{
    gap:clamp(8px,1.35svh,14px) !important;
    padding-top:clamp(12px,2.3svh,22px) !important;
    padding-bottom:clamp(12px,2.3svh,22px) !important;
  }
  .home-screen.active .home-contact{
    gap:clamp(8px,1.3svh,12px) !important;
  }
}
@media(max-height:700px){
  .home-screen.active{
    gap:7px !important;
  }
  .home-screen.active .home-contact{
    gap:7px !important;
    font-size:14px !important;
  }
  .home-screen.active .lang-toggle{padding:5px 9px !important;font-size:14px !important;}
  .home-screen.active .continue{padding:9px 18px !important;font-size:18px !important;}
}

/* v26 - espace sous MEMBER egal a la marge au-dessus du logo PROSON */
.home-screen.active{
  --home-edge-space: clamp(16px,3svh,30px);
  padding-top: var(--home-edge-space) !important;
  padding-bottom: var(--home-edge-space) !important;
  gap:0 !important;
  justify-content:flex-start !important;
}
.home-screen.active .brand{
  margin-bottom: var(--home-edge-space) !important;
}
.home-screen.active h1{
  margin:0 auto clamp(12px,2.1svh,22px) !important;
}
.home-screen.active .language-dropdown{
  margin:0 auto clamp(12px,2.1svh,22px) !important;
}
.home-screen.active .home-contact{
  margin:0 auto clamp(12px,2.1svh,22px) !important;
}
.home-screen.active .continue{
  margin:0 auto !important;
}
@media(max-height:760px){
  .home-screen.active{
    --home-edge-space: clamp(12px,2.3svh,22px);
  }
  .home-screen.active h1,
  .home-screen.active .language-dropdown,
  .home-screen.active .home-contact{
    margin-bottom:clamp(8px,1.3svh,12px) !important;
  }
}
@media(max-height:700px){
  .home-screen.active{
    --home-edge-space: 10px;
  }
  .home-screen.active h1,
  .home-screen.active .language-dropdown,
  .home-screen.active .home-contact{
    margin-bottom:7px !important;
  }
}

/* v27 - page donnees/resultats : les boutons ne recouvrent plus les radiateurs */
#data.screen.active,
#results.screen.active{
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
#data .topbar,
#results .topbar,
#data .maxline,
#data .global-note,
#data .bottom-nav,
#results .bottom-nav{
  flex:0 0 auto !important;
}
#data .outputs,
#results .outputs{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  margin-bottom:0 !important;
  padding-bottom:18px !important;
}
#data .bottom-nav,
#results .bottom-nav{
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  display:flex !important;
  justify-content:space-between !important;
  gap:14px !important;
  padding:10px 0 4px !important;
  margin-top:8px !important;
  background:white !important;
  pointer-events:auto !important;
  z-index:5 !important;
}
#data .bottom-nav button,
#results .bottom-nav button{
  flex:0 0 auto !important;
  pointer-events:auto !important;
}
@supports(padding:max(0px)){
  #data .bottom-nav,
  #results .bottom-nav{padding-bottom:max(4px, env(safe-area-inset-bottom)) !important;}
}

/* v28 - page donnees/resultats : boutons plus bas, suppression de l'espace blanc sous les boutons */
#data.screen.active,
#results.screen.active{
  padding-bottom:max(8px, env(safe-area-inset-bottom)) !important;
}
#data .outputs,
#results .outputs{
  padding-bottom:8px !important;
}
#data .bottom-nav,
#results .bottom-nav{
  margin-top:2px !important;
  padding-top:6px !important;
  padding-bottom:0 !important;
}
@supports(padding:max(0px)){
  #data .bottom-nav,
  #results .bottom-nav{
    padding-bottom:0 !important;
  }
}

/* v29 - page resultats : bandeau gris sur une seule ligne sans chevauchement langue */
#results .topbar{
  gap:6px !important;
  padding-left:10px !important;
  padding-right:10px !important;
}
#results .top-title{
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  font-size:clamp(9px, 2.6vw, 14px) !important;
  line-height:1 !important;
  text-align:center !important;
  padding:0 2px !important;
}
#results .lang-mini{
  flex:0 0 auto !important;
}
#results .lang-mini .lang-toggle{
  font-size:12px !important;
  padding:5px 7px !important;
  border-radius:8px !important;
}
#results .play{
  flex:0 0 42px !important;
  width:42px !important;
  height:42px !important;
}
#results .info{
  flex:0 0 32px !important;
  width:32px !important;
  height:32px !important;
  font-size:20px !important;
  border-width:2px !important;
}
@media(max-width:420px){
  #results .topbar{gap:4px !important; padding-left:8px !important; padding-right:8px !important;}
  #results .top-title{font-size:clamp(8px, 2.35vw, 11px) !important;}
  #results .lang-mini .lang-toggle{font-size:0 !important; width:34px !important; height:30px !important; padding:0 !important;}
  #results .lang-mini .lang-toggle::first-letter{font-size:18px !important;}
  #results .play{flex-basis:38px !important; width:38px !important; height:38px !important;}
  #results .info{flex-basis:30px !important; width:30px !important; height:30px !important; font-size:18px !important;}
}


/* v30 - page 3 warning and page 4 yellow result title */
#data .maxline{
  display:none !important;
}
#data .global-note.cumulative-warning,
#data .global-note{
  display:block !important;
  color:#d32f2f !important;
  font-weight:800 !important;
  font-size:clamp(13px, 3.6vw, 17px) !important;
  line-height:1.22 !important;
  text-align:center !important;
  margin:0 10px 14px !important;
}
#results .top-title{
  color:#B8860B !important;
  font-weight:800 !important;
}
