.pd-wrap{overflow-x:auto;margin:1.2rem 0;border:1px solid var(--line);border-radius:var(--r);background:var(--blanc)}
.pd-table{width:100%;border-collapse:collapse;font-size:.97rem;min-width:34rem}
.pd-table caption{text-align:left;font-family:var(--ff-t);font-weight:800;padding:.8rem 1rem .4rem;color:var(--ink)}
.pd-table th,.pd-table td{padding:.65rem .9rem;border-top:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.45}
.pd-table thead th{background:var(--surface);font-family:var(--ff-t);font-size:.9rem}
.pd-table tbody th{font-weight:700;width:11rem}
.pd-table td.n,.pd-table th.n{text-align:right;white-space:nowrap}
.pd-formula{background:var(--surface);border-left:4px solid var(--accent-d);border-radius:var(--r);padding:.9rem 1.1rem;margin:1rem 0;font-weight:600}
.pd-src{font-size:.92rem;color:var(--ink-2)}
.pd-badge{display:inline-block;padding:.15rem .7rem;border-radius:var(--r-pill);background:var(--surface-2);font-family:var(--ff-t);font-weight:800;font-size:.85rem}
.pd-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin:1.2rem 0}
.pd-tool{background:var(--blanc);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:clamp(1rem,2.4vw,1.6rem);margin:1.2rem 0}
.pd-tool label{display:block;font-weight:700;margin:.7rem 0 .25rem}
.pd-tool input[type=text],.pd-tool input[type=number],.pd-tool select{font:400 16px/1.45 var(--ff-c);color:var(--ink);background:var(--blanc);border:2px solid var(--field-line);border-radius:12px;padding:.55rem .75rem;width:100%;min-width:0}
.pd-tool input:focus,.pd-tool select:focus{outline:3px solid var(--accent);outline-offset:1px}
.pd-row{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}
.pd-check{display:flex;gap:.6rem;align-items:flex-start;font-weight:600;margin:.8rem 0}
.pd-check input{margin-top:.3rem;width:1.1rem;height:1.1rem}
.pd-sug{list-style:none;margin:.3rem 0 0;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--blanc);overflow:hidden}
.pd-sug li button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:.6rem .8rem;font:inherit;cursor:pointer;border-top:1px solid var(--line)}
.pd-sug li:first-child button{border-top:0}
.pd-sug li button:hover,.pd-sug li button:focus{background:var(--surface)}
.pd-res{margin-top:1.1rem;padding:1rem 1.2rem;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}
.pd-res h3{margin:0 0 .5rem}
.pd-total{font-family:var(--ff-t);font-weight:800;font-size:1.6rem;color:var(--accent-ink)}
.pd-msg{margin:.7rem 0;padding:.7rem .9rem;border-radius:var(--r);background:var(--surface-2)}
.pd-msg--ok{background:var(--surface)}
.pd-map{height:22rem;border-radius:var(--r);border:1px solid var(--line);margin:1rem 0}
.pd-niv{display:inline-block;padding:.2rem .8rem;border-radius:var(--r-pill);font-family:var(--ff-t);font-weight:800;color:var(--blanc)}
.pd-niv--vigilance{background:oklch(52% .09 140)}
.pd-niv--alerte{background:oklch(52% .12 85)}
.pd-niv--alerte_renforcee{background:oklch(50% .15 55)}
.pd-niv--crise{background:oklch(45% .17 27)}
.pd-btn{font:inherit;cursor:pointer}
@media (max-width:40rem){.pd-table tbody th{width:auto}.pd-map{height:18rem}.pd-table:not(:has(tr>:nth-child(4))){min-width:0}.pd-table:not(:has(tr>:nth-child(4))) th,.pd-table:not(:has(tr>:nth-child(4))) td{padding:.6rem .55rem;overflow-wrap:anywhere}.pd-table:not(:has(tr>:nth-child(4))) td.n,.pd-table:not(:has(tr>:nth-child(4))) th.n{white-space:normal}.pd-wrap:has(.pd-table tr>:nth-child(4))::before{content:"Faites défiler le tableau vers la droite \2192";display:block;position:sticky;left:0;width:max-content;max-width:100%;padding:.45rem 1rem;font-size:.85rem;font-weight:700;color:var(--ink-2)}}
