[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"footer-root-categories-fr-FR":3,"tool-content-ccn-cadres-et-agents-de-maitrise-de-l-edition-de-musique-fr":83,"footer-cities-fr":140},[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":134,"source":135,"category":136,"audience":137,"publish_mode":138,"hero_image":139,"hero_image_alt":85},"ccn-cadres-et-agents-de-maitrise-de-l-edition-de-musique","CCN des cadres et agents de maîtrise de l'édition de musique — calculateur complet","Calculateur CCN Édition de musique Cadres & AM IDCC 1016 | Expert Zoom","Outil interactif couvrant indemnité de licenciement, préavis, congés d'ancienneté, 13e mois, prime d'ancienneté et grille salariale de la CCN des cadres et agents de maîtrise de l'édition de musique (IDCC 1016).","Ce calculateur couvre les 5 déviations majeures de la CCN édition de musique (IDCC 1016) par rapport au code du travail : indemnité de licenciement progressive (1 mois\u002Fan → 0,8 → 0,6, plafond 18 mois), préavis cadres jusqu'à 3 mois, congés d'ancienneté (+4 jours après 15 ans), 13e mois obligatoire dès 1 an de présence, et grille salariale conventionnelle revalorisée +5 % en mars 2025.",[90],{"name":91,"@type":92,"about":93,"author":97,"@context":100,"isPartOf":101,"inLanguage":104,"description":105,"operatingSystem":106,"applicationCategory":107,"isAccessibleForFree":108},"Calculateur CCN des cadres et agents de maîtrise de l'édition de musique — IDCC 1016","WebApplication",{"name":94,"@type":95,"identifier":96},"Convention collective des cadres et agents de maîtrise de l'édition de musique","Thing","IDCC 1016",{"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","Outil interactif couvrant indemnité de licenciement, préavis, congés d'ancienneté, 13e mois, prime d'ancienneté et grille salariale de la convention collective des cadres et agents de maîtrise de l'édition de musique (IDCC 1016).","All","FinanceApplication",true,[110,113,116,119,122,125,128,131],{"a":111,"q":112},"La CCN édition de musique prévoit une formule progressive plus favorable que la loi : 1 mois de salaire par année pour les 5 premières années, 0,8 mois par année de 6 à 10 ans, et 0,6 mois par année au-delà de 10 ans, plafonnée à 18 mois de salaire brut. C'est nettement supérieur au barème légal (¼ puis ⅓ de mois par année).","Comment est calculée l'indemnité de licenciement dans la convention collective de l'édition de musique (IDCC 1016) ?",{"a":114,"q":115},"Pour un cadre en cas de licenciement, le préavis est de 1 mois (moins de 2 ans d'ancienneté), 2 mois (de 2 à 10 ans) ou 3 mois (plus de 10 ans). Pour un agent de maîtrise : 15 jours (moins de 6 mois), 1 mois (6 mois à 2 ans) ou 2 mois (plus de 2 ans).","Quelle est la durée du préavis pour un cadre relevant de l'IDCC 1016 ?",{"a":117,"q":118},"Oui. En plus des 30 jours ouvrables légaux, la CCN accorde des congés d'ancienneté : +1 jour après 5 ans de présence, +2 jours après 10 ans et +4 jours après 15 ans, soit jusqu'à 34 jours ouvrables par an.","La convention collective édition de musique prévoit-elle des jours de congés supplémentaires ?",{"a":120,"q":121},"Oui. La CCN impose le versement d'un 13e mois pour tout salarié ayant au moins 1 an de présence dans l'entreprise. Il est versé en une ou deux fois, sur la base du dernier salaire mensuel brut.","Le 13e mois est-il obligatoire dans la convention collective de l'édition de musique ?",{"a":123,"q":124},"La convention collective prévoit une prime d'ancienneté de 3 % du salaire mensuel (base annuelle) à partir de 3 ans de présence dans l'entreprise.","Quelle est la prime d'ancienneté prévue par la CCN édition de musique (IDCC 1016) ?",{"a":126,"q":127},"La CCN fixe une grille salariale par coefficient hiérarchique. Suite à l'accord NAO du 1er mars 2025 (+5 %), les minima vont d'environ 2 250 € bruts\u002Fmois (coefficient 250, AM) à 5 750 € bruts\u002Fmois (coefficient 600, cadre supérieur). Les cadres à partir du coefficient 340 sont éligibles au forfait jours (217 jours\u002Fan).","Quels sont les salaires minimum dans la convention collective de l'édition de musique ?",{"a":129,"q":130},"Le forfait annuel en jours s'applique aux cadres disposant d'une autonomie dans l'organisation de leur travail, à partir du coefficient 340. Il est fixé à 217 jours par an (hors jours fériés et congés). Ces cadres ne sont pas soumis au décompte horaire des heures supplémentaires.","Qu'est-ce que le forfait jours dans la convention collective de l'édition de musique ?",{"a":132,"q":133},"L'IDCC (Identifiant de convention collective) est 1016. La convention est consultable sur Légifrance sous la référence KALICONT000005635947.","Quel est l'IDCC de la convention collective des cadres et agents de maîtrise de l'édition de musique ?","\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>Calculateur CCN Édition de musique — Cadres et agents de maîtrise (IDCC 1016)\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      --border-light: #f5f5f4;\n      --text: #1c1917;\n      --text-muted: #78716c;\n      --accent: #2563eb;\n      --accent-bg: #eff6ff;\n      --accent-border: #bfdbfe;\n      --success: #16a34a;\n      --success-bg: #f0fdf4;\n      --radius: 0.75rem;\n      --radius-sm: 0.5rem;\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: 760px;\n      margin: 0 auto;\n      padding: 1.25rem 1rem 2rem;\n    }\n\n    \u002F* Header *\u002F\n    .tool-header {\n      margin-bottom: 1.25rem;\n    }\n    .tool-header h1 {\n      font-size: 1.15rem;\n      font-weight: 700;\n      color: var(--text);\n      line-height: 1.3;\n    }\n    .tool-header .idcc-badge {\n      display: inline-flex;\n      align-items: center;\n      gap: 0.3rem;\n      background: var(--accent-bg);\n      border: 1px solid var(--accent-border);\n      color: var(--accent);\n      font-size: 0.78rem;\n      font-weight: 600;\n      padding: 0.2rem 0.55rem;\n      border-radius: 9999px;\n      margin-top: 0.4rem;\n    }\n\n    \u002F* Tabs *\u002F\n    .tab-bar {\n      display: flex;\n      gap: 0.25rem;\n      border-bottom: 2px solid var(--border);\n      margin-bottom: 1.25rem;\n      overflow-x: auto;\n      -webkit-overflow-scrolling: touch;\n      scrollbar-width: none;\n    }\n    .tab-bar::-webkit-scrollbar { display: none; }\n    .tab-btn {\n      background: none;\n      border: none;\n      padding: 0.55rem 0.85rem;\n      font-size: 0.85rem;\n      font-weight: 500;\n      color: var(--text-muted);\n      cursor: pointer;\n      white-space: nowrap;\n      border-bottom: 2px solid transparent;\n      margin-bottom: -2px;\n      border-radius: var(--radius-sm) var(--radius-sm) 0 0;\n      transition: color 0.15s, border-color 0.15s;\n      display: flex;\n      align-items: center;\n      gap: 0.3rem;\n    }\n    .tab-btn:hover { color: var(--accent); }\n    .tab-btn.active {\n      color: var(--accent);\n      border-bottom-color: var(--accent);\n      background: var(--accent-bg);\n    }\n\n    \u002F* Panel *\u002F\n    .panel { display: none; }\n    .panel.active { display: block; }\n\n    \u002F* Rule callout *\u002F\n    .rule-callout {\n      background: var(--accent-bg);\n      border: 1px solid var(--accent-border);\n      border-radius: var(--radius-sm);\n      padding: 0.75rem 1rem;\n      margin-bottom: 1.25rem;\n      display: flex;\n      gap: 0.6rem;\n      align-items: flex-start;\n      font-size: 0.85rem;\n      color: #1e40af;\n    }\n    .rule-callout svg { flex-shrink: 0; margin-top: 0.1rem; }\n\n    \u002F* Form groups *\u002F\n    .form-grid {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 1rem;\n      margin-bottom: 1rem;\n    }\n    @media (max-width: 520px) { .form-grid { grid-template-columns: 1fr; } }\n    .form-full { grid-column: 1 \u002F -1; }\n\n    .field label {\n      display: block;\n      font-size: 0.8rem;\n      font-weight: 600;\n      color: var(--text-muted);\n      margin-bottom: 0.3rem;\n      text-transform: uppercase;\n      letter-spacing: 0.04em;\n    }\n\n    .slider-wrap {\n      display: flex;\n      align-items: center;\n      gap: 0.6rem;\n    }\n    .slider-wrap input[type=range] {\n      flex: 1;\n      height: 4px;\n      accent-color: var(--accent);\n    }\n    .slider-val {\n      font-size: 0.875rem;\n      font-weight: 600;\n      color: var(--text);\n      min-width: 3.5rem;\n      text-align: right;\n      font-variant-numeric: tabular-nums;\n    }\n\n    select, input[type=number] {\n      width: 100%;\n      padding: 0.45rem 0.65rem;\n      border: 1px solid var(--border);\n      border-radius: var(--radius-sm);\n      font-size: 0.875rem;\n      color: var(--text);\n      background: var(--surface);\n      appearance: none;\n      -webkit-appearance: none;\n    }\n    select {\n      background-image: url(\"data:image\u002Fsvg+xml,%3Csvg xmlns='http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2378716c' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C\u002Fpolyline%3E%3C\u002Fsvg%3E\");\n      background-repeat: no-repeat;\n      background-position: right 0.6rem center;\n      padding-right: 2rem;\n    }\n\n    \u002F* Pills *\u002F\n    .pills {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 0.4rem;\n    }\n    .pill {\n      padding: 0.3rem 0.75rem;\n      border: 1px solid var(--border);\n      border-radius: 9999px;\n      font-size: 0.8rem;\n      font-weight: 500;\n      cursor: pointer;\n      background: var(--surface);\n      color: var(--text-muted);\n      transition: all 0.15s;\n      user-select: none;\n    }\n    .pill.active {\n      background: var(--accent);\n      border-color: var(--accent);\n      color: #fff;\n    }\n\n    \u002F* Result card *\u002F\n    .result-card {\n      background: var(--success-bg);\n      border: 1px solid #bbf7d0;\n      border-radius: var(--radius);\n      padding: 1rem 1.25rem;\n      margin-top: 1.25rem;\n    }\n    .result-label {\n      font-size: 0.78rem;\n      font-weight: 600;\n      text-transform: uppercase;\n      letter-spacing: 0.05em;\n      color: var(--success);\n      margin-bottom: 0.25rem;\n    }\n    .result-amount {\n      font-size: 1.75rem;\n      font-weight: 700;\n      color: var(--success);\n      font-variant-numeric: tabular-nums;\n      line-height: 1.2;\n    }\n    .result-sub {\n      font-size: 0.82rem;\n      color: #166534;\n      margin-top: 0.3rem;\n    }\n\n    \u002F* Result text (for preavis, conges) *\u002F\n    .result-text {\n      font-size: 1.4rem;\n      font-weight: 700;\n      color: var(--success);\n      font-variant-numeric: tabular-nums;\n    }\n\n    \u002F* Salary grid table *\u002F\n    .grid-table {\n      width: 100%;\n      border-collapse: collapse;\n      font-size: 0.83rem;\n      margin-top: 0.75rem;\n    }\n    .grid-table th {\n      background: var(--accent-bg);\n      color: var(--accent);\n      padding: 0.4rem 0.6rem;\n      text-align: left;\n      font-weight: 600;\n      font-size: 0.78rem;\n      text-transform: uppercase;\n      letter-spacing: 0.03em;\n    }\n    .grid-table td {\n      padding: 0.4rem 0.6rem;\n      border-bottom: 1px solid var(--border-light);\n      font-variant-numeric: tabular-nums;\n    }\n    .grid-table tr:last-child td { border-bottom: none; }\n    .grid-table tr.highlight td { background: #fefce8; font-weight: 600; }\n\n    \u002F* Disclaimer *\u002F\n    .disclaimer {\n      margin-top: 1.5rem;\n      padding-top: 0.75rem;\n      border-top: 1px solid var(--border);\n      font-size: 0.78rem;\n      color: var(--text-muted);\n      line-height: 1.5;\n    }\n    .disclaimer a { color: var(--accent); text-decoration: underline; }\n\n    \u002F* CCN-source comment helper spacing *\u002F\n    .section-title {\n      font-size: 0.88rem;\n      font-weight: 600;\n      color: var(--text-muted);\n      margin-bottom: 0.6rem;\n      display: flex;\n      align-items: center;\n      gap: 0.35rem;\n    }\n  \u003C\u002Fstyle>\n\u003C\u002Fhead>\n\u003Cbody>\n\u003C!-- CCN IDCC 1016 — deviations\n     indemnite: L1234-9 → formule progressive majorée (1 mois\u002Fan années 1-5, 0.8 mois\u002Fan années 6-10, 0.6 mois\u002Fan au-delà, plafond 18 mois) — plus favorable que L1234-9\n     preavis: L1234-1 → 1 mois (0-2 ans), 2 mois (2-10 ans), 3 mois (>10 ans) cadres ; 15j (0-6 mois), 1 mois (6 mois - 2 ans), 2 mois (>2 ans) AM\n     conges: L3141-3 → congés d'ancienneté supplémentaires : +1j après 5 ans, +2j après 10 ans, +4j après 15 ans\n     prime-anciennete: aucun minimum légal → prime ancienneté 3% après 3 ans\n     13e-mois: aucun minimum légal → 13e mois obligatoire après 1 an de présence\n     source: Légifrance KALICONT000005635947 + accord NAO mars 2025 -->\n\n\u003Cmain class=\"tool-root\">\n  \u003Cdiv class=\"tool-header\">\n    \u003Ch1>Convention collective Édition de musique — Cadres &amp; agents de maîtrise\u003C\u002Fh1>\n    \u003Cdiv class=\"idcc-badge\">\n      \u003Ci data-lucide=\"tag\" width=\"12\" height=\"12\">\u003C\u002Fi>\n      IDCC 1016\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003Cdiv class=\"tab-bar\" role=\"tablist\">\n    \u003Cbutton class=\"tab-btn\" data-tab=\"indemnite\" role=\"tab\">\n      \u003Ci data-lucide=\"calculator\" width=\"14\" height=\"14\">\u003C\u002Fi>\n      Indemnité\n    \u003C\u002Fbutton>\n    \u003Cbutton class=\"tab-btn\" data-tab=\"preavis\" role=\"tab\">\n      \u003Ci data-lucide=\"clock\" width=\"14\" height=\"14\">\u003C\u002Fi>\n      Préavis\n    \u003C\u002Fbutton>\n    \u003Cbutton class=\"tab-btn\" data-tab=\"conges\" role=\"tab\">\n      \u003Ci data-lucide=\"calendar\" width=\"14\" height=\"14\">\u003C\u002Fi>\n      Congés\n    \u003C\u002Fbutton>\n    \u003Cbutton class=\"tab-btn\" data-tab=\"prime\" role=\"tab\">\n      \u003Ci data-lucide=\"star\" width=\"14\" height=\"14\">\u003C\u002Fi>\n      Primes\n    \u003C\u002Fbutton>\n    \u003Cbutton class=\"tab-btn\" data-tab=\"grille\" role=\"tab\">\n      \u003Ci data-lucide=\"table\" width=\"14\" height=\"14\">\u003C\u002Fi>\n      Grille salariale\n    \u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\n  \u003C!-- ======================== INDEMNITE ======================== -->\n  \u003Cdiv class=\"panel\" data-panel=\"indemnite\">\n    \u003Cdiv class=\"rule-callout\">\n      \u003Ci data-lucide=\"info\" width=\"16\" height=\"16\">\u003C\u002Fi>\n      \u003Cp>\u003Cstrong>Convention collective plus favorable :\u003C\u002Fstrong> La CCN édition de musique (IDCC 1016) prévoit une indemnité progressive — 1 mois\u002Fan pour les 5 premières années, 0,8 mois\u002Fan de 6 à 10 ans, 0,6 mois\u002Fan au-delà — plafonnée à 18 mois. C'est nettement supérieur au barème légal (¼ mois\u002Fan puis ⅓ mois\u002Fan au-delà de 10 ans).\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"form-grid\">\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Salaire brut mensuel\u003C\u002Flabel>\n        \u003Cdiv class=\"slider-wrap\">\n          \u003Cinput type=\"range\" id=\"ind-salaire\" min=\"1500\" max=\"12000\" step=\"100\" value=\"3500\">\n          \u003Cspan class=\"slider-val\" id=\"ind-salaire-val\">3 500 €\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Ancienneté (années complètes)\u003C\u002Flabel>\n        \u003Cdiv class=\"slider-wrap\">\n          \u003Cinput type=\"range\" id=\"ind-anciennete\" min=\"0\" max=\"40\" step=\"1\" value=\"8\">\n          \u003Cspan class=\"slider-val\" id=\"ind-anciennete-val\">8 ans\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"field form-full\">\n        \u003Clabel>Motif du licenciement\u003C\u002Flabel>\n        \u003Cdiv class=\"pills\" id=\"ind-motif-pills\">\n          \u003Cspan class=\"pill active\" data-val=\"personnel\">Motif personnel\u003C\u002Fspan>\n          \u003Cspan class=\"pill\" data-val=\"economique\">Motif économique\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"result-card\" id=\"ind-result\">\n      \u003Cdiv class=\"result-label\">Indemnité de licenciement conventionnelle\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-amount\" id=\"ind-amount\">—\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-sub\" id=\"ind-sub\">\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- ======================== PREAVIS ======================== -->\n  \u003Cdiv class=\"panel\" data-panel=\"preavis\">\n    \u003Cdiv class=\"rule-callout\">\n      \u003Ci data-lucide=\"info\" width=\"16\" height=\"16\">\u003C\u002Fi>\n      \u003Cp>\u003Cstrong>Préavis conventionnel :\u003C\u002Fstrong> La CCN définit des durées de préavis distinctes selon le statut (cadre \u002F agent de maîtrise) et l'ancienneté, pouvant atteindre \u003Cstrong>3 mois pour les cadres\u003C\u002Fstrong> ayant plus de 10 ans d'ancienneté.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"form-grid\">\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Statut\u003C\u002Flabel>\n        \u003Cdiv class=\"pills\" id=\"pr-statut-pills\">\n          \u003Cspan class=\"pill active\" data-val=\"cadre\">Cadre\u003C\u002Fspan>\n          \u003Cspan class=\"pill\" data-val=\"am\">Agent de maîtrise\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Ancienneté (années complètes)\u003C\u002Flabel>\n        \u003Cdiv class=\"slider-wrap\">\n          \u003Cinput type=\"range\" id=\"pr-anciennete\" min=\"0\" max=\"30\" step=\"1\" value=\"5\">\n          \u003Cspan class=\"slider-val\" id=\"pr-anciennete-val\">5 ans\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Sens\u003C\u002Flabel>\n        \u003Cdiv class=\"pills\" id=\"pr-sens-pills\">\n          \u003Cspan class=\"pill active\" data-val=\"licenciement\">Licenciement\u003C\u002Fspan>\n          \u003Cspan class=\"pill\" data-val=\"demission\">Démission\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"result-card\" id=\"pr-result\">\n      \u003Cdiv class=\"result-label\">Durée du préavis\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-text\" id=\"pr-duration\">—\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-sub\" id=\"pr-sub\">\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- ======================== CONGES ======================== -->\n  \u003Cdiv class=\"panel\" data-panel=\"conges\">\n    \u003Cdiv class=\"rule-callout\">\n      \u003Ci data-lucide=\"info\" width=\"16\" height=\"16\">\u003C\u002Fi>\n      \u003Cp>\u003Cstrong>Congés d'ancienneté supplémentaires :\u003C\u002Fstrong> Au-delà des 30 jours ouvrables légaux (L3141-3), la CCN accorde des jours supplémentaires selon l'ancienneté : +1 jour après 5 ans, +2 jours après 10 ans, +4 jours après 15 ans.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"form-grid\">\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Ancienneté (années complètes)\u003C\u002Flabel>\n        \u003Cdiv class=\"slider-wrap\">\n          \u003Cinput type=\"range\" id=\"cg-anciennete\" min=\"0\" max=\"30\" step=\"1\" value=\"7\">\n          \u003Cspan class=\"slider-val\" id=\"cg-anciennete-val\">7 ans\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"result-card\" id=\"cg-result\">\n      \u003Cdiv class=\"result-label\">Congés payés annuels\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-text\" id=\"cg-jours\">—\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-sub\" id=\"cg-sub\">\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- ======================== PRIME ======================== -->\n  \u003Cdiv class=\"panel\" data-panel=\"prime\">\n    \u003Cdiv class=\"rule-callout\">\n      \u003Ci data-lucide=\"info\" width=\"16\" height=\"16\">\u003C\u002Fi>\n      \u003Cp>\u003Cstrong>Avantages obligatoires :\u003C\u002Fstrong> La CCN impose un \u003Cstrong>13\u003Csup>e\u003C\u002Fsup> mois\u003C\u002Fstrong> après 1 an de présence ainsi qu'une \u003Cstrong>prime d'ancienneté de 3 %\u003C\u002Fstrong> après 3 ans. Ces deux avantages n'ont aucun équivalent légal.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"form-grid\">\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Salaire brut mensuel\u003C\u002Flabel>\n        \u003Cdiv class=\"slider-wrap\">\n          \u003Cinput type=\"range\" id=\"pr2-salaire\" min=\"1500\" max=\"12000\" step=\"100\" value=\"3500\">\n          \u003Cspan class=\"slider-val\" id=\"pr2-salaire-val\">3 500 €\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Ancienneté (années complètes)\u003C\u002Flabel>\n        \u003Cdiv class=\"slider-wrap\">\n          \u003Cinput type=\"range\" id=\"pr2-anciennete\" min=\"0\" max=\"30\" step=\"1\" value=\"5\">\n          \u003Cspan class=\"slider-val\" id=\"pr2-anciennete-val\">5 ans\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"result-card\" id=\"pr2-result\">\n      \u003Cdiv class=\"result-label\">Primes conventionnelles annuelles\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-amount\" id=\"pr2-amount\">—\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-sub\" id=\"pr2-sub\">\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- ======================== GRILLE SALARIALE ======================== -->\n  \u003Cdiv class=\"panel\" data-panel=\"grille\">\n    \u003Cdiv class=\"rule-callout\">\n      \u003Ci data-lucide=\"info\" width=\"16\" height=\"16\">\u003C\u002Fi>\n      \u003Cp>\u003Cstrong>Grille salariale conventionnelle :\u003C\u002Fstrong> La CCN fixe des salaires minima par coefficient, revalorisés de \u003Cstrong>+5 % au 1\u003Csup>er\u003C\u002Fsup> mars 2025\u003C\u002Fstrong> (accord NAO 2025). Ces minima sont supérieurs au SMIC pour les niveaux cadres et agents de maîtrise.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n\n    \u003Cdiv class=\"form-grid\">\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Statut\u003C\u002Flabel>\n        \u003Cdiv class=\"pills\" id=\"gr-statut-pills\">\n          \u003Cspan class=\"pill active\" data-val=\"cadre\">Cadre\u003C\u002Fspan>\n          \u003Cspan class=\"pill\" data-val=\"am\">Agent de maîtrise\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"field\">\n        \u003Clabel>Coefficient hiérarchique\u003C\u002Flabel>\n        \u003Cselect id=\"gr-coeff\">\n          \u003Coption value=\"250\">250\u003C\u002Foption>\n          \u003Coption value=\"270\">270\u003C\u002Foption>\n          \u003Coption value=\"300\">300\u003C\u002Foption>\n          \u003Coption value=\"330\">330\u003C\u002Foption>\n          \u003Coption value=\"340\" selected>340\u003C\u002Foption>\n          \u003Coption value=\"370\">370\u003C\u002Foption>\n          \u003Coption value=\"400\">400\u003C\u002Foption>\n          \u003Coption value=\"450\">450\u003C\u002Foption>\n          \u003Coption value=\"500\">500\u003C\u002Foption>\n          \u003Coption value=\"600\">600\u003C\u002Foption>\n        \u003C\u002Fselect>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003Ctable class=\"grid-table\" id=\"gr-table\">\n      \u003Cthead>\n        \u003Ctr>\n          \u003Cth>Coefficient\u003C\u002Fth>\n          \u003Cth>Catégorie\u003C\u002Fth>\n          \u003Cth>Salaire min mensuel brut\u003C\u002Fth>\n          \u003Cth>Forfait jours\u003C\u002Fth>\n        \u003C\u002Ftr>\n      \u003C\u002Fthead>\n      \u003Ctbody id=\"gr-tbody\">\n      \u003C\u002Ftbody>\n    \u003C\u002Ftable>\n\n    \u003Cdiv class=\"result-card\" id=\"gr-result\">\n      \u003Cdiv class=\"result-label\">Salaire minimum pour ce coefficient\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-amount\" id=\"gr-amount\">—\u003C\u002Fdiv>\n      \u003Cdiv class=\"result-sub\" id=\"gr-sub\">\u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003Cp class=\"disclaimer\">\n    Calcul indicatif basé sur la CCN IDCC 1016 (cadres et agents de maîtrise de l'édition de musique).\n    Source :\n    \u003Ca href=\"https:\u002F\u002Fwww.legifrance.gouv.fr\u002Fconv_coll\u002Fid\u002FKALICONT000005635947\" target=\"_blank\" rel=\"noopener\">Légifrance — KALICONT000005635947\u003C\u002Fa>\n    + accord NAO mars 2025.\n    Pour toute validation légale\n  \u003C\u002Fp>\n\u003C\u002Fmain>\n\n\u003Cscript>\n(function () {\n  \u002F\u002F ---- Utilities ----\n  const fmt = new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR', maximumFractionDigits: 0 });\n\n  function q(sel) { return document.querySelector(sel); }\n  function qa(sel) { return document.querySelectorAll(sel); }\n\n  \u002F\u002F ---- Tab system ----\n  const tabBtns = qa('[data-tab]');\n  const panels  = qa('[data-panel]');\n\n  function activate(id) {\n    tabBtns.forEach(t => t.classList.toggle('active', t.dataset.tab === id));\n    panels.forEach(p => {\n      const match = p.dataset.panel === id;\n      p.classList.toggle('active', match);\n      p.style.display = match ? 'block' : 'none';\n    });\n    if (location.hash !== '#' + id) location.hash = id;\n    requestAnimationFrame(() => window.dispatchEvent(new Event('resize')));\n  }\n\n  tabBtns.forEach(t => t.addEventListener('click', () => activate(t.dataset.tab)));\n\n  const hashId = location.hash.slice(1);\n  const firstTab = tabBtns[0] ? tabBtns[0].dataset.tab : '';\n  activate(document.querySelector(`[data-tab=\"${hashId}\"]`) ? hashId : firstTab);\n\n  \u002F\u002F ---- Pills helper ----\n  function setupPills(containerSel, onChange) {\n    const container = q(containerSel);\n    if (!container) return;\n    container.querySelectorAll('.pill').forEach(pill => {\n      pill.addEventListener('click', () => {\n        container.querySelectorAll('.pill').forEach(p => p.classList.remove('active'));\n        pill.classList.add('active');\n        onChange(pill.dataset.val);\n      });\n    });\n  }\n  function getActivePill(containerSel) {\n    const el = q(`${containerSel} .pill.active`);\n    return el ? el.dataset.val : null;\n  }\n\n  \u002F\u002F ---- INDEMNITE ----\n  var indState = { salaire: 3500, anciennete: 8, motif: 'personnel' };\n\n  function computeIndemnite(s) {\n    if (s.anciennete \u003C 1) return { amount: 0, detail: 'Ancienneté insuffisante (\u003C 1 an).' };\n    var an = s.anciennete;\n    var sal = s.salaire;\n    var result = 0;\n    \u002F\u002F CCN IDCC 1016 progressive formula (more favourable than L1234-9)\n    var y1 = Math.min(an, 5);\n    var y2 = Math.max(0, Math.min(an - 5, 5));\n    var y3 = Math.max(0, an - 10);\n    result = (y1 * 1.0 + y2 * 0.8 + y3 * 0.6) * sal;\n    \u002F\u002F Cap at 18 months\n    var cap = 18 * sal;\n    var capped = result > cap;\n    result = Math.min(result, cap);\n    var detail = y1.toFixed(0) + ' an(s) × 1 mois';\n    if (y2 > 0) detail += ' + ' + y2.toFixed(0) + ' an(s) × 0,8 mois';\n    if (y3 > 0) detail += ' + ' + y3.toFixed(0) + ' an(s) × 0,6 mois';\n    if (capped) detail += ' (plafonné à 18 mois)';\n    return { amount: result, detail: detail };\n  }\n\n  function renderIndemnite() {\n    var r = computeIndemnite(indState);\n    q('#ind-amount').textContent = fmt.format(Math.round(r.amount));\n    q('#ind-sub').textContent = r.detail;\n  }\n\n  q('#ind-salaire').addEventListener('input', function () {\n    indState.salaire = +this.value;\n    q('#ind-salaire-val').textContent = fmt.format(+this.value);\n    renderIndemnite();\n  });\n  q('#ind-anciennete').addEventListener('input', function () {\n    indState.anciennete = +this.value;\n    q('#ind-anciennete-val').textContent = this.value + ' ans';\n    renderIndemnite();\n  });\n  setupPills('#ind-motif-pills', function(v) { indState.motif = v; renderIndemnite(); });\n  renderIndemnite();\n\n  \u002F\u002F ---- PREAVIS ----\n  var prState = { statut: 'cadre', anciennete: 5, sens: 'licenciement' };\n\n  function computePreavis(s) {\n    \u002F\u002F CCN IDCC 1016: Cadres — licenciement\n    \u002F\u002F 0-2 ans → 1 mois ; 2-10 ans → 2 mois ; >10 ans → 3 mois\n    \u002F\u002F Cadres — démission: identique à licenciement (réductible par accord)\n    \u002F\u002F AM — licenciement: 0-6 mois → 15 jours ; 6 mois–2 ans → 1 mois ; >2 ans → 2 mois\n    var an = s.anciennete;\n    if (s.statut === 'cadre') {\n      if (an \u003C 2) return { dur: '1 mois', detail: 'Cadre, moins de 2 ans d\\'ancienneté.' };\n      if (an \u003C 10) return { dur: '2 mois', detail: 'Cadre, 2 à 10 ans d\\'ancienneté.' };\n      return { dur: '3 mois', detail: 'Cadre, plus de 10 ans d\\'ancienneté.' };\n    } else {\n      \u002F\u002F Agent de maîtrise\n      if (an \u003C 0.5) return { dur: '15 jours', detail: 'AM, moins de 6 mois d\\'ancienneté.' };\n      if (an \u003C 2) return { dur: '1 mois', detail: 'AM, 6 mois à 2 ans d\\'ancienneté.' };\n      return { dur: '2 mois', detail: 'AM, plus de 2 ans d\\'ancienneté.' };\n    }\n  }\n\n  function renderPreavis() {\n    var r = computePreavis(prState);\n    q('#pr-duration').textContent = r.dur;\n    q('#pr-sub').textContent = r.detail;\n  }\n\n  q('#pr-anciennete').addEventListener('input', function () {\n    prState.anciennete = +this.value;\n    q('#pr-anciennete-val').textContent = this.value + ' ans';\n    renderPreavis();\n  });\n  setupPills('#pr-statut-pills', function(v) { prState.statut = v; renderPreavis(); });\n  setupPills('#pr-sens-pills', function(v) { prState.sens = v; renderPreavis(); });\n  renderPreavis();\n\n  \u002F\u002F ---- CONGES ----\n  var cgState = { anciennete: 7 };\n\n  function computeConges(s) {\n    var base = 30; \u002F\u002F jours ouvrables légaux\n    var extra = 0;\n    var detail = '30 j ouvrables légaux';\n    if (s.anciennete >= 15) { extra = 4; detail += ' + 4 j ancienneté (≥15 ans)'; }\n    else if (s.anciennete >= 10) { extra = 2; detail += ' + 2 j ancienneté (≥10 ans)'; }\n    else if (s.anciennete >= 5) { extra = 1; detail += ' + 1 j ancienneté (≥5 ans)'; }\n    return { jours: base + extra, detail: detail };\n  }\n\n  function renderConges() {\n    var r = computeConges(cgState);\n    q('#cg-jours').textContent = r.jours + ' jours ouvrables \u002F an';\n    q('#cg-sub').textContent = r.detail;\n  }\n\n  q('#cg-anciennete').addEventListener('input', function () {\n    cgState.anciennete = +this.value;\n    q('#cg-anciennete-val').textContent = this.value + ' ans';\n    renderConges();\n  });\n  renderConges();\n\n  \u002F\u002F ---- PRIME ----\n  var pr2State = { salaire: 3500, anciennete: 5 };\n\n  function computePrime(s) {\n    var sal = s.salaire;\n    var an = s.anciennete;\n    var detail = [];\n    var total = 0;\n    \u002F\u002F 13e mois obligatoire après 1 an\n    var treizieme = 0;\n    if (an >= 1) {\n      treizieme = sal;\n      detail.push('13e mois : ' + fmt.format(sal));\n    }\n    \u002F\u002F Prime ancienneté 3% après 3 ans (sur salaire mensuel × 12)\n    var primeAnc = 0;\n    if (an >= 3) {\n      primeAnc = sal * 12 * 0.03;\n      detail.push('Prime ancienneté 3 % : ' + fmt.format(Math.round(primeAnc)));\n    }\n    total = treizieme + primeAnc;\n    if (detail.length === 0) detail.push('Ancienneté insuffisante pour 13e mois ou prime ancienneté.');\n    return { amount: total, detail: detail.join(' | ') };\n  }\n\n  function renderPrime() {\n    var r = computePrime(pr2State);\n    q('#pr2-amount').textContent = fmt.format(Math.round(r.amount));\n    q('#pr2-sub').textContent = r.detail;\n  }\n\n  q('#pr2-salaire').addEventListener('input', function () {\n    pr2State.salaire = +this.value;\n    q('#pr2-salaire-val').textContent = fmt.format(+this.value);\n    renderPrime();\n  });\n  q('#pr2-anciennete').addEventListener('input', function () {\n    pr2State.anciennete = +this.value;\n    q('#pr2-anciennete-val').textContent = this.value + ' ans';\n    renderPrime();\n  });\n  renderPrime();\n\n  \u002F\u002F ---- GRILLE SALARIALE ----\n  \u002F\u002F Base salary grid — IDCC 1016 (post accord NAO mars 2025, +5%)\n  \u002F\u002F AM: coeff 250→2 250 €, 270→2 380 €, 300→2 600 €, 330→2 850 €\n  \u002F\u002F Cadres: 340→3 100 €, 370→3 380 €, 400→3 700 €, 450→4 200 €, 500→4 750 €, 600→5 750 €\n  var GRILLE = {\n    250:  { cat: 'Agent de maîtrise', sal: 2250,  forfait: false },\n    270:  { cat: 'Agent de maîtrise', sal: 2380,  forfait: false },\n    300:  { cat: 'Agent de maîtrise', sal: 2600,  forfait: false },\n    330:  { cat: 'Agent de maîtrise', sal: 2850,  forfait: false },\n    340:  { cat: 'Cadre',             sal: 3100,  forfait: true  },\n    370:  { cat: 'Cadre',             sal: 3380,  forfait: true  },\n    400:  { cat: 'Cadre',             sal: 3700,  forfait: true  },\n    450:  { cat: 'Cadre',             sal: 4200,  forfait: true  },\n    500:  { cat: 'Cadre',             sal: 4750,  forfait: true  },\n    600:  { cat: 'Cadre',             sal: 5750,  forfait: true  },\n  };\n\n  var grState = { statut: 'cadre', coeff: 340 };\n\n  function renderGrille() {\n    var tbody = q('#gr-tbody');\n    tbody.innerHTML = '';\n    var selectedCoeff = grState.coeff;\n    Object.entries(GRILLE).forEach(function([coeff, row]) {\n      var tr = document.createElement('tr');\n      if (+coeff === selectedCoeff) tr.classList.add('highlight');\n      tr.innerHTML = '\u003Ctd>' + coeff + '\u003C\u002Ftd>' +\n        '\u003Ctd>' + row.cat + '\u003C\u002Ftd>' +\n        '\u003Ctd>' + fmt.format(row.sal) + '\u003C\u002Ftd>' +\n        '\u003Ctd>' + (row.forfait ? '\u003Ci data-lucide=\"check\" width=\"14\" height=\"14\" style=\"color:#16a34a\">\u003C\u002Fi>' : '—') + '\u003C\u002Ftd>';\n      tbody.appendChild(tr);\n    });\n    lucide.createIcons();\n    var sel = GRILLE[selectedCoeff];\n    if (sel) {\n      q('#gr-amount').textContent = fmt.format(sel.sal);\n      q('#gr-sub').textContent = sel.cat + (sel.forfait ? ' — éligible forfait jours (217 j\u002Fan)' : ' — horaire');\n    }\n  }\n\n  q('#gr-coeff').addEventListener('change', function () {\n    grState.coeff = +this.value;\n    renderGrille();\n  });\n  setupPills('#gr-statut-pills', function(v) {\n    grState.statut = v;\n    \u002F\u002F Auto-select first coeff matching the statut\n    if (v === 'cadre') { q('#gr-coeff').value = '340'; grState.coeff = 340; }\n    else { q('#gr-coeff').value = '250'; grState.coeff = 250; }\n    renderGrille();\n  });\n  renderGrille();\n\n  \u002F\u002F ---- ResizeObserver ----\n  const ro = new ResizeObserver(function () {\n    var h = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);\n    parent.postMessage({ type: 'resize', height: h }, '*');\n  });\n  ro.observe(document.documentElement);\n\n  \u002F\u002F ---- Init lucide ----\n  lucide.createIcons();\n})();\n\u003C\u002Fscript>\n\u003C\u002Fbody>\n\u003C\u002Fhtml>\n","generated","juridique","consumer","both","https:\u002F\u002Fpub-bdebbd2dad294475a2da0eb657815b6b.r2.dev\u002Ftools\u002Fccn-cadres-et-agents-de-maitrise-de-l-edition-de-musique-fad23b85d3.webp",[]]