/** Shopify CDN: Minification failed

Line 460:0 Unexpected "}"

**/
/* HOPER · catalogue professionnel. 12/09/2026 : la feuille de style vivait
   dans la section Liquid, plafonnee a 50 Ko par Shopify. Sortie ici, elle
   laisse la place a la version anglaise et se met en cache cote navigateur. */
.shopify-section--main-page:has(.section-stack:empty){display:none;}
.hcat{max-width:1200px;margin:0 auto;padding:2rem 1rem 5rem;color:#1d1d1b;}
  .hcat-head{text-align:center;max-width:680px;margin:0 auto 1.6rem;padding-top:.4rem;}
  .hcat-eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#8a8576;margin:0 0 .6rem;}
  .hcat-title{font-size:2rem;letter-spacing:.04em;margin:0 0 .6rem;font-weight:500;}
  .hcat-intro{font-size:.92rem;line-height:1.6;color:rgba(0,0,0,.6);margin:0 0 1.1rem;}
  .hcat-cta{display:inline-block;background:#2f4a3c;color:#fff;text-decoration:none;padding:12px 26px;border-radius:999px;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;transition:background .2s;}
  .hcat-cta:hover{background:#243b30;}
  .hcat-resume{margin:.9rem 0 0;font-size:.78rem;}
  /* 17/09/2026 : validite d'un devis repris. Un devis PERIME doit se distinguer d'un
     coup d'oeil d'un devis valable, sinon le message ne sert a rien : c'est la
     premiere chose que cherche une direction qui recoit le lien transfere. */
  .hcat-validite{margin:.9rem auto 0;max-width:560px;font-family:Arial,Helvetica,sans-serif;
    font-size:.82rem;line-height:1.55;color:#2F4A3C;background:rgba(47,74,60,.06);
    border:1px solid rgba(47,74,60,.18);border-radius:8px;padding:10px 14px;}
  .hcat-validite.hcat-perime{color:#8a5a2b;background:rgba(176,109,42,.08);
    border-color:rgba(176,109,42,.30);}

  .hcat-resume a{color:#8a8576;text-decoration:underline;text-underline-offset:2px;}
  .hcat-resume a:hover{color:#2f4a3c;}
  .hcat-resume-wrap{display:none;margin-top:.7rem;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;}
  .hcat-resume-wrap.is-open{display:flex;}
  .hcat-resume-wrap input{border:1px solid rgba(0,0,0,.2);border-radius:6px;padding:8px 12px;font-size:.8rem;width:260px;text-transform:uppercase;}
  .hcat-resume-wrap button{border:none;background:#2f4a3c;color:#fff;border-radius:6px;padding:9px 16px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;}
  #hcat-resume-msg{font-size:.75rem;color:#8a8576;width:100%;text-align:center;}
  #hcat-resume-msg.ok{color:#2f4a3c;font-weight:600;}
  #hcat-resume-msg.ko{color:#a33;}
  .hcat-nav{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:2.2rem auto .4rem;max-width:860px;}
  .hcat-nav a{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#1d1d1b;text-decoration:none;border:1px solid #e7e1d4;border-radius:999px;padding:9px 16px;background:#fff;white-space:nowrap;transition:border-color .15s,color .15s;}
  .hcat-nav a:hover{border-color:#2f4a3c;color:#2f4a3c;}
  .hcat-maison{display:flex;gap:34px;align-items:center;max-width:960px;margin:2.6rem auto 1rem;padding:0 8px;}
  .hcat-maison-txt{flex:1.2;}
  .hcat-maison-title{font-size:1.5rem;font-weight:500;letter-spacing:.02em;margin:.4rem 0 1rem;color:#1d1d1b;}
  .hcat-maison-txt p{font-size:.92rem;line-height:1.7;color:rgba(0,0,0,.65);margin:0 0 12px;}
  .hcat-maison-img{flex:1;}
  .hcat-maison-img img{width:100%;height:auto;border-radius:10px;display:block;}
  @media (max-width:700px){.hcat-maison{flex-direction:column;}}
  .hcat-m-order{background:#2f4a3c;color:#fff;border:none;border-radius:999px;padding:15px 20px;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-weight:600;}
  .hcat-m-order:hover{background:#243b30;}
  .hcat-m-vir{background:none;border:1.5px solid #2f4a3c;color:#2f4a3c;border-radius:999px;padding:12px 18px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;}
  .hcat-m-vir:hover{background:#eef3ef;}
  .hcat-m-back{font-size:.78rem;color:#8a8576;text-decoration:none;display:inline-block;margin-bottom:4px;}
  .hcat-m-back:hover{color:#2f4a3c;}
  .hcat-m-paytitle{font-size:1rem;font-weight:600;text-align:center;margin:2px 0 10px;color:#1d1d1b;}
  .hcat-paycard{display:block;width:100%;text-align:left;background:#f6f3ec;border:1.5px solid #e7e1d4;border-radius:12px;padding:16px 18px;cursor:pointer;margin-bottom:10px;transition:border-color .15s;}
  .hcat-paycard:hover{border-color:#2f4a3c;}
  .hcat-paycard-t{display:block;font-size:.95rem;font-weight:600;color:#1d1d1b;margin-bottom:4px;}
  .hcat-paycard-s{display:block;font-size:.76rem;color:rgba(0,0,0,.55);line-height:1.5;}
  #hcat-step1{display:flex;flex-direction:column;gap:12px;}
  .hcat-m-sep{border:none;border-top:1px solid #eee;margin:0;}
  .hcat-top{position:fixed;left:18px;bottom:24px;width:42px;height:42px;border-radius:50%;border:1px solid #e7e1d4;background:#fff;color:#1d1d1b;font-size:18px;line-height:1;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.14);opacity:0;pointer-events:none;transition:opacity .25s;z-index:999;}
  .hcat-top.is-on{opacity:1;pointer-events:auto;}
  .hcat-top:hover{border-color:#2f4a3c;color:#2f4a3c;}
  .hcat-m-confirm{display:none;background:#eef3ef;border:1.5px solid #2f4a3c;border-radius:10px;padding:16px;text-align:center;font-size:.88rem;line-height:1.6;color:#1d1d1b;}
  .hcat-m-confirm.is-on{display:block;animation:hcatPop .35s ease;}
  .hcat-m-confirm b{color:#2f4a3c;}
  .hcat-cat{font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;text-align:center;margin:3rem 0 1.5rem;}
  .hcat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:2rem 1.25rem;}
  .hcat-card{display:flex;flex-direction:column;align-items:center;text-align:center;}
  .hcat-imgwrap{display:block;width:100%;aspect-ratio:4/5;background:#f3f0ea;border-radius:8px;overflow:hidden;margin-bottom:.7rem;}
  .hcat-imgwrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease, opacity .25s ease;}
  .hcat-card:hover .hcat-imgwrap img{transform:scale(1.04);}
  .hcat-name{font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;color:#1d1d1b;text-decoration:none;}
  .hcat-name:hover{text-decoration:underline;}
  .hcat-sizechip{margin-top:.4rem;font-size:.68rem;letter-spacing:.08em;background:#f3f0ea;border-radius:999px;padding:3px 10px;color:#5d594e;}
  .hcat-size{margin-top:.5rem;font-size:.72rem;padding:5px 8px;border:1px solid rgba(0,0,0,.2);border-radius:6px;background:#fff;color:#1d1d1b;max-width:100%;}
  .hcat-price{margin-top:.5rem;font-size:.84rem;line-height:1.5;}
  /* 12/09/2026 : « Prix public HT » et « Tarif pro HT » etaient a 9,3 px, soit
     les deux libelles les plus importants de la carte a la limite du lisible. */
  .hcat-price b{font-weight:400;font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:#8a8576;margin-right:.25rem;}
  .hcat-pub{color:rgba(0,0,0,.5);}
  .hcat-pro{color:#2f4a3c;font-weight:500;display:block;}
  .hcat-qtywrap{display:inline-flex;align-items:center;border:1px solid rgba(0,0,0,.2);border-radius:999px;margin-top:.6rem;}
  .hcat-minus,.hcat-plus{width:30px;height:30px;border:none;background:none;cursor:pointer;font-size:16px;line-height:1;color:#1d1d1b;}
  .hcat-qty{width:38px;text-align:center;border:none;background:none;font-size:.85rem;-moz-appearance:textfield;color:#1d1d1b;}
  .hcat-qty::-webkit-outer-spin-button,.hcat-qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
  .hcat-multi-summary{margin-top:.45rem;font-size:.68rem;color:#2f4a3c;min-height:1em;line-height:1.4;}
  .hcat-options{max-width:820px;margin:3.5rem auto 0;background:#f6f3ec;border:1px solid #e7e1d4;border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;}
  .hcat-options-title{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:#8a8576;margin:0 0 .2rem;text-align:center;}
  .hcat-opt{display:flex;align-items:flex-start;gap:10px;font-size:.85rem;line-height:1.55;cursor:default;}
  label.hcat-opt{cursor:pointer;}
  .hcat-opt input[type=checkbox]{position:absolute;opacity:0;pointer-events:none;}
  .hcat-opt-box{flex:none;width:18px;height:18px;border:1.5px solid #2f4a3c;border-radius:4px;margin-top:2px;position:relative;background:#fff;}
  .hcat-opt input:checked ~ .hcat-opt-box{background:#2f4a3c;}
  .hcat-opt input:checked ~ .hcat-opt-box::after{content:'';position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
  .hcat-opt-txt{color:rgba(0,0,0,.72);}
  .hcat-opt-txt b{color:#1d1d1b;font-weight:600;}
  .hcat-opt-ship{border-top:1px solid #e7e1d4;padding-top:12px;}
  .hcat-shipmode label{font-size:.85rem;margin-right:16px;cursor:pointer;color:#1d1d1b;}
  .hcat-shipmode input{accent-color:#2f4a3c;margin-right:4px;}
  .hcat-opt-code{border-top:1px solid #e7e1d4;padding-top:12px;align-items:center;flex-wrap:wrap;}
  #hcat-code-toggle,#hcat-code-toggle-m{font-size:.78rem;color:#8a8576;text-decoration:underline;text-underline-offset:2px;}
  #hcat-code-toggle:hover,#hcat-code-toggle-m:hover{color:#2f4a3c;}
  .hcat-code-wrap{display:none;align-items:center;gap:8px;flex-wrap:wrap;}
  .hcat-code-wrap.is-open{display:inline-flex;}
  .hcat-code-wrap input{border:1px solid rgba(0,0,0,.2);border-radius:6px;padding:7px 10px;font-size:.8rem;width:140px;text-transform:uppercase;}
  .hcat-code-wrap button{border:none;background:#1d1d1b;color:#fff;border-radius:6px;padding:8px 14px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;}
  #hcat-code-msg,#hcat-code-msg-m{font-size:.75rem;color:#8a8576;}
  #hcat-code-msg.ok,#hcat-code-msg-m.ok{color:#2f4a3c;font-weight:600;}
  #hcat-code-msg.ko,#hcat-code-msg-m.ko{color:#a33;}
  .hcat-bar{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(180%);width:calc(100% - 32px);max-width:760px;background:#1d1d1b;color:#fff;border-radius:14px;padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 12px 32px rgba(0,0,0,.28);transition:transform .3s ease;z-index:1000;flex-wrap:wrap;}
  .hcat-bar.is-active{transform:translateX(-50%) translateY(0);}
  .hcat-bar-info{display:flex;align-items:center;gap:16px;font-size:.78rem;flex-wrap:wrap;color:rgba(255,255,255,.7);}
  .hcat-bar-info b{color:#fff;font-weight:500;}
  .hcat-bar-count{color:#fff;font-weight:500;}
  .hcat-bar-saveline b{color:#9ccdb4;}
  .hcat-bar-reset{background:none;border:none;color:rgba(255,255,255,.5);font-size:.72rem;text-decoration:underline;cursor:pointer;padding:4px;white-space:nowrap;}
  .hcat-bar-reset:hover{color:#fff;}
  .hcat-bar-btn{background:#fff;color:#1d1d1b;border:none;border-radius:999px;padding:10px 20px;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;white-space:nowrap;}
  .hcat-bar-btn:hover{opacity:.92;}
  .hcat-modal{position:fixed;inset:0;z-index:2000;display:none;background:rgba(0,0,0,.5);align-items:center;justify-content:center;padding:20px;}
  .hcat-modal.is-open{display:flex;}
  .hcat-modal-card{position:relative;background:#fff;border-radius:14px;max-width:520px;width:100%;max-height:86vh;overflow:auto;padding:28px 26px;display:flex;flex-direction:column;gap:14px;}
  .hcat-modal-close{position:absolute;top:8px;right:14px;border:none;background:none;font-size:26px;cursor:pointer;color:#1d1d1b;}
  .hcat-modal-title{font-size:1.1rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500;margin:0;text-align:center;}
  .hcat-modal-sub{font-size:.8rem;color:rgba(0,0,0,.5);margin:0;text-align:center;}
  .hcat-m-lines{border-top:1px solid #eee;padding-top:12px;font-size:.85rem;line-height:1.9;}
  .hcat-m-lines .row{display:flex;justify-content:space-between;gap:12px;}
  .hcat-m-lines .row b{font-weight:600;}
  .hcat-m-lines .row.total{border-top:1px solid #eee;margin-top:6px;padding-top:8px;font-size:.95rem;}
  .hcat-m-lines .muted{color:rgba(0,0,0,.45);font-size:.75rem;}
  .hcat-m-dl{background:#2f4a3c;color:#fff;border:none;border-radius:999px;padding:14px 20px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;}
  .hcat-m-dl:hover{background:#243b30;}
  .hcat-m-note{font-size:.72rem;color:rgba(0,0,0,.45);text-align:center;margin:0;}
  .hcat-m-mailbtn{background:none;border:1px solid #2f4a3c;color:#2f4a3c;border-radius:999px;padding:11px 18px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;}
  .hcat-m-mailbtn:hover{background:#eef3ef;}
  .hcat-m-afternum{display:none;margin:0;font-size:.85rem;text-align:center;font-weight:600;}
  .hcat-m-afternum.is-on{display:block;animation:hcatPop .35s ease;}
  @keyframes hcatPop{from{transform:scale(.96);opacity:0;}to{transform:scale(1);opacity:1;}}
  .hcat-m-afternum b{color:#2f4a3c;}
  #hcat-copy-num{border:1px solid #2f4a3c;background:none;color:#2f4a3c;border-radius:6px;padding:4px 10px;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;margin-left:6px;}
  .hcat-bloc-titre{font-family:Arial,Helvetica,sans-serif;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#8a8576;margin:0 0 8px;grid-column:1/-1;}
  .hcat-m-client{display:flex;flex-direction:column;gap:8px;}
  .hcat-m-client input,.hcat-m-client select{border:1px solid rgba(0,0,0,.15);border-radius:8px;padding:10px 12px;font-size:.85rem;}
  /* 09/09/2026 : sur iPhone, tout champ sous 16 px fait ZOOMER la page a la saisie, et
     le formulaire devenait impraticable au doigt. Sous 700 px on passe a 16 px, et les
     boutons de quantite atteignent la taille d'une pulpe de doigt. */
  @media (max-width:700px){
    .hcat-m-client input,.hcat-m-client select,.hcat-qty,
    .hcat-code-wrap input,.hcat-resume-wrap input{font-size:16px;}
    .hcat-qty{width:52px;}
    .hcat-qtywrap button{min-width:44px;min-height:44px;font-size:1.1rem;}
    /* 12/09/2026, audit : au doigt, la quantite faisait 26 px de haut, le
       selecteur de taille 30, « Reinitialiser » 27. Le confortable commence a 44.
       Le catalogue vient de s'ouvrir a tous : il se lit surtout sur telephone. */
    .hcat-qty{min-height:44px;}
    .hcat-size{min-height:44px;font-size:16px;padding:10px 12px;}
    .hcat-bar-reset{min-height:44px;padding:10px 14px;}
    .hcat-price{font-size:.9rem;}
    .hcat-price b{font-size:.74rem;}
    .hcat-code-wrap input,.hcat-resume-wrap input{width:100%;max-width:280px;}
  }
  @media (max-width:600px){
    .hcat-grid{grid-template-columns:repeat(2,1fr);gap:1.4rem .9rem;}
    .hcat-title{font-size:1.6rem;}
    .hcat-bar{bottom:84px;flex-direction:column;align-items:stretch;text-align:center;gap:10px;}
    .hcat-bar-info{justify-content:center;}
    .hcat-bar-btn{width:100%;}
    .hcat-nav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding:2px 4px 10px;scrollbar-width:none;}
    .hcat-nav::-webkit-scrollbar{display:none;}
    .hcat-top{left:12px;bottom:16px;}
  }
.hcat-intro--min{font-size:.82rem !important;color:#8a8576 !important;margin-top:12px;}
  .hcat-intro--min a{color:#2F4A3C;text-underline-offset:3px;}
  .hcat-mur-card{max-width:560px;text-align:center;}
  /* sur telephone la croix venait mordre le titre */
  .hcat-mur-card .hcat-modal-title{padding-right:34px;}
  .hcat-mur-txt{font-family:Arial,Helvetica,sans-serif;font-size:.92rem;line-height:1.7;
    color:#3d3d3d;margin:0 0 14px;text-align:left;}
  .hcat-mur-rassure{color:#2F4A3C;}
  .hcat-mur-btns{display:flex;flex-direction:column;gap:10px;margin:20px 0 0;}
  .hcat-mur-btn{display:block;text-decoration:none;padding:14px 22px;font-family:Arial,Helvetica,sans-serif;
    font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;text-align:center;}
  .hcat-mur-btn--plein{background:#2F4A3C;color:#fff;}
  .hcat-mur-btn--vide{background:#fff;color:#2F4A3C;border:1px solid #2F4A3C;}
  .hcat-mur-note{font-family:Arial,Helvetica,sans-serif;font-size:.78rem;line-height:1.55;
    color:#8a8576;margin:16px 0 0;text-align:left;}

  /* --- Comptoir : mode vendeur, 16/09/2026. Meme langue graphique que le panneau,
     vert profond, pastilles, petites capitales. Un panneau d'administration colle par
     dessus jurerait sur une page que le client peut voir par dessus l'epaule. --- */
  .hcat-cpt{margin:18px 0 0;padding:16px 0 0;border-top:1px solid #e6e3da;text-align:center;}
  .hcat-cpt-titre{margin:0 0 10px;font-family:Arial,Helvetica,sans-serif;font-size:.7rem;
    letter-spacing:.18em;text-transform:uppercase;color:#8a8576;}
  .hcat-cpt-btn{background:#2F4A3C;color:#fff;border:none;border-radius:999px;
    padding:14px 22px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;
    letter-spacing:.1em;text-transform:uppercase;font-weight:600;cursor:pointer;width:100%;}
  .hcat-cpt-btn[disabled]{opacity:.55;cursor:default;}
  .hcat-cpt-out{margin:12px 0 0;font-family:Arial,Helvetica,sans-serif;font-size:.82rem;
    line-height:1.5;color:#1d1d1b;word-break:break-all;}
  .hcat-cpt-out a{color:#2F4A3C;}




/* Comptoir, tranche 3 du 17/09/2026 : convertir et envoyer devant le client. */
.hcat-cpt-sous{margin:14px 0 8px;font-family:Arial,Helvetica,sans-serif;font-size:.78rem;
  letter-spacing:.04em;color:#6b6b63;}
.hcat-cpt-btn2{display:block;width:100%;margin:0 0 8px;background:none;
  border:1px solid #2F4A3C;color:#2F4A3C;border-radius:999px;padding:11px 18px;
  font-family:Arial,Helvetica,sans-serif;font-size:.86rem;cursor:pointer;}
.hcat-cpt-btn2:hover{background:#2F4A3C;color:#fff;}
.hcat-cpt-btn2[disabled]{opacity:.55;cursor:default;}


/* 17/09/2026. Sur la page catalogue, l'action principale est de COMMANDER. Le projet sur
   mesure reste proposé, en bouton secondaire. */
.hcat-cta.hcat-cta--vide{background:transparent;color:#2f4a3c;border:1px solid #2f4a3c;}
.hcat-cta.hcat-cta--vide:hover{background:#2f4a3c;color:#fff;}


/* 17/09/2026. « Voir ma sélection » et sa petite liste. */
.hcat-bar-voir{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:999px;
  padding:9px 16px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;margin:0 6px 0 0;}
.hcat-bar-voir:hover{background:#fff;color:#1d1d1b;}
.hcat-sel-card{max-width:520px;}
.hcat-sel-lines{margin:14px 0 18px;max-height:52vh;overflow:auto;}
.hcat-sel-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e6e3da;}
.hcat-sel-nom{background:none;border:none;padding:0;text-align:left;font-size:.9rem;color:#1d1d1b;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(0,0,0,.25);}
.hcat-sel-qte{display:flex;align-items:center;gap:10px;flex:0 0 auto;}
.hcat-sel-qte button{width:32px;height:32px;border-radius:50%;border:1px solid #2f4a3c;background:#fff;color:#2f4a3c;font-size:1rem;cursor:pointer;line-height:1;}
.hcat-sel-qte span{min-width:18px;text-align:center;font-variant-numeric:tabular-nums;}
.hcat-sel-vide{color:#6b6b63;font-size:.9rem;}
.hcat-sel-go{width:100%;border:none;cursor:pointer;}
/* Sur les pages pro, la fenêtre newsletter grand public (-10 %) recouvrait la barre de commande. */
newsletter-popup{display:none !important;}

/* 17/09/2026. Premier ecran oriente action : tuiles, pastilles collees, animations. */
.hcat-head{margin-bottom:1rem;}
.hcat-sous{font-size:.8rem;color:#8a8576;margin:0 0 1.2rem;letter-spacing:.02em;}
.hcat-tuiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:680px;margin:0 auto;text-align:left;}
.hcat-tuile{display:flex;flex-direction:column;justify-content:center;gap:8px;background:#fff;border:1px solid #e7e1d4;border-radius:14px;padding:16px 18px;min-height:96px;box-sizing:border-box;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.hcat-tuile:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.08);border-color:#cfc6b3;}
.hcat-tuile-t{margin:0;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#1d1d1b;font-weight:600;}
.hcat-tuile-s{font-size:.82rem;color:#8a8576;}
.hcat-tuile .hcat-resume-wrap{margin:0;justify-content:flex-start;flex-wrap:nowrap;}
.hcat-tuile .hcat-resume-wrap input{flex:1;min-width:0;width:auto;}
.hcat-tuile #hcat-resume-msg{text-align:left;}
a.hcat-tuile.hcat-cta,a.hcat-tuile.hcat-cta.hcat-cta--vide{background:#2f4a3c;color:#fff;border-color:#2f4a3c;text-transform:none;letter-spacing:0;padding:16px 18px;border-radius:14px;position:relative;}
a.hcat-tuile.hcat-cta .hcat-tuile-t{color:#fff;}
a.hcat-tuile.hcat-cta .hcat-tuile-s{color:rgba(255,255,255,.72);}
a.hcat-tuile.hcat-cta::after{content:"\2192";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.1rem;transition:transform .25s ease;}
a.hcat-tuile.hcat-cta:hover{background:#243b30;}
a.hcat-tuile.hcat-cta:hover::after{transform:translate(4px,-50%);}
.hcat-compte{font-size:.8rem;color:#8a8576;margin:1rem 0 0;}
.hcat-compte a{color:#2f4a3c;text-underline-offset:3px;}
.hcat-chips{position:sticky;top:var(--sticky-area-height,0px);z-index:5;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:10px 4px;margin:.4rem auto 0;background:rgb(var(--background, 239 239 239));}
.hcat-chips a{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#1d1d1b;text-decoration:none;border:1px solid #e7e1d4;border-radius:999px;padding:9px 16px;background:#fff;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s;}
.hcat-chips a:hover{border-color:#2f4a3c;color:#2f4a3c;transform:translateY(-1px);}
.hcat-chips a.is-on{background:#2f4a3c;border-color:#2f4a3c;color:#fff;}
.hcat-rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1);}
.hcat-rv.is-in{opacity:1;transform:none;}
.hcat-card{transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease;}
.hcat-card.is-in:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.08);}
@keyframes hcatPulse{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}
.hcat-pulse{display:inline-block;animation:hcatPulse .45s ease;}
@media (max-width:600px){
  .hcat-tuiles{grid-template-columns:1fr;}
  .hcat-tuile{min-height:0;padding:14px 16px;}
  .hcat-chips{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;padding:10px 16px;margin-left:-16px;margin-right:-16px;}
  .hcat-chips::-webkit-scrollbar{display:none;}
  .hcat-cat{margin-top:2rem;}
}
@media (prefers-reduced-motion: reduce){
  .hcat-rv{opacity:1;transform:none;transition:none;}
  .hcat-pulse{animation:none;}
  .hcat-tuile,.hcat-chips a,.hcat-card{transition:none;}
}

.hcat-tuile .hcat-resume-wrap input::placeholder{text-transform:none;letter-spacing:0;}

/* 17/09/2026, soir. Pastille d'une ligne et volet « Mon devis ». */
.hcat-bar{padding:0;background:transparent;box-shadow:none;display:block;max-width:520px;width:calc(100% - 32px);border-radius:999px;}
.hcat-bar-pill{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#1d1d1b;color:rgba(255,255,255,.75);border:0;border-radius:999px;padding:14px 22px;font:inherit;font-size:.84rem;cursor:pointer;box-shadow:0 12px 32px rgba(0,0,0,.28);transition:transform .2s ease,background .2s ease;}
.hcat-bar-pill:hover{transform:translateY(-2px);background:#2a2a27;}
.hcat-bar-resume{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hcat-bar-resume b,.hcat-bar-count{color:#fff;font-weight:500;}
.hcat-bar-voirtxt{color:#fff;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;}
.hcat-bar-cache{display:none !important;}
html.hcat-fige,html.hcat-fige body{overflow:hidden;}
.hcat-volet{align-items:flex-end;padding:0;animation:hcatFondu .25s ease;}
.hcat-volet .hcat-sel-card{max-width:560px;width:100%;max-height:90vh;border-radius:20px 20px 0 0;padding:10px 22px calc(18px + env(safe-area-inset-bottom,0px));gap:10px;animation:hcatMonte .34s cubic-bezier(.2,.7,.2,1);}
@keyframes hcatMonte{from{transform:translateY(100%)}to{transform:none}}
@keyframes hcatFondu{from{background:rgba(0,0,0,0)}}
.hcat-volet-poignee{display:block;width:40px;height:4px;border-radius:9px;background:#e0dace;margin:0 auto 2px;}
.hcat-volet .hcat-modal-title{margin:0;}
.hcat-volet .hcat-modal-sub{margin:0;}
.hcat-volet .hcat-sel-lines{margin:4px 0;max-height:32vh;}
.hcat-sel-opts{border:1px solid #e7e1d4;border-radius:12px;padding:10px 14px;background:#f6f3ec;}
.hcat-sel-opts summary{cursor:pointer;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#1d1d1b;}
.hcat-sel-opts .hcat-options{margin:10px 0 0;max-width:none;padding:0;border:0;background:transparent;}
.hcat-sel-opts .hcat-options-title{display:none;}
.hcat-sel-sommes{display:flex;flex-direction:column;gap:5px;border-top:1px solid #e6e3da;padding-top:10px;}
.hcat-sel-l{display:flex;justify-content:space-between;gap:12px;font-size:.84rem;color:#8a8576;}
.hcat-sel-l[hidden]{display:none;}
.hcat-sel-l--pro{color:#1d1d1b;font-size:1rem;}
.hcat-sel-l--pro b{color:#2f4a3c;font-weight:600;}
.hcat-sel-eco{margin:0;text-align:right;font-size:.78rem;color:#2f4a3c;}
.hcat-volet #hcat-open{width:100%;background:#2f4a3c;color:#fff;padding:15px;margin-top:4px;}
.hcat-volet #hcat-open:hover{background:#243b30;opacity:1;}
.hcat-volet #hcat-reset{color:#8a8576;align-self:center;}
.hcat-volet #hcat-reset:hover{color:#1d1d1b;}
@media (max-width:600px){
  .hcat-bar{bottom:84px;}
  .hcat-bar-pill{padding:13px 18px;font-size:.8rem;}
}
@media (prefers-reduced-motion: reduce){
  .hcat-volet,.hcat-volet .hcat-sel-card{animation:none;}
}

/* Pendant que le volet est ouvert, la bulle de Camille ne recouvre pas « Obtenir mon devis ». */
html.hcat-fige #hoper-camille{display:none !important;}

/* 17/09/2026, retours de Charles : options visiblement cliquables, pastille collée en bas du téléphone. */
.hcat-sel-opts summary{list-style:none;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;}
.hcat-sel-opts summary::-webkit-details-marker{display:none;}
.hcat-sel-opts-t{grid-column:1;}
.hcat-sel-opts-s{grid-column:1;font-size:.78rem;letter-spacing:0;text-transform:none;color:#8a8576;margin-top:2px;}
.hcat-sel-opts summary::after{content:"";grid-column:2;grid-row:1 / span 2;width:30px;height:30px;border-radius:50%;border:1px solid #cfc6b3;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%231d1d1b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat;transition:transform .25s ease;}
.hcat-sel-opts[open] summary::after{transform:rotate(180deg);}
.hcat-sel-opts summary:hover::after{border-color:#2f4a3c;}
@media (max-width:600px){
  .hcat-bar{bottom:calc(10px + env(safe-area-inset-bottom, 0px));width:calc(100% - 20px);}
  body:has(#hcat-bar.is-active) #hoper-camille{bottom:calc(76px + env(safe-area-inset-bottom, 0px)) !important;transition:bottom .3s ease;}
  body:has(#hcat-bar.is-active) .hcat-top{bottom:calc(76px + env(safe-area-inset-bottom, 0px));}
}

/* 17/09/2026. Mode vendeur et lien de paiement du Comptoir. */
.hcat-vendeur{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;max-width:680px;margin:0 auto 1.2rem;padding:10px 14px 10px 18px;border-radius:999px;background:#2f4a3c;color:#fff;font-size:.78rem;}
.hcat-vendeur-t{letter-spacing:.08em;}
.hcat-vendeur-btn{border:0;border-radius:999px;background:#fff;color:#2f4a3c;padding:9px 16px;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;}
.hcat-vendeur-btn:hover{background:#f6f3ec;}
.hcat-cpt-lien-t{margin:.6rem 0 .2rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#1d1d1b;}
.hcat-cpt-lien{display:block;word-break:break-all;font-size:.78rem;color:#2f4a3c;}
.hcat-cpt-gestes{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
@media (max-width:600px){ .hcat-vendeur{border-radius:14px;} .hcat-vendeur-btn{width:100%;} }

/* 17/09/2026. Geste commercial du Comptoir. */
.hcat-cpt-champs{display:flex;flex-direction:column;gap:6px;margin:4px 0 10px;text-align:left;}
.hcat-cpt-l{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#1d1d1b;}
.hcat-cpt-ligne{display:flex;gap:6px;}
.hcat-cpt-champs input,.hcat-cpt-champs select{border:1px solid #d9d2c3;border-radius:8px;padding:9px 10px;font:inherit;font-size:16px;background:#fff;min-width:0;}
.hcat-cpt-ligne input{flex:1;}

/* 17/09/2026. Suggestions de l'annuaire des entreprises. */
.hcat-suggest{border:1px solid #e7e1d4;border-radius:10px;background:#fff;margin:-4px 0 8px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.08);}
.hcat-suggest-aide{margin:0;padding:8px 12px;font-size:.72rem;color:#8a8576;background:#f6f3ec;}
.hcat-suggest-l{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;border:0;border-top:1px solid #f0ebe0;background:#fff;padding:10px 12px;text-align:left;cursor:pointer;font:inherit;}
.hcat-suggest-l:hover{background:#f6f3ec;}
.hcat-suggest-l b{font-size:.84rem;font-weight:600;color:#1d1d1b;}
.hcat-suggest-l span{font-size:.74rem;color:#8a8576;}

.hcat-cpt-coche{display:flex;align-items:center;gap:8px;font-size:.84rem;color:#1d1d1b;margin-top:4px;cursor:pointer;}
.hcat-cpt-coche input{width:18px;height:18px;accent-color:#2f4a3c;}

/* 17/09/2026. Pastille vraiment invisible quand le devis est vide (iPhone : la barre de
   Safari laisse voir ce qui passe dessous). */
.hcat-bar:not(.is-active){visibility:hidden;opacity:0;transition:transform .3s ease,opacity .2s ease,visibility 0s linear .3s;}
.hcat-bar.is-active{visibility:visible;opacity:1;transition:transform .3s ease,opacity .2s ease;}
/* Mode vendeur : choix et fiche client. */
.hcat-vendeur{flex-direction:column;align-items:stretch;border-radius:18px;padding:14px 16px;gap:10px;}
.hcat-vendeur-haut{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;}
.hcat-vendeur-pour{background:none;border:0;color:#fff;font:inherit;font-size:.78rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0;text-align:left;}
.hcat-vendeur-btn{width:100%;}
.hcat-vendeur-choix{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.hcat-vendeur-btn2{border:1px solid rgba(255,255,255,.7);border-radius:999px;background:transparent;color:#fff;padding:9px 14px;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;}
.hcat-vendeur-btn2:hover{background:rgba(255,255,255,.12);}
.hcat-vendeur-fiche{display:flex;flex-direction:column;gap:8px;}
.hcat-vendeur-fiche input{border:0;border-radius:10px;padding:11px 12px;font:inherit;font-size:16px;color:#1d1d1b;background:#fff;}
.hcat-vendeur-fiche .hcat-suggest{margin:-4px 0 0;color:#1d1d1b;}
.hcat-vf-adr{margin:0;font-size:.76rem;color:rgba(255,255,255,.8);}
.hcat-vf-adr:empty{display:none;}
.hcat-resume-res{border:1px solid #e7e1d4;border-radius:10px;overflow:hidden;margin-top:8px;}
.hcat-resume-res .hcat-suggest-l:first-child{border-top:0;}
@media (max-width:600px){ .hcat-vendeur-choix{grid-template-columns:1fr;} }

/* 17/09/2026. Comptoir dans le volet « Mon devis » (associes). */
.hcat-sel-client{border:1px dashed #cfc6b3;border-radius:12px;background:#fff;padding:10px 14px;font:inherit;font-size:.84rem;color:#2f4a3c;text-align:left;cursor:pointer;}
.hcat-sel-client:hover{border-color:#2f4a3c;}
.hcat-volet .hcat-cpt{margin:4px 0 0;padding:12px 14px;border-radius:12px;background:#f6f3ec;border:1px solid #e7e1d4;text-align:left;}
.hcat-volet .hcat-cpt-titre{margin:0 0 6px;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;}
.hcat-volet .hcat-cpt .hcat-cpt-btn,.hcat-volet .hcat-cpt .hcat-cpt-btn2{width:100%;margin-top:6px;}
.hcat-volet .hcat-cpt-out:empty{display:none;}
.hcat-volet .hcat-cpt-out{margin:8px 0 0;font-size:.8rem;}

/* 17/09/2026. Choix d'envoi du devis (Comptoir). */
.hcat-cpt-envoi{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px;animation:hcatFondu .2s ease;}
.hcat-cpt-choix{border:1px solid #cfc6b3;border-radius:10px;background:#fff;color:#1d1d1b;padding:11px 8px;font:inherit;font-size:.8rem;cursor:pointer;}
.hcat-cpt-choix:hover{border-color:#2f4a3c;color:#2f4a3c;}

/* 17/09/2026. Adresse de livraison du lien carte (Comptoir). */
.hcat-cpt-carte{display:flex;flex-direction:column;gap:6px;margin:6px 0;padding:10px;border-radius:12px;background:#fff;border:1px solid #e7e1d4;animation:hcatFondu .2s ease;}
.hcat-cpt-carte input,.hcat-cpt-carte select{border:1px solid #d9d2c3;border-radius:8px;padding:9px 10px;font:inherit;font-size:16px;background:#fff;min-width:0;}
.hcat-cpt-carte .hcat-cpt-ligne input{flex:1;}
.hcat-cpt-carte .hcat-cpt-envoi{margin-top:4px;}

/* 17/09/2026. Resultat visible sous le bouton (devis enregistre, lien de paiement pret). */
.hcat-cpt-resultat{margin:8px 0 4px;padding:12px;border-radius:12px;background:#eef3ef;border:1px solid #2f4a3c;animation:hcatFondu .25s ease;}
.hcat-cpt-res-t{margin:0 0 4px;font-size:.86rem;font-weight:600;color:#2f4a3c;}
.hcat-cpt-resultat .hcat-cpt-lien{font-size:.72rem;color:#8a8576;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hcat-cpt-resultat .hcat-cpt-envoi{margin-top:8px;}
.hcat-cpt-choix--pdf{grid-column:1 / -1;background:#2f4a3c;color:#fff;border-color:#2f4a3c;}
.hcat-cpt-choix--pdf:hover{color:#fff;background:#243b30;}

/* 17/09/2026. Bas du volet : gestes distincts ; bandeau : devis en cours. */
.hcat-sel-fin{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;}
.hcat-volet .hcat-sel-fin #hcat-reset,.hcat-volet .hcat-sel-fin #hcat-vider-sel,.hcat-volet .hcat-sel-fin #hcat-nouveau-devis{color:#8a8576;}
.hcat-volet .hcat-sel-fin #hcat-nouveau-devis{color:#2f4a3c;font-weight:600;}

/* 17/09/2026. Devis en cours en fenetre ; geste visible. */
.hcat-encours-liste{display:flex;flex-direction:column;border:1px solid #e7e1d4;border-radius:12px;overflow:auto;max-height:62vh;}
.hcat-encours-liste:empty{display:none;}
.hcat-encours-liste .hcat-suggest-l:first-child{border-top:0;}
.hcat-cpt-ok{margin:2px 0 0;font-size:.8rem;font-weight:600;color:#2f4a3c;}
.hcat-sel-l--remise{color:#2f4a3c;}

/* 17/09/2026. Devis en cours : recherche, glisser pour archiver, annuler. */
.hcat-encours-rech{width:100%;box-sizing:border-box;border:1px solid #d9d2c3;border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;background:#fff;}
.hcat-encours-aide{margin:0;font-size:.72rem;color:#8a8576;text-align:center;}
.hcat-glisse{position:relative;overflow:hidden;border-top:1px solid #f0ebe0;transition:max-height .26s ease,opacity .26s ease;max-height:140px;}
.hcat-glisse:first-child{border-top:0;}
.hcat-glisse .hcat-suggest-l{position:relative;z-index:1;border-top:0;transition:transform .22s ease;background:#fff;}
.hcat-glisse-fond{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;padding-right:18px;background:#8a8576;color:#fff;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;}
.hcat-glisse.is-pret .hcat-glisse-fond{background:#a33;}
.hcat-glisse.is-parti{max-height:0;opacity:0;}
.hcat-glisse-souris{display:none;position:absolute;z-index:2;right:10px;top:50%;transform:translateY(-50%);border:1px solid #cfc6b3;border-radius:999px;background:#fff;color:#8a8576;font:inherit;font-size:.7rem;padding:5px 10px;cursor:pointer;}
@media (hover:hover) and (pointer:fine){ .hcat-glisse:hover .hcat-glisse-souris{display:block;} }
.hcat-annuler{border:0;background:none;color:#2f4a3c;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer;padding:0;}

/* 17/09/2026, capture iPhone de Charles : lignes ecrasees. Dans une colonne flex a hauteur
   limitee, Safari RETRECIT chaque ligne (overflow hidden) au lieu de faire defiler la liste. */
.hcat-encours-liste{display:block;-webkit-overflow-scrolling:touch;}
.hcat-encours-liste > *{flex-shrink:0;}
.hcat-glisse{max-height:none;}
.hcat-glisse.is-parti{max-height:0;}

/* 17/09/2026 (repasse globale). Volet vendeur : Safari/Chrome retrecissaient la liste des
   lignes a 0 px quand le Comptoir allongeait le volet. Chaque bloc garde sa hauteur. */
.hcat-volet .hcat-sel-card > *{flex-shrink:0;}
.hcat-volet .hcat-sel-lines{min-height:56px;}
/* Comptoir : la police du theme partout (les boutons prenaient la police systeme). */
.hcat-cpt button,.hcat-cpt input,.hcat-cpt select,.hcat-cpt-choix,.hcat-cpt-resultat{font-family:inherit;}
.hcat-cpt-out,.hcat-cpt-resultat{overflow-wrap:break-word;word-break:normal;hyphens:none;}

.hcat-cpt-pct{align-self:center;font-size:.9rem;color:#8a8576;}
.hcat-cpt-carte .hcat-cpt-ligne,.hcat-cpt-champs .hcat-cpt-ligne{align-items:center;}

.hcat-cpt-champs textarea{border:1px solid #d9d2c3;border-radius:8px;padding:9px 10px;font:inherit;font-size:16px;background:#fff;resize:vertical;}
.hcat-suggest-note{display:block;margin-top:4px;font-size:.74rem;color:#2f4a3c;font-style:italic;}


}
/* QR code plein ecran, lisible a bout de bras. */
.hcat-qr{align-items:center;}
.hcat-qr-card{max-width:360px;text-align:center;align-items:center;}
.hcat-qr-card canvas{width:280px;height:280px;background:#fff;border-radius:12px;}
.hcat-qr-lien{font-size:.7rem;color:#8a8576;word-break:break-all;margin:0;}

/* 17/09/2026, Charles : le choix du client devient une ETAPE dans sa fenetre. Les deux
   boutons vivent desormais sur fond clair, plus sur le bandeau vert. */
#hcat-nouveau .hcat-modal-card{max-width:440px;gap:12px;}
#hcat-nouveau .hcat-vendeur-choix{display:flex;flex-direction:column;gap:10px;}
#hcat-nouveau .hcat-vendeur-choix .hcat-cpt-btn,#hcat-nouveau .hcat-vendeur-choix .hcat-cpt-btn2{margin:0;}
#hcat-nouveau .hcat-vendeur-fiche{display:flex;flex-direction:column;gap:8px;}
#hcat-nouveau .hcat-vendeur-fiche input{border:1px solid #d9d2c3;border-radius:10px;background:#fff;}
#hcat-nouveau .hcat-vendeur-fiche .hcat-cpt-btn{margin:4px 0 0;}
#hcat-nouveau .hcat-vf-adr{color:#8a8576;font-size:.78rem;}
#hcat-nouveau .hcat-modal-card > *{flex-shrink:0;}
.hcat-nouveau-aide{margin:2px 0 0;font-size:.76rem;line-height:1.5;color:#8a8576;text-align:center;}
.hcat-nouveau-retour{align-self:center;border:0;background:none;color:#8a8576;font:inherit;font-size:.8rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 8px;}
#hcat-nouveau button{font-family:inherit;}

/* 18/09/2026. Bon pour accord : le client, ou sa direction, valide le devis d'un clic. */
.hcat-accord{display:flex;flex-direction:column;align-items:center;gap:8px;margin:10px auto 0;max-width:520px;}
.hcat-accord-btn{border:0;border-radius:999px;background:#2F4A3C;color:#fff;padding:13px 26px;
  font-family:inherit;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;}
.hcat-accord-btn:hover{background:#243b30;}
.hcat-accord-fait{margin:0;padding:10px 16px;border-radius:12px;background:#eef3ef;border:1px solid #2F4A3C;
  color:#2F4A3C;font-size:.84rem;text-align:center;}
.hcat-accord-champs{display:flex;flex-direction:column;gap:10px;}
.hcat-accord-champs input[type=text]{border:1px solid #d9d2c3;border-radius:10px;padding:11px 12px;font:inherit;font-size:16px;background:#fff;}
#hcat-accord-fen .hcat-modal-card{max-width:440px;}
#hcat-accord-fen .hcat-modal-card > *{flex-shrink:0;}
#hcat-accord-fen button{font-family:inherit;}
#hcat-accord-fen .hcat-cpt-coche{align-items:flex-start;line-height:1.45;}
.hcat-accord-msg:empty{display:none;}
.hcat-accord-msg{margin:0;font-size:.8rem;color:#a33;text-align:center;}
.hcat-accord-fin{margin:0;padding:10px 12px;border-radius:12px;background:#eef3ef;border:1px solid #2F4A3C;
  color:#2F4A3C;font-size:.84rem;line-height:1.5;text-align:center;}

/* 18/09/2026. Historique du client, construit par le moteur (la section Liquid est pleine). */
.hcat-histo-corps{display:flex;flex-direction:column;gap:2px;max-height:60vh;overflow:auto;}
.hcat-histo-corps > *{flex-shrink:0;}
.hcat-histo-t{margin:12px 0 4px;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#8a8576;}
.hcat-histo-t:first-child{margin-top:0;}
.hcat-histo-l{display:flex;justify-content:space-between;gap:12px;padding:9px 2px;border-top:1px solid #f0ebe0;font-size:.84rem;color:#1d1d1b;text-align:left;}
.hcat-histo-fort{font-weight:600;}
.hcat-histo-d{color:#8a8576;white-space:nowrap;}
.hcat-histo-cliq{cursor:pointer;}
.hcat-histo-cliq:hover{background:#f6f3ec;}
#hcat-histo .hcat-modal-card{max-width:480px;}

/* 22/09/2026. MODE DEVIS. Un client qui ouvre SON devis (lien avec jeton) voit son devis
   et ses actions en tete ; le catalogue et ce qui sert a composer se cachent, et
   reviennent sur « Modifier la selection ». */
.hcat-mode-devis .hcat-tuiles,.hcat-mode-devis .hcat-compte,.hcat-mode-devis .hcat-chips,
.hcat-mode-devis .hcat-cat,.hcat-mode-devis .hcat-grid,.hcat-mode-devis .hcat-particulier,
.hcat-mode-devis .hcat-options{display:none!important;}
.hcat-mondevis{max-width:700px;margin:18px auto 8px;background:#fff;border:1px solid #e7e1d4;
  border-radius:14px;padding:20px 22px;box-sizing:border-box;text-align:left;animation:hcatFondu .25s ease;}
.hcat-mondevis-t{margin:0 0 4px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;
  color:#1d1d1b;font-weight:600;}
.hcat-mondevis-r{margin:0 0 16px;font-size:1rem;color:#1d1d1b;}
.hcat-mondevis-a{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.hcat-mondevis-a .hcat-cpt-btn,.hcat-mondevis-a .hcat-mondevis-mod{grid-column:1/-1;width:100%;margin:0;}
.hcat-mondevis-a .hcat-cpt-btn2{margin:0;}
.hcat-mondevis-out{margin:10px 0 0;font-size:.85rem;color:#6b6b66;min-height:1em;}
.hcat-accord-suite{display:grid;gap:8px;margin-top:14px;}
/* 22/09/2026, repasse : en mode devis, la pastille du bas montrait les pieces seules
   (46,04) sous une carte qui annoncait le devis livraison comprise (54,29). Deux totaux
   sur un meme ecran. La carte la remplace ; elle revient sur « Modifier la selection ». */
.hcat.hcat-mode-devis ~ .hcat-bar{display:none!important;}
.hcat-accord-suite .hcat-cpt-btn,.hcat-accord-suite .hcat-cpt-btn2{width:100%;margin:0;}
@media (max-width:600px){.hcat-mondevis{margin:14px 0 6px;padding:18px 16px;}.hcat-mondevis-a{grid-template-columns:1fr;}}
