/* Styles d'origine des outils de « sante-travail » (extraire-styles-outil.py), limités aux outils. */
.mspapp [data-origine]{--ac:var(--teal);--blue:#0a63c2;--green:#4f8a10;--ink:#13233f;--ink-mute:#5a6b86;--ink-soft:#33425c;--line:#d6e0ee;--orange:#d96b00;--paper-2:#eef3fa;--pink:#d22f59;--purple:#6a3fa0;--radius:16px;--radius-lg:24px;--shadow:0 10px 30px -16px rgba(19,35,63,.30);--shadow-lg:0 22px 50px -22px rgba(19,35,63,.40);--teal:#0b8a99;}
@media (max-width:1080px){.mspapp [data-origine] .nav-links.open{display:flex}}
.mspapp [data-origine] .alert{display:flex; gap:12px; align-items:flex-start; border:1.5px solid var(--line); border-radius:var(--radius); padding:16px 18px; font-size:15.5px}
.mspapp [data-origine] .alert .ai{font-size:22px; line-height:1; flex:none}
.mspapp [data-origine] .a-red{background:#fdecef; border-color:#f3b6c4; color:#7a1230}
.mspapp [data-origine] .a-red strong{color:#a8123b}
.mspapp [data-origine] .a-amber{background:#fff5e6; border-color:#f2cf95}
.mspapp [data-origine] .a-teal{background:#e7f5f7; border-color:#a9dbe1}
.mspapp [data-origine] .tools{display:grid; grid-template-columns:repeat(auto-fit,minmax(208px,1fr)); gap:16px; margin-top:20px}
@media (max-width:540px){.mspapp [data-origine] .tools{grid-template-columns:1fr}}
.mspapp [data-origine] .tool.reco{outline:3px solid var(--teal); outline-offset:2px}
.mspapp [data-origine] .guide-opts{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px}
.mspapp [data-origine] .g-opt{border:1.5px solid var(--line); background:var(--paper-2); border-radius:999px; padding:9px 15px;  font-weight:700; font-size:14.5px; color:var(--ink); cursor:pointer; text-align:start}
.mspapp [data-origine] .g-opt:hover{border-color:var(--teal); background:#fff}
.mspapp [data-origine] .guide-launch{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.mspapp [data-origine] .tool{text-align:start; background:#fff; border:1.5px solid var(--line); border-top:5px solid var(--ac,var(--teal)); border-radius:var(--radius); padding:20px; box-shadow:var(--shadow); display:flex; flex-direction:column; gap:8px}
.mspapp [data-origine] .tool .ic{font-size:26px}
.mspapp [data-origine] .tool h3{font-size:19px; font-weight:800; color:var(--ink)}
.mspapp [data-origine] .tool p{font-size:14.5px; color:var(--ink-soft)}
.mspapp [data-origine] .tool .meta{font-size:13px; color:var(--ink-mute); font-weight:700}
.mspapp [data-origine] .tool .start{margin-top:auto; align-self:flex-start; display:inline-flex; align-items:center; gap:8px; background:var(--ac,var(--teal)); color:#fff; border:0; cursor:pointer;  font-weight:700; font-size:14.5px; padding:10px 16px; border-radius:11px; min-height:44px}
.mspapp [data-origine] .tool .start:hover{filter:brightness(1.06)}
.mspapp [data-origine] .quiz{margin-top:24px; background:#fff; border:1.5px solid var(--line); border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); overflow:hidden; display:none}
.mspapp [data-origine] .quiz.open{display:block}
.mspapp [data-origine] .quiz-head{padding:20px 24px; color:#fff; background:var(--ac,var(--teal)); display:flex; align-items:flex-start; justify-content:space-between; gap:14px}
.mspapp [data-origine] .quiz-head .ax{ font-weight:700; font-size:12.5px; letter-spacing:.06em; text-transform:uppercase; opacity:.92}
.mspapp [data-origine] .quiz-head h3{font-size:22px; font-weight:800; margin-top:3px}
.mspapp [data-origine] .quiz-head .close{background:rgba(255,255,255,.16); border:1.5px solid rgba(255,255,255,.4); color:#fff; width:40px; height:40px; border-radius:11px; cursor:pointer; font-size:20px; flex:none}
.mspapp [data-origine] .quiz-body{padding:22px 24px}
.mspapp [data-origine] .q-intro{background:var(--paper-2); border:1.5px solid var(--line); border-radius:var(--radius); padding:16px 18px; font-size:15px; color:var(--ink-soft); margin-bottom:18px}
.mspapp [data-origine] .q-block-label{ font-weight:800; font-size:15px; color:var(--ac,var(--teal)); margin:18px 0 6px; text-transform:uppercase; letter-spacing:.04em}
.mspapp [data-origine] .q-item{border-top:1px solid var(--line); padding:16px 0}
.mspapp [data-origine] .q-item:first-of-type{border-top:0}
.mspapp [data-origine] .q-text{font-weight:700; color:var(--ink); margin-bottom:10px}
.mspapp [data-origine] .opts{display:flex; flex-wrap:wrap; gap:8px}
.mspapp [data-origine] .opt{border:1.5px solid var(--line); background:#fff; border-radius:999px; padding:8px 14px;  font-weight:700; font-size:14px; color:var(--ink-soft); cursor:pointer; min-height:40px}
.mspapp [data-origine] .opt:hover{border-color:var(--ac,var(--teal))}
.mspapp [data-origine] .opt.on{background:var(--ac,var(--teal)); border-color:var(--ac,var(--teal)); color:#fff}
.mspapp [data-origine] .chk{display:flex; align-items:center; gap:10px; width:100%; text-align:start; border:1.5px solid var(--line); background:#fff; border-radius:12px; padding:12px 14px; cursor:pointer; font-size:15px; color:var(--ink); margin-top:8px}
.mspapp [data-origine] .chk:hover{border-color:var(--ac,var(--teal))}
.mspapp [data-origine] .chk .box{width:24px; height:24px; border-radius:7px; border:2px solid var(--line); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; flex:none; font-size:14px}
.mspapp [data-origine] .chk.on{border-color:var(--ac,var(--teal)); background:#f0fafb}
.mspapp [data-origine] .chk.on .box{background:var(--ac,var(--teal)); border-color:var(--ac,var(--teal))}
.mspapp [data-origine] .q-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px}
.mspapp [data-origine] .q-actions .btn2{display:inline-flex; align-items:center; justify-content:center; gap:8px; border:0; cursor:pointer;  font-weight:800; font-size:15px; padding:12px 20px; border-radius:12px; min-height:48px}
.mspapp [data-origine] .b-solid{background:var(--ac,var(--teal)); color:#fff}
.mspapp [data-origine] .b-solid:hover{filter:brightness(1.06)}
.mspapp [data-origine] .b-soft{background:var(--paper-2); color:var(--ink); border:1.5px solid var(--line)!important}
.mspapp [data-origine] .b-soft:hover{border-color:var(--ink)!important}
.mspapp [data-origine] .result{margin-top:22px}
.mspapp [data-origine] .res-band{display:flex; gap:14px; align-items:flex-start; border-radius:var(--radius); padding:18px 20px; border:2px solid}
.mspapp [data-origine] .res-band .rd{font-size:30px; line-height:1; flex:none}
.mspapp [data-origine] .res-band h4{font-size:20px; font-weight:800}
.mspapp [data-origine] .res-band p{font-size:15px; margin-top:5px}
.mspapp [data-origine] .lvl0{background:#eef6e6; border-color:#4f8a10; color:#2f5300}
.mspapp [data-origine] .res-sub{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px}
.mspapp [data-origine] .res-chip{background:#fff; border:1.5px solid var(--line); border-radius:12px; padding:10px 14px; font-size:14px; font-weight:700; color:var(--ink-soft)}
.mspapp [data-origine] .res-chip b{display:block;  font-size:19px; color:var(--ink)}
.mspapp [data-origine] .res-todo{margin-top:14px; background:var(--paper-2); border:1.5px solid var(--line); border-radius:var(--radius); padding:16px 18px}
.mspapp [data-origine] .res-todo h5{ font-weight:800; font-size:15px; margin-bottom:8px}
.mspapp [data-origine] .res-todo ul{margin:0; padding-inline-start:20px; color:var(--ink-soft); font-size:15px; display:flex; flex-direction:column; gap:6px}
.mspapp [data-origine] .res-actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:16px}
.mspapp [data-origine] .hist{margin-top:20px; border:1.5px solid var(--line); border-radius:var(--radius); background:#fff; overflow:hidden}
.mspapp [data-origine] .hist-head{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; border-bottom:1px solid var(--line); background:var(--paper-2)}
.mspapp [data-origine] .hist-head h4{font-size:16px; font-weight:800}
.mspapp [data-origine] .hist-row{display:flex; align-items:center; gap:12px; padding:12px 18px; border-top:1px solid var(--line); font-size:14.5px}
.mspapp [data-origine] .hist-row:first-child{border-top:0}
.mspapp [data-origine] .hist-dot{width:11px; height:11px; border-radius:50%; flex:none}
.mspapp [data-origine] .hist-row .meta{color:var(--ink-mute); font-size:13px}
.mspapp [data-origine] .hist-row .del{margin-inline-start:auto; background:none; border:0; color:var(--pink); cursor:pointer; font-weight:700; }
.mspapp [data-origine] .ac-item.open .ac-btn .car{transform:rotate(180deg)}
.mspapp [data-origine] .ac-item.open .ac-body{max-height:3600px; padding:0 20px 22px}
.mspapp [data-origine] .sim{margin-top:26px; background:#fff; border:1.5px solid var(--line); border-radius:var(--radius-lg); box-shadow:var(--shadow); padding:22px 24px}
.mspapp [data-origine] .sim h3{font-size:20px; font-weight:800}
.mspapp [data-origine] .sim .sim-lead{color:var(--ink-soft); font-size:15px; margin-top:6px}
.mspapp [data-origine] .sim-grid{display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:14px; margin:16px 0}
@media (max-width:760px){.mspapp [data-origine] .sim-grid{grid-template-columns:1fr}}
.mspapp [data-origine] .sim-field{display:flex; flex-direction:column; gap:6px;  font-weight:700; font-size:14px; color:var(--ink-soft)}
.mspapp [data-origine] .sim-field input[type=number]{ font-weight:400; font-size:16px; padding:11px 12px; border:1.5px solid var(--line); border-radius:11px; background:#fff; color:var(--ink)}
.mspapp [data-origine] .sim-radio{display:flex; flex-direction:column; gap:6px;  font-weight:400; font-size:14.5px; color:var(--ink)}
.mspapp [data-origine] .sim-radio label{display:flex; align-items:center; gap:8px; cursor:pointer}
.mspapp [data-origine] .copy-btn.ok{background:var(--green)}
