[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"footer-root-categories-fr-FR":3,"tool-content-prime-anciennete-pharmacie-d-officine-fr":83,"footer-cities-fr":146},[4,14,22,30,38,45,53,60,67,75],{"seo_content":5,"id":8,"name":9,"slug":10,"parentId":7,"lang":11,"_count":12},[6],{"page_slug":7},null,"cmkzhl7xm00dbulbc93h4qog5","Juridique","avocats","fr-FR",{"experts":13},8,{"seo_content":15,"id":17,"name":18,"slug":19,"parentId":7,"lang":11,"_count":20},[16],{"page_slug":7},"cmkzhl84700djulbcbv6pzu9e","Informatique","informaticiens",{"experts":21},3,{"seo_content":23,"id":25,"name":26,"slug":27,"parentId":7,"lang":11,"_count":28},[24],{"page_slug":7},"cmkzhlaos00gnulbc07i9jrco","Amélioration de la Maison","artisans",{"experts":29},4,{"seo_content":31,"id":33,"name":34,"slug":35,"parentId":7,"lang":11,"_count":36},[32],{"page_slug":7},"cmkzhlaqg00gpulbcx38bwoc2","Général","divers-generalistes",{"experts":37},0,{"seo_content":39,"id":41,"name":42,"slug":43,"parentId":7,"lang":11,"_count":44},[40],{"page_slug":7},"cmkzhlbvq00i3ulbcutdbcz50","Électronique Grand Public","techniciens-electronique",{"experts":21},{"seo_content":46,"id":48,"name":49,"slug":50,"parentId":7,"lang":11,"_count":51},[47],{"page_slug":7},"cmkzhlcaw00ilulbc38pxoogr","Santé","medecins",{"experts":52},5,{"seo_content":54,"id":56,"name":57,"slug":58,"parentId":7,"lang":11,"_count":59},[55],{"page_slug":7},"cmkzhlcmi00izulbcxva1m47f","Gestion de Patrimoine","conseillers-patrimoniaux",{"experts":21},{"seo_content":61,"id":63,"name":64,"slug":65,"parentId":7,"lang":11,"_count":66},[62],{"page_slug":7},"cmkzhldcv00jvulbcmcd5a7mk","Animaux et Vétérinaires","veterinaires",{"experts":21},{"seo_content":68,"id":70,"name":71,"slug":72,"parentId":7,"lang":11,"_count":73},[69],{"page_slug":7},"cmkzhldrr00kdulbchxfo67eg","Mécanique et Réparation","mecaniciens",{"experts":74},1,{"seo_content":76,"id":78,"name":79,"slug":80,"parentId":7,"lang":11,"_count":81},[77],{"page_slug":7},"cmkzhl9l300fbulbcv3i8q8p3","Aide aux Devoirs","professeurs-particuliers",{"experts":82},6,{"slug":84,"title":85,"page_title":86,"description":87,"content_md":88,"local_slug":84,"json_ld":89,"faq":109,"tool_html":140,"source":141,"category":142,"audience":143,"publish_mode":144,"hero_image":145,"hero_image_alt":85},"prime-anciennete-pharmacie-d-officine","Prime d'ancienneté pharmacie d'officine — calculateur","Prime ancienneté CCN Pharmacie d'officine IDCC 1996 | Expert Zoom","Calculez votre prime d'ancienneté obligatoire selon l'art. 11 de la CCN pharmacie d'officine (IDCC 1996) : de 3 % à 3 ans jusqu'à 12 % à 12 ans, proratisée à vos heures travaillées.","La CCN de la pharmacie d'officine (IDCC 1996) impose une prime d'ancienneté obligatoire dès 3 ans de présence dans la même officine, une obligation absente du code du travail. Ce calculateur applique l'article 11 de la CCN pour calculer votre prime mensuelle exacte (3 % à 6 % à 9 % à 12 %), selon votre salaire minimum conventionnel et votre temps de travail.",[90],{"name":91,"@type":92,"about":93,"author":97,"@context":100,"isPartOf":101,"inLanguage":104,"description":105,"operatingSystem":106,"applicationCategory":107,"isAccessibleForFree":108},"Calculateur prime d'ancienneté — Pharmacie d'officine IDCC 1996","WebApplication",{"name":94,"@type":95,"identifier":96},"Convention collective de la pharmacie d'officine","Thing","IDCC 1996",{"name":98,"@type":99},"Expert-Zoom","Organization","https:\u002F\u002Fschema.org",{"url":102,"@type":103},"\u002Ffr\u002Fmagazine\u002Fjuridique\u002Fles-conventions-collectives-en-france","Article","fr","Calculez votre prime d'ancienneté obligatoire selon l'article 11 de la CCN de la pharmacie d'officine (IDCC 1996) : 3 % à 3 ans, 6 % à 6 ans, 9 % à 9 ans, 12 % à 12 ans, proratisée aux heures travaillées.","All","FinanceApplication",true,[110,113,116,119,122,125,128,131,134,137],{"a":111,"q":112},"L'article 11 de la CCN de la pharmacie d'officine (IDCC 1996) prévoit une prime d'ancienneté obligatoire calculée en pourcentage du salaire minimum conventionnel : 3 % après 3 ans dans la même officine, 6 % après 6 ans, 9 % après 9 ans et 12 % après 12 ans. Elle est proratisée aux heures travaillées et doit figurer sur une ligne distincte du bulletin de paie.","Quelle est la prime d'ancienneté dans la pharmacie d'officine ?",{"a":114,"q":115},"La prime d'ancienneté est calculée sur le salaire minimum conventionnel correspondant au coefficient du salarié (grille IDCC 1996), et non sur son salaire réel si celui-ci est supérieur au minimum. Elle est proratisée selon la durée hebdomadaire travaillée rapportée à 35 heures. Par exemple, à 28h\u002Fsemaine, la prime est de 80 % de la prime en temps plein.","Sur quelle base est calculée la prime d'ancienneté en pharmacie d'officine ?",{"a":117,"q":118},"La prime d'ancienneté est due à partir du 1er jour du mois anniversaire de la date d'embauche dans la même officine. Par exemple, un salarié embauché le 15 mars 2023 atteint 3 ans d'ancienneté en mars 2026 et touche la prime à partir du 1er mars 2026. Elle ne peut pas être versée de manière rétroactive au-delà des délais de prescription.","À partir de quel moment la prime d'ancienneté est-elle versée en pharmacie d'officine ?",{"a":120,"q":121},"Oui, la prime d'ancienneté de l'article 11 est obligatoire dans toutes les officines affiliées à la convention collective IDCC 1996, qui s'applique à l'ensemble du secteur de la pharmacie d'officine en France. Elle est d'ordre public conventionnel : aucun accord d'entreprise ne peut la supprimer.","La prime d'ancienneté est-elle obligatoire dans toutes les pharmacies d'officine ?",{"a":123,"q":124},"Non. La prime d'ancienneté ne peut pas être prise en compte pour vérifier que la rémunération atteint le SMIC. Le salaire de base doit être au moins égal au SMIC (ou au minimum conventionnel s'il est plus favorable), et la prime d'ancienneté s'y ajoute en sus. Un salarié au coefficient minimum doit donc toucher : salaire de base ≥ SMIC + prime d'ancienneté.","La prime d'ancienneté compte-t-elle dans le calcul du SMIC ?",{"a":126,"q":127},"Oui. La prime d'ancienneté est un élément de rémunération comme le salaire. Elle est intégralement soumise aux cotisations sociales patronales et salariales, à la CSG et à la CRDS, et est imposable à l'impôt sur le revenu. Elle apparaît sur le bulletin de paie sur une ligne distincte mais est totalement intégrée dans la rémunération brute.","La prime d'ancienneté est-elle soumise à cotisations sociales ?",{"a":129,"q":130},"Non. La prime d'ancienneté de la CCN pharmacie d'officine est calculée sur l'ancienneté dans la même officine. Un salarié qui quitte une pharmacie pour une autre repart à zéro pour le calcul de cette prime, même s'il reste dans le secteur pharmaceutique. Les années acquises dans une autre officine ne sont pas transférables pour ce calcul.","L'ancienneté dans une autre officine est-elle comptabilisée pour la prime ?",{"a":132,"q":133},"Oui. La prime d'ancienneté étant un élément de rémunération brute versé mensuellement, elle est incluse dans la base de calcul de l'indemnité de licenciement (1\u002F12 des 12 derniers mois ou 1\u002F3 des 3 derniers mois, primes comprises). Elle augmente donc mécaniquement le montant de l'indemnité de licenciement.","La prime d'ancienneté entre-t-elle dans le calcul de l'indemnité de licenciement ?",{"a":135,"q":136},"Oui, si son ancienneté dans la même officine atteint 3 ans. Les CDD successifs dans la même officine cumulent l'ancienneté. Cependant, une interruption de contrat entre deux CDD peut remettre en cause la continuité de l'ancienneté selon les circonstances. En pratique, la prime est plus souvent perçue par les salariés en CDI.","Un salarié en CDD bénéficie-t-il de la prime d'ancienneté en pharmacie d'officine ?",{"a":138,"q":139},"Le taux maximum est de 12 % dès 12 ans d'ancienneté dans la même officine. Pour un préparateur au coefficient 330 (niveau le plus élevé), le salaire minimum mensuel à 35h est d'environ 2 614 € bruts. La prime maximale serait donc de 2 614 × 12 % = 314 € par mois, soit environ 3 765 € bruts par an.","Quel est le montant annuel maximum de la prime d'ancienneté dans la pharmacie d'officine ?","\u003C!DOCTYPE html>\n\u003Chtml lang=\"fr\">\n\u003Chead>\n  \u003Cmeta charset=\"utf-8\">\n  \u003Cmeta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n  \u003Ctitle>Prime d'ancienneté — Pharmacie d'officine (IDCC 1996)\u003C\u002Ftitle>\n  \u003Cscript src=\"https:\u002F\u002Funpkg.com\u002Flucide@latest\u002Fdist\u002Fumd\u002Flucide.min.js\">\u003C\u002Fscript>\n  \u003Cstyle>\n    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n\n    :root {\n      --bg: #fafaf9;\n      --surface: #ffffff;\n      --border: #e7e5e4;\n      --accent: #2563eb;\n      --accent-light: #eff6ff;\n      --text: #1c1917;\n      --muted: #78716c;\n      --success-bg: #f0fdf4;\n      --success-border: #bbf7d0;\n      --success-text: #166534;\n      --info-bg: #eff6ff;\n      --info-border: #bfdbfe;\n      --info-text: #1e40af;\n      --radius: 0.75rem;\n      --radius-sm: 0.5rem;\n      --shadow: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.06);\n    }\n\n    body {\n      font-family: system-ui, -apple-system, sans-serif;\n      background: var(--bg);\n      color: var(--text);\n      font-size: 0.9375rem;\n      line-height: 1.6;\n    }\n\n    .tool-root {\n      max-width: 680px;\n      margin: 0 auto;\n      padding: 1.25rem 1rem 2rem;\n    }\n\n    .tool-header { margin-bottom: 1.25rem; }\n    .tool-header h1 { font-size: 1.25rem; font-weight: 700; color: var(--text); line-height: 1.3; }\n    .badge {\n      display: inline-flex;\n      align-items: center;\n      gap: 0.25rem;\n      margin-top: 0.375rem;\n      padding: 0.2rem 0.625rem;\n      background: var(--accent-light);\n      color: var(--accent);\n      border-radius: 2rem;\n      font-size: 0.75rem;\n      font-weight: 600;\n    }\n\n    .context-block {\n      background: var(--surface);\n      border: 1px solid var(--border);\n      border-radius: var(--radius);\n      padding: 1.125rem 1.25rem;\n      margin-bottom: 1.25rem;\n      box-shadow: var(--shadow);\n    }\n    .context-block h2 {\n      font-size: 0.9375rem;\n      font-weight: 700;\n      margin-bottom: 0.75rem;\n      display: flex;\n      align-items: center;\n      gap: 0.5rem;\n    }\n    .context-block h2 svg { width: 16px; height: 16px; color: var(--accent); }\n    .context-block p { font-size: 0.875rem; color: var(--muted); margin-bottom: 0.75rem; }\n    .context-block p:last-child { margin-bottom: 0; }\n    .context-block strong { color: var(--text); font-weight: 600; }\n\n    .callout {\n      display: flex;\n      gap: 0.75rem;\n      align-items: flex-start;\n      padding: 0.875rem 1rem;\n      border-radius: var(--radius-sm);\n      margin-bottom: 1.25rem;\n    }\n    .callout svg { width: 16px; height: 16px; flex-shrink: 0; margin-top: 2px; }\n    .callout p { font-size: 0.875rem; }\n    .callout.info { background: var(--info-bg); border: 1px solid var(--info-border); }\n    .callout.info svg { color: var(--accent); }\n    .callout.info p { color: var(--info-text); }\n\n    .card {\n      background: var(--surface);\n      border: 1px solid var(--border);\n      border-radius: var(--radius);\n      padding: 1.25rem;\n      box-shadow: var(--shadow);\n      margin-bottom: 1rem;\n    }\n    .card h3 {\n      font-size: 0.9375rem;\n      font-weight: 700;\n      margin-bottom: 1rem;\n      display: flex;\n      align-items: center;\n      gap: 0.5rem;\n    }\n    .card h3 svg { width: 16px; height: 16px; color: var(--accent); }\n\n    .field { margin-bottom: 1.125rem; }\n    .field:last-child { margin-bottom: 0; }\n    .field label {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      font-size: 0.875rem;\n      font-weight: 500;\n      margin-bottom: 0.5rem;\n    }\n    .field label span.val { font-weight: 600; color: var(--accent); font-variant-numeric: tabular-nums; }\n\n    input[type=\"range\"] {\n      -webkit-appearance: none;\n      width: 100%;\n      height: 5px;\n      border-radius: 3px;\n      background: var(--border);\n      outline: none;\n    }\n    input[type=\"range\"]::-webkit-slider-thumb {\n      -webkit-appearance: none;\n      width: 18px; height: 18px;\n      border-radius: 50%;\n      background: var(--accent);\n      cursor: pointer;\n      box-shadow: 0 0 0 2px white, 0 0 0 4px rgba(37,99,235,0.25);\n    }\n    input[type=\"range\"]::-moz-range-thumb {\n      width: 18px; height: 18px;\n      border-radius: 50%;\n      background: var(--accent);\n      cursor: pointer;\n      border: none;\n    }\n\n    \u002F* Timeline \u002F taux bar *\u002F\n    .taux-timeline {\n      display: flex;\n      gap: 0;\n      border-radius: var(--radius-sm);\n      overflow: hidden;\n      margin: 0.75rem 0;\n      font-size: 0.75rem;\n    }\n    .taux-segment {\n      flex: 1;\n      padding: 0.5rem 0.25rem;\n      text-align: center;\n      background: var(--bg);\n      border: 1px solid var(--border);\n      transition: background 0.2s, color 0.2s;\n      cursor: default;\n      font-weight: 500;\n    }\n    .taux-segment.active {\n      background: var(--accent);\n      color: white;\n      border-color: var(--accent);\n      font-weight: 700;\n    }\n    .taux-segment span { display: block; font-size: 0.6875rem; opacity: 0.8; margin-bottom: 0.125rem; }\n\n    .result-card {\n      background: var(--success-bg);\n      border: 1.5px solid var(--success-border);\n      border-radius: var(--radius);\n      padding: 1.5rem;\n      margin-top: 1.25rem;\n    }\n    .result-label {\n      font-size: 0.8125rem;\n      color: #15803d;\n      font-weight: 500;\n      margin-bottom: 0.5rem;\n      display: flex;\n      align-items: center;\n      gap: 0.375rem;\n    }\n    .result-label svg { width: 14px; height: 14px; }\n    .result-amount {\n      font-size: 2.25rem;\n      font-weight: 800;\n      color: var(--success-text);\n      font-variant-numeric: tabular-nums;\n      line-height: 1;\n    }\n    .result-sub { font-size: 0.8125rem; color: #16a34a; margin-top: 0.375rem; }\n\n    .result-detail {\n      margin-top: 1rem;\n      padding-top: 1rem;\n      border-top: 1px solid var(--success-border);\n    }\n    .result-detail .row {\n      display: flex;\n      justify-content: space-between;\n      font-size: 0.8125rem;\n      color: #15803d;\n      padding: 0.25rem 0;\n    }\n    .result-detail .row.total {\n      font-weight: 700;\n      padding-top: 0.5rem;\n      border-top: 1px solid #bbf7d0;\n      margin-top: 0.375rem;\n    }\n\n    \u002F* Scale bar *\u002F\n    .scale-bar { margin-top: 1rem; }\n    .scale-bar-label { font-size: 0.75rem; color: var(--muted); margin-bottom: 0.375rem; }\n    .scale-bar-track { height: 8px; background: var(--border); border-radius: 4px; overflow: hidden; }\n    .scale-bar-fill { height: 100%; background: var(--accent); border-radius: 4px; transition: width 0.3s; }\n\n    .grid-table {\n      width: 100%;\n      border-collapse: collapse;\n      font-size: 0.8125rem;\n    }\n    .grid-table th {\n      background: var(--accent-light);\n      color: var(--accent);\n      font-weight: 600;\n      padding: 0.5rem 0.75rem;\n      text-align: left;\n      border-bottom: 1px solid var(--info-border);\n    }\n    .grid-table td {\n      padding: 0.5rem 0.75rem;\n      border-bottom: 1px solid var(--border);\n      font-variant-numeric: tabular-nums;\n    }\n    .grid-table tr:last-child td { border-bottom: none; }\n    .grid-table tr.active-row td { background: var(--accent-light); color: var(--accent); font-weight: 600; }\n\n    .section-title {\n      font-size: 1rem;\n      font-weight: 700;\n      margin: 1.5rem 0 0.75rem;\n      color: var(--text);\n    }\n\n    .disclaimer {\n      font-size: 0.8rem;\n      color: var(--muted);\n      text-align: center;\n      margin-top: 1.5rem;\n      padding-top: 1rem;\n      border-top: 1px solid var(--border);\n      line-height: 1.6;\n    }\n    .disclaimer a { color: var(--accent); text-decoration: none; }\n    .disclaimer a:hover { text-decoration: underline; }\n  \u003C\u002Fstyle>\n\u003C\u002Fhead>\n\u003Cbody>\n\n\u003C!-- CCN IDCC 1996 — prime d'ancienneté — standalone\n     Art. 11 : 3% dès 3 ans, 6% dès 6 ans, 9% dès 9 ans, 12% dès 12 ans\n     Calculée sur salaire minimum du coefficient (pas sur salaire réel)\n     Proratisée aux heures effectives\n     Ligne distincte sur le bulletin de paie\n     Versée à partir du 1er jour du mois anniversaire d'embauche -->\n\n\u003Cmain class=\"tool-root\">\n\n  \u003Cdiv class=\"tool-header\">\n    \u003Ch1>Prime d'ancienneté — Pharmacie d'officine\u003C\u002Fh1>\n    \u003Cdiv class=\"badge\">\u003Ci data-lucide=\"star\">\u003C\u002Fi> CCN IDCC 1996 — Art. 11\u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Context -->\n  \u003Cdiv class=\"context-block\">\n    \u003Ch2>\u003Ci data-lucide=\"book-open\">\u003C\u002Fi> Ce que prévoit la CCN (art. 11)\u003C\u002Fh2>\n    \u003Cp>\n      La convention collective nationale de la pharmacie d'officine (IDCC 1996) institue une \u003Cstrong>prime d'ancienneté obligatoire\u003C\u002Fstrong> pour tous les salariés, absente du code du travail qui n'en prévoit aucune. Elle récompense la fidélité à une même officine et progresse par paliers tous les 3 ans.\n    \u003C\u002Fp>\n    \u003Cp>\n      La prime est calculée sur le \u003Cstrong>salaire minimum conventionnel correspondant au coefficient du salarié\u003C\u002Fstrong>, et non sur son salaire réel lorsque celui-ci est supérieur au minimum. Elle est \u003Cstrong>proratisée\u003C\u002Fstrong> selon la durée hebdomadaire travaillée et doit apparaître sur une \u003Cstrong>ligne distincte\u003C\u002Fstrong> du bulletin de salaire.\n    \u003C\u002Fp>\n    \u003Cp>\n      Elle est due à partir du \u003Cstrong>1er jour du mois anniversaire\u003C\u002Fstrong> de la date d'embauche. L'ancienneté prise en compte est celle acquise dans la \u003Cstrong>même officine\u003C\u002Fstrong> — les années dans une autre pharmacie ne comptent pas.\n    \u003C\u002Fp>\n  \u003C\u002Fdiv>\n\n  \u003Cdiv class=\"callout info\">\n    \u003Ci data-lucide=\"info\">\u003C\u002Fi>\n    \u003Cp>\u003Cstrong>Rappel :\u003C\u002Fstrong> La prime d'ancienneté est \u003Cstrong>exclue\u003C\u002Fstrong> des heures supplémentaires majorées et ne doit pas être incluse dans le salaire de base. Elle figure séparément sur le bulletin de paie.\u003C\u002Fp>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Calculator -->\n  \u003Cdiv class=\"card\">\n    \u003Ch3>\u003Ci data-lucide=\"calculator\">\u003C\u002Fi> Calculateur de prime d'ancienneté\u003C\u002Fh3>\n\n    \u003Cdiv class=\"field\">\n      \u003Clabel>\n        Salaire minimum conventionnel mensuel (35h)\n        \u003Cspan class=\"val\" id=\"sal-val\">2 000 €\u003C\u002Fspan>\n      \u003C\u002Flabel>\n      \u003Cinput type=\"range\" id=\"sal\" min=\"1500\" max=\"5000\" step=\"25\" value=\"2000\">\n      \u003Cp style=\"font-size:0.75rem;color:var(--muted);margin-top:0.375rem;\">\n        Utilisez le salaire minimum de votre coefficient (grille IDCC 1996, valeur du point 5,215 €), même si votre salaire réel est plus élevé.\n      \u003C\u002Fp>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"field\">\n      \u003Clabel>\n        Ancienneté dans la même officine (années)\n        \u003Cspan class=\"val\" id=\"anc-val\">5 ans\u003C\u002Fspan>\n      \u003C\u002Flabel>\n      \u003Cinput type=\"range\" id=\"anc\" min=\"0\" max=\"30\" step=\"1\" value=\"5\">\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"field\">\n      \u003Clabel>\n        Durée hebdomadaire travaillée\n        \u003Cspan class=\"val\" id=\"hh-val\">35 h\u003C\u002Fspan>\n      \u003C\u002Flabel>\n      \u003Cinput type=\"range\" id=\"hh\" min=\"10\" max=\"48\" step=\"0.5\" value=\"35\">\n    \u003C\u002Fdiv>\n\n    \u003C!-- Taux timeline -->\n    \u003Cdiv style=\"margin-top:0.5rem;\">\n      \u003Cp style=\"font-size:0.8125rem;font-weight:500;margin-bottom:0.5rem;color:var(--text);\">Palier actuel\u003C\u002Fp>\n      \u003Cdiv class=\"taux-timeline\" id=\"taux-timeline\">\n        \u003Cdiv class=\"taux-segment\" data-min=\"0\" data-max=\"2\">\n          \u003Cspan>0 – 2 ans\u003C\u002Fspan>0 %\n        \u003C\u002Fdiv>\n        \u003Cdiv class=\"taux-segment\" data-min=\"3\" data-max=\"5\">\n          \u003Cspan>3 – 5 ans\u003C\u002Fspan>3 %\n        \u003C\u002Fdiv>\n        \u003Cdiv class=\"taux-segment\" data-min=\"6\" data-max=\"8\">\n          \u003Cspan>6 – 8 ans\u003C\u002Fspan>6 %\n        \u003C\u002Fdiv>\n        \u003Cdiv class=\"taux-segment\" data-min=\"9\" data-max=\"11\">\n          \u003Cspan>9 – 11 ans\u003C\u002Fspan>9 %\n        \u003C\u002Fdiv>\n        \u003Cdiv class=\"taux-segment\" data-min=\"12\" data-max=\"99\">\n          \u003Cspan>12 ans +\u003C\u002Fspan>12 %\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003Cdiv class=\"result-card\">\n    \u003Cdiv class=\"result-label\">\u003Ci data-lucide=\"trending-up\">\u003C\u002Fi> Prime d'ancienneté mensuelle brute\u003C\u002Fdiv>\n    \u003Cdiv class=\"result-amount\" id=\"result-amount\">—\u003C\u002Fdiv>\n    \u003Cdiv class=\"result-sub\" id=\"result-sub\">\u003C\u002Fdiv>\n    \u003Cdiv class=\"result-detail\" id=\"result-detail\">\n      \u003Cdiv class=\"row\">\u003Cspan id=\"det-base-label\">\u003C\u002Fspan>\u003Cspan id=\"det-base-val\">\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003Cdiv class=\"row\">\u003Cspan id=\"det-taux-label\">\u003C\u002Fspan>\u003Cspan id=\"det-taux-val\">\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003Cdiv class=\"row\">\u003Cspan id=\"det-proto-label\" style=\"display:none;\">\u003C\u002Fspan>\u003Cspan id=\"det-proto-val\">\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003Cdiv class=\"row total\">\u003Cspan>Prime mensuelle brute\u003C\u002Fspan>\u003Cspan id=\"det-total\">\u003C\u002Fspan>\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"scale-bar\">\n      \u003Cdiv class=\"scale-bar-label\" id=\"scale-label\">\u003C\u002Fdiv>\n      \u003Cdiv class=\"scale-bar-track\">\u003Cdiv class=\"scale-bar-fill\" id=\"scale-fill\" style=\"width:0%\">\u003C\u002Fdiv>\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Annual projection table -->\n  \u003Cp class=\"section-title\">Projection annuelle par palier\u003C\u002Fp>\n\n  \u003Cdiv style=\"background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);\">\n    \u003Ctable class=\"grid-table\" id=\"proj-table\">\n      \u003Cthead>\n        \u003Ctr>\n          \u003Cth>Ancienneté\u003C\u002Fth>\n          \u003Cth>Taux\u003C\u002Fth>\n          \u003Cth>Prime mensuelle\u003C\u002Fth>\n          \u003Cth>Prime annuelle\u003C\u002Fth>\n        \u003C\u002Ftr>\n      \u003C\u002Fthead>\n      \u003Ctbody>\u003C\u002Ftbody>\n    \u003C\u002Ftable>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Rules summary -->\n  \u003Cp class=\"section-title\">Règles essentielles\u003C\u002Fp>\n\n  \u003Cdiv class=\"card\">\n    \u003Cdiv style=\"display:flex;flex-direction:column;gap:1rem;\">\n\n      \u003Cdetails style=\"border-bottom:1px solid var(--border);padding-bottom:1rem;\">\n        \u003Csummary style=\"cursor:pointer;font-size:0.875rem;font-weight:600;list-style:none;display:flex;align-items:center;gap:0.5rem;\">\n          \u003Ci data-lucide=\"chevron-right\" style=\"width:14px;height:14px;color:var(--accent);\">\u003C\u002Fi>\n          Sur quelle base est calculée la prime ?\n        \u003C\u002Fsummary>\n        \u003Cp style=\"font-size:0.875rem;color:var(--muted);margin-top:0.625rem;padding-left:1.25rem;\">\n          La prime est calculée sur le \u003Cstrong>salaire minimum conventionnel correspondant au coefficient\u003C\u002Fstrong> du salarié. Si le salarié est payé au-dessus du minimum, la base reste le minimum. Elle est proratisée aux heures réellement travaillées (par exemple, 28 h\u002F35 h = 80 % de la prime plein temps).\n        \u003C\u002Fp>\n      \u003C\u002Fdetails>\n\n      \u003Cdetails style=\"border-bottom:1px solid var(--border);padding-bottom:1rem;\">\n        \u003Csummary style=\"cursor:pointer;font-size:0.875rem;font-weight:600;list-style:none;display:flex;align-items:center;gap:0.5rem;\">\n          \u003Ci data-lucide=\"chevron-right\" style=\"width:14px;height:14px;color:var(--accent);\">\u003C\u002Fi>\n          À partir de quand la prime est-elle versée ?\n        \u003C\u002Fsummary>\n        \u003Cp style=\"font-size:0.875rem;color:var(--muted);margin-top:0.625rem;padding-left:1.25rem;\">\n          La prime est due à partir du \u003Cstrong>1er jour du mois anniversaire\u003C\u002Fstrong> de l'embauche. Par exemple, un salarié embauché le 15 mars 2021 atteint 3 ans d'ancienneté en mars 2024 et touche la prime à partir du 1er mars 2024.\n        \u003C\u002Fp>\n      \u003C\u002Fdetails>\n\n      \u003Cdetails style=\"border-bottom:1px solid var(--border);padding-bottom:1rem;\">\n        \u003Csummary style=\"cursor:pointer;font-size:0.875rem;font-weight:600;list-style:none;display:flex;align-items:center;gap:0.5rem;\">\n          \u003Ci data-lucide=\"chevron-right\" style=\"width:14px;height:14px;color:var(--accent);\">\u003C\u002Fi>\n          La prime est-elle obligatoire si je suis en CDD ?\n        \u003C\u002Fsummary>\n        \u003Cp style=\"font-size:0.875rem;color:var(--muted);margin-top:0.625rem;padding-left:1.25rem;\">\n          Oui, la prime d'ancienneté s'applique à tous les contrats (CDI et CDD) dès lors que l'ancienneté dans la même officine atteint 3 ans. Un CDD renouvelé dans la même pharmacie cumule l'ancienneté pour le calcul.\n        \u003C\u002Fp>\n      \u003C\u002Fdetails>\n\n      \u003Cdetails style=\"border-bottom:1px solid var(--border);padding-bottom:1rem;\">\n        \u003Csummary style=\"cursor:pointer;font-size:0.875rem;font-weight:600;list-style:none;display:flex;align-items:center;gap:0.5rem;\">\n          \u003Ci data-lucide=\"chevron-right\" style=\"width:14px;height:14px;color:var(--accent);\">\u003C\u002Fi>\n          Est-elle soumise à cotisations sociales ?\n        \u003C\u002Fsummary>\n        \u003Cp style=\"font-size:0.875rem;color:var(--muted);margin-top:0.625rem;padding-left:1.25rem;\">\n          Oui, la prime d'ancienneté est un élément de salaire soumis à cotisations sociales (patronales et salariales) et à l'impôt sur le revenu au même titre que le salaire de base. Elle apparaît sur le bulletin de paie comme ligne séparée.\n        \u003C\u002Fp>\n      \u003C\u002Fdetails>\n\n      \u003Cdetails>\n        \u003Csummary style=\"cursor:pointer;font-size:0.875rem;font-weight:600;list-style:none;display:flex;align-items:center;gap:0.5rem;\">\n          \u003Ci data-lucide=\"chevron-right\" style=\"width:14px;height:14px;color:var(--accent);\">\u003C\u002Fi>\n          L'ancienneté dans une autre officine est-elle prise en compte ?\n        \u003C\u002Fsummary>\n        \u003Cp style=\"font-size:0.875rem;color:var(--muted);margin-top:0.625rem;padding-left:1.25rem;\">\n          Non. La prime d'ancienneté de l'article 11 de la CCN pharmacie d'officine est calculée sur l'ancienneté dans \u003Cstrong>la même officine\u003C\u002Fstrong>. Un salarié qui change d'officine repart à zéro pour ce calcul, même s'il reste dans la pharmacie d'officine comme secteur professionnel.\n        \u003C\u002Fp>\n      \u003C\u002Fdetails>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003Cp class=\"disclaimer\">\n    Calcul indicatif basé sur l'article 11 de la CCN de la pharmacie d'officine, IDCC 1996.\u003Cbr>\n    Source : \u003Ca href=\"https:\u002F\u002Fwww.legifrance.gouv.fr\u002Fconv_coll\u002Fid\u002FKALICONT000005635528\u002F\" target=\"_blank\" rel=\"noopener\">Legifrance — KALICONT000005635528\u003C\u002Fa>.\n    Pour toute validation légale\n  \u003C\u002Fp>\n\n\u003C\u002Fmain>\n\n\u003Cscript>\nconst fmtC = new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR', minimumFractionDigits: 2 });\nconst fmtPct = v => (v * 100).toFixed(0) + ' %';\n\nconst PALIERS = [\n  { min: 0, max: 2, taux: 0, label: '0 – 2 ans' },\n  { min: 3, max: 5, taux: 0.03, label: '3 – 5 ans' },\n  { min: 6, max: 8, taux: 0.06, label: '6 – 8 ans' },\n  { min: 9, max: 11, taux: 0.09, label: '9 – 11 ans' },\n  { min: 12, max: 99, taux: 0.12, label: '12 ans +' },\n];\n\nconst state = { sal: 2000, anc: 5, hh: 35 };\n\nfunction getTaux(anc) {\n  const p = PALIERS.find(p => anc >= p.min && anc \u003C= p.max);\n  return p ? p.taux : 0;\n}\nfunction getPalierIdx(anc) {\n  return PALIERS.findIndex(p => anc >= p.min && anc \u003C= p.max);\n}\n\nfunction render() {\n  const { sal, anc, hh } = state;\n  const taux = getTaux(anc);\n  const baseProrated = sal * (hh \u002F 35);\n  const prime = baseProrated * taux;\n  const palierIdx = getPalierIdx(anc);\n\n  \u002F\u002F Update display values\n  document.getElementById('sal-val').textContent = fmtC.format(sal);\n  document.getElementById('anc-val').textContent = anc + ' an' + (anc > 1 ? 's' : '');\n  document.getElementById('hh-val').textContent = hh + ' h';\n\n  \u002F\u002F Result\n  document.getElementById('result-amount').textContent = fmtC.format(prime);\n  document.getElementById('result-sub').textContent = taux === 0\n    ? 'Aucune prime (ancienneté \u003C 3 ans dans la même officine)'\n    : `Taux ${fmtPct(taux)} × salaire min. ${hh !== 35 ? 'proratisé à ' + hh + 'h' : 'base 35h'}`;\n\n  \u002F\u002F Detail\n  document.getElementById('det-base-label').textContent = `Salaire min. base 35h`;\n  document.getElementById('det-base-val').textContent = fmtC.format(sal);\n  document.getElementById('det-taux-label').textContent = `Taux prime ancienneté`;\n  document.getElementById('det-taux-val').textContent = fmtPct(taux);\n\n  const protoRow = document.getElementById('det-proto-label');\n  const protoVal = document.getElementById('det-proto-val');\n  if (hh !== 35) {\n    protoRow.style.display = '';\n    protoRow.textContent = `Proratisation (${hh}h \u002F 35h)`;\n    protoVal.textContent = fmtC.format(baseProrated);\n  } else {\n    protoRow.style.display = 'none';\n  }\n  document.getElementById('det-total').textContent = fmtC.format(prime);\n\n  \u002F\u002F Scale bar: 0-12% → 0-100%\n  const pct = Math.round((taux \u002F 0.12) * 100);\n  document.getElementById('scale-fill').style.width = pct + '%';\n  document.getElementById('scale-label').textContent = taux > 0\n    ? `Progression : taux ${fmtPct(taux)} (${pct} % du maximum 12 %)`\n    : 'Aucune prime — palier 3 % démarrage à 3 ans';\n\n  \u002F\u002F Timeline highlight\n  document.querySelectorAll('.taux-segment').forEach((seg, i) => {\n    seg.classList.toggle('active', i === palierIdx);\n  });\n\n  \u002F\u002F Projection table\n  const tbody = document.querySelector('#proj-table tbody');\n  tbody.innerHTML = '';\n  PALIERS.forEach((p, i) => {\n    const base = sal * (hh \u002F 35);\n    const pm = base * p.taux;\n    const pa = pm * 12;\n    const tr = document.createElement('tr');\n    if (i === palierIdx) tr.className = 'active-row';\n    tr.innerHTML = `\n      \u003Ctd>${p.label}\u003C\u002Ftd>\n      \u003Ctd>${fmtPct(p.taux)}\u003C\u002Ftd>\n      \u003Ctd>${fmtC.format(pm)}\u003C\u002Ftd>\n      \u003Ctd>${fmtC.format(pa)}\u003C\u002Ftd>\n    `;\n    tbody.appendChild(tr);\n  });\n}\n\ndocument.getElementById('sal').addEventListener('input', e => { state.sal = +e.target.value; render(); });\ndocument.getElementById('anc').addEventListener('input', e => { state.anc = +e.target.value; render(); });\ndocument.getElementById('hh').addEventListener('input', e => { state.hh = +e.target.value; render(); });\n\nrender();\n\nwindow.addEventListener('load', () => {\n  lucide.createIcons();\n\n  const ro = new ResizeObserver(() => {\n    const h = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);\n    parent.postMessage({ type: 'resize', height: h }, '*');\n  });\n  ro.observe(document.documentElement);\n\n  requestAnimationFrame(() => {\n    const h = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);\n    parent.postMessage({ type: 'resize', height: h }, '*');\n  });\n});\n\u003C\u002Fscript>\n\u003C\u002Fbody>\n\u003C\u002Fhtml>\n","generated","juridique","consumer","both","https:\u002F\u002Fpub-bdebbd2dad294475a2da0eb657815b6b.r2.dev\u002Ftools\u002Fprime-anciennete-pharmacie-d-officine-00296d9f3d.webp",[]]