.pm-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px}.pm-tabs button{border:1px solid var(--line);background:#fff;color:var(--navy);padding:10px 14px;border-radius:9px;font-weight:700;cursor:pointer}.pm-tabs button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.pm-stage-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.pm-stage-row b{color:var(--gold-dark,#9a6b00)}.pm-big-number,.pm-total{font-size:30px;font-weight:800;color:var(--navy);margin:12px 0}.pm-package-card{margin-top:18px}.pm-package-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.pm-package-grid article{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.pm-package-grid article span{color:#526477}.pm-package-grid button{border:1px solid #d6a227;background:#fff7e5;border-radius:8px;padding:8px;cursor:pointer}.pm-internal{background:#fff7e5;color:#765800;font-weight:700}.pm-warning{padding:10px 12px;border-radius:8px;background:#fff3cd;color:#765800}.pm-dictionary{display:grid;grid-template-columns:150px 1fr;gap:8px 12px}.pm-dictionary dt{font-weight:700}.pm-dictionary dd{margin:0}.pm-simulator{align-items:start}.pm-simulator .card{height:100%}
@media(max-width:1000px){.pm-package-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.pm-tabs{display:grid;grid-template-columns:1fr 1fr}.pm-package-grid{grid-template-columns:1fr}.pm-dictionary{grid-template-columns:1fr}.pm-dictionary dd{margin-bottom:8px}}
.pm-catalog-card,.pm-quote-builder{margin-bottom:18px}.pm-section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.pm-section-head h2,.pm-section-head p{margin-top:0}.pm-section-head p{color:#526477}.pm-packages{margin-top:14px}.pm-packages summary{cursor:pointer;font-weight:800;color:var(--navy);padding:10px 0}.pm-quote-builder{overflow:hidden}.pm-quote-header{margin-bottom:14px}.pm-simulation-strip{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px;padding:14px;background:#f5f8fb;border:1px solid var(--line);border-radius:10px;margin:14px 0}.pm-simulation-strip label{display:grid;gap:6px;font-size:12px;font-weight:700}.pm-simulation-strip input,.pm-simulation-strip select{width:100%;min-width:0}.pm-quote-line-head,.pm-quote-line{display:grid;grid-template-columns:.7fr 1.8fr .65fr .5fr .8fr .7fr .85fr .55fr .8fr .85fr 36px;gap:7px;align-items:center}.pm-quote-line-head{padding:8px 4px;color:#6c7d8e;font-size:10px;font-weight:800;text-transform:uppercase}.pm-quote-line{position:relative;padding:8px 0;border-top:1px solid var(--line)}.pm-quote-line input{width:100%;min-width:0}.pm-quote-line output{font-size:12px;font-weight:700;text-align:right}.pm-quote-line>button{border:0;border-radius:8px;background:#fde9e8;color:#a83b36;font-size:20px;cursor:pointer}.pm-floor-alert{grid-column:5/7;color:#a83b36;font-weight:700}.pm-line-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0}.pm-line-actions small{color:#765800}.pm-quote-footer{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}#pmQuoteSummary{padding:16px;background:#f5f8fb;border:1px solid var(--line);border-radius:10px}#pmQuoteSummary h3{margin-top:0}#pmQuoteSummary p{display:flex;justify-content:space-between;gap:14px;margin:8px 0}#pmQuoteSummary .pm-grand-total{font-size:17px;color:var(--navy);padding-top:9px;border-top:2px solid #d6a227}
@media(max-width:1200px){.pm-simulation-strip{grid-template-columns:repeat(3,1fr)}.pm-quote-line-head{display:none}.pm-quote-line{grid-template-columns:repeat(4,1fr);padding:12px;border:1px solid var(--line);border-radius:10px;margin:10px 0}.pm-quote-line input:nth-child(2){grid-column:span 2}.pm-quote-line output{padding:8px;background:#f5f8fb;border-radius:6px}.pm-floor-alert{grid-column:1/-1}.pm-quote-footer{grid-template-columns:1fr}}
@media(max-width:700px){.pm-section-head{display:block}.pm-simulation-strip,.pm-quote-line{grid-template-columns:1fr 1fr}.pm-quote-line input:nth-child(2){grid-column:1/-1}.pm-line-actions{align-items:flex-start;flex-direction:column}}
.pm-finance-routing{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.pm-finance-routing button{display:grid;gap:5px;text-align:left;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}.pm-finance-routing button:hover{border-color:#d6a227;background:#fffaf0}.pm-finance-routing b{color:var(--navy);font-size:14px}.pm-finance-routing span{color:#526477}@media(max-width:700px){.pm-finance-routing{grid-template-columns:1fr}}
/* Repères des grands domaines — couleurs du logo ELELYON. */
.sidebar .nav-section-title{margin:9px 8px 5px;padding:7px 9px;border-left:4px solid #e9aa24;border-radius:5px;background:linear-gradient(90deg,#e9aa24 0,#f4c45a 100%);color:#11263d!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em!important;box-shadow:0 2px 7px rgba(0,0,0,.12)}
.sidebar [data-page="dashboard"],.sidebar [data-page="projects"]{margin-top:6px;border:1px solid #e9aa24!important;background:#173451!important;color:#fff!important;font-weight:800}.sidebar [data-page="dashboard"] span,.sidebar [data-page="projects"] span{color:#f4c45a}.sidebar [data-page="dashboard"].active,.sidebar [data-page="projects"].active{background:#e9aa24!important;color:#11263d!important}
.sidebar .nav-section{padding-bottom:5px;border-bottom:1px solid rgba(244,196,90,.18)}
#pmQuoteLines select[data-k="code"]{width:100%;min-width:0;border-color:#d6a227;background:#fffaf0;font-weight:700;color:#173451}
.pm-report-files{margin-top:16px}.pm-finding-head,.pm-finding-row{display:grid;grid-template-columns:.75fr 1.65fr .8fr .7fr 1.5fr .85fr .8fr .75fr 36px;gap:7px;align-items:start}.pm-finding-head{padding:9px 4px;color:#647688;font-size:10px;font-weight:900;text-transform:uppercase}.pm-finding-row{padding:9px 0;border-top:1px solid var(--line)}.pm-finding-row input,.pm-finding-row select,.pm-finding-row textarea{width:100%;min-width:0}.pm-finding-row textarea{min-height:62px}.pm-finding-row>button{border:0;border-radius:8px;background:#fde9e8;color:#a83b36;font-size:20px}.pm-report-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:14px}.pm-report-meta p{display:grid;gap:5px;margin:0;padding:10px;border:1px solid var(--line);border-radius:8px}.pm-report-meta b{font-size:10px;text-transform:uppercase;color:#647688}
@media(max-width:1100px){.pm-finding-head{display:none}.pm-finding-row{grid-template-columns:repeat(3,1fr);padding:12px;border:1px solid var(--line);border-radius:10px;margin:10px 0}.pm-finding-row textarea{grid-column:span 2}.pm-report-meta{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.pm-finding-row,.pm-report-meta{grid-template-columns:1fr}.pm-finding-row textarea{grid-column:auto}}
/* CR chantier : espace de rédaction large et colonne de repérage photo. */
.pm-site-report-landscape{width:min(96vw,1500px)!important;max-width:none!important}
.pm-site-report-landscape .modal-body{max-height:88vh}
.pm-site-report-landscape .pm-finding-head,.pm-site-report-landscape .pm-finding-row{grid-template-columns:.65fr 1.45fr .7fr .55fr .62fr 1.3fr .75fr .72fr .68fr 36px}
/* Le formulaire de compte rendu est toujours ouvert sur toute la largeur utile. */
@media(min-width:900px){#modal:has(#pmSiteReportForm) .modal-card{width:min(1500px,96vw);max-width:none}#modal:has(#pmSiteReportForm) .modal-card{max-height:88vh}#modal:has(#pmSiteReportForm) .pm-finding-head,#modal:has(#pmSiteReportForm) .pm-finding-row{grid-template-columns:.65fr 1.45fr .7fr .55fr .62fr 1.3fr .75fr .72fr .68fr 36px}}
