.project-prep .prep-lead{max-width:76ch}
.project-prep .prep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:1.5rem 0}
.project-prep fieldset{min-width:0;margin:0;padding:1.2rem;border:1px solid #ccd8c8;border-radius:14px;background:#f4f6ef}
.project-prep legend{padding:0 .4rem;font-weight:700;color:#183d2d}
.project-prep label{display:block;font-weight:650;margin:0 0 .45rem}
.project-prep input,.project-prep select,.project-prep textarea{font:inherit;color:#183d2d;max-width:100%;width:100%;padding:.75rem;border:1px solid #a4b8a0;border-radius:8px;background:#fff;box-sizing:border-box}
.project-prep .prep-field{margin:0 0 1.1rem}
.project-prep select{cursor:pointer;min-height:48px}
.project-prep input{min-height:48px}
.project-prep input[aria-invalid="true"]{border:2px solid #9b392e}
.project-prep .prep-note{font-size:.94rem;line-height:1.65;margin:.65rem 0 0}
.project-prep .prep-numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}
.project-prep .prep-choices details{margin:.65rem 0;border:1px solid #ccd8c8;border-radius:10px;background:#fff}
.project-prep .prep-choices summary{padding:1rem;cursor:pointer;font-weight:700;line-height:1.5}
.project-prep .prep-choices details p{padding:0 1rem 1rem;margin:0;max-width:76ch}
.project-prep .prep-builder{margin:1.5rem 0;border-top:1px solid #ccd8c8}
.project-prep .prep-builder>summary{padding:1rem 0;cursor:pointer;font-weight:700;min-height:48px;line-height:1.6;color:#183d2d}
.project-prep .prep-photos{padding-left:1.4rem;line-height:1.8}
.project-prep .prep-photos li{margin:.45rem 0}
.project-prep .prep-result{display:block;padding:1rem;border-radius:10px;background:#e7eee1;font-weight:650;line-height:1.7;margin:1rem 0}
.project-prep .prep-result[data-state="error"]{background:#fbefec;color:#82382e}
.project-prep .prep-dossier{margin-top:1.5rem}
.project-prep textarea{min-height:230px;resize:vertical;line-height:1.6;font-size:.93rem}
.project-prep .prep-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1rem 0;align-items:center}
.project-prep .prep-actions button{cursor:pointer;font:inherit}
.project-prep :is(input,select,textarea,button,a,summary):focus-visible{outline:3px solid #285c43;outline-offset:3px}
.project-prep [hidden]{display:none!important}
.project-prep .prep-feedback:empty{display:none}
.project-prep .prep-feedback{font-weight:650;line-height:1.6}
.prep-imported{background:#e7eee1;border-left:4px solid #285c43;padding:1rem;line-height:1.6}
@media(max-width:680px){.project-prep .prep-grid,.project-prep .prep-numbers{grid-template-columns:1fr}.project-prep fieldset{padding:1rem}.project-prep .prep-actions>*{width:100%;text-align:center}.project-prep select{font-size:1rem}}
@media print{.project-prep .prep-actions{display:none}.project-prep textarea{height:auto;min-height:450px}.project-prep fieldset,.project-prep .prep-result{break-inside:avoid}}
