.suivi-link{text-align:center;color:#0d5d8f;font-size:13px;font-weight:800;text-decoration:none;display:block}.admin-shell{max-width:1050px;margin:auto;padding:34px 18px 80px}.login-wrap{place-items:center;min-height:90vh;display:grid}.login-card{background:#fff;border:1px solid #dce4e8;border-radius:22px;gap:18px;width:min(420px,100%);padding:32px;display:grid;box-shadow:0 18px 60px #1728361a}.login-card .brand{margin-bottom:5px}.back-link{text-align:center;color:#6a7680;font-size:13px;text-decoration:none}.admin-head{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.link-button{text-decoration:none}.stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.stats div{background:#fff;border:1px solid #dce4e8;border-radius:15px;padding:16px}.stats strong{font-size:27px;display:block}.stats span{color:#6a7680;font-size:12px}.search{background:#fff;margin-bottom:15px;padding:15px}.reception-list{gap:8px;display:grid}.project-report-list{gap:14px;display:grid}.report-project-folder{background:#fff;border:1px solid #dce4e8;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #1728360a}.report-project-folder>summary{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:17px 18px;list-style:none;display:grid}.report-project-folder>summary::-webkit-details-marker{display:none}.report-project-folder>summary>span:nth-child(2){gap:3px;display:grid}.report-project-folder>summary small{color:#6a7680;font-size:12px}.report-folder-icon{color:#0d5d8f;background:#edf5f8;border-radius:10px;place-items:center;width:38px;height:34px;font-size:20px;display:grid}.folder-chevron{color:#6a7680;font-size:22px;transition:transform .2s}.report-project-folder[open] .folder-chevron{transform:rotate(180deg)}.report-project-folder>.reception-list{border-top:1px solid #edf1f3;padding:0 12px 12px}.report-type-folders{background:#f7f9fa;border-top:1px solid #edf1f3;gap:10px;padding:12px;display:grid}.report-type-folder{background:#fff;border:1px solid #dce4e8;border-radius:12px;overflow:hidden}.report-type-folder>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px;font-weight:800;list-style:none;display:flex}.report-type-folder>summary::-webkit-details-marker{display:none}.report-type-folder>summary small{color:#6a7680;font-weight:600}.report-type-folder.measurement>summary{color:#0d5d8f}.report-type-folder.reception>summary{color:#744d10}.report-type-folder .reception-list{border-top:1px solid #edf1f3;padding:0 10px 10px}.fabrication-summary strong{color:#0d5d8f;font-size:22px}.fabrication-summary small{color:#6a7680}.report-project-folder .reception-row:first-child{margin-top:12px}.reception-row{text-align:left;cursor:pointer;color:#14202b;background:#fff;border:1px solid #dce4e8;border-radius:14px;grid-template-columns:10px 1fr auto 12px;align-items:center;gap:14px;width:100%;padding:15px;display:grid}.status-dot{background:#aaa;border-radius:50%;width:9px;height:9px}.status-dot.accepte{background:#2c9d5a}.status-dot.avec-reserves{background:#e0a32c}.status-dot.refuse{background:#c34c42}.row-main,.row-meta{gap:4px;display:grid}.row-main small,.row-meta small{color:#6a7680}.row-meta{text-align:right}.empty{text-align:center;color:#6a7680;background:#fff;border:1px dashed #dce4e8;border-radius:14px;padding:40px}.modal-backdrop{z-index:50;background:#0e1922b8;padding:24px;position:fixed;inset:0;overflow:auto}.report-sheet{background:#fff;border-radius:18px;max-width:900px;margin:auto;padding:30px}.report-actions{justify-content:flex-end;gap:10px;margin-bottom:24px;display:flex}.report-actions button{background:#fff;border:1px solid #dce4e8;border-radius:10px;padding:10px 14px;font-weight:700}.report-actions .primary{color:#fff;background:#0d5d8f}.report-header{border-bottom:3px solid #0d5d8f;grid-template-columns:190px 1fr auto;align-items:center;gap:22px;padding-bottom:18px;display:grid}.report-brand{align-items:center;gap:10px;display:flex}.report-company{color:#124b72;gap:2px;display:grid}.report-company strong{letter-spacing:.04em;font-size:12px}.report-company span{color:#6a7680;font-size:9px}.report-logo{flex:none;place-items:center;width:82px;height:72px;display:grid}.report-logo img{object-fit:contain;width:78px;max-width:100%;height:auto;display:block;position:static}.report-kicker{color:#0d5d8f;text-transform:uppercase;letter-spacing:.12em;margin:0 0 4px;font-size:10px;font-weight:800}.report-title{text-align:center}.report-title h1{color:#14202b;letter-spacing:-.02em;margin:0 0 5px;font-size:20px}.report-header h2{font-size:18px}.report-header p{color:#6a7680;margin:4px 0}.decision-badge{background:#eee;border-radius:9px;margin-left:auto;padding:8px 11px;font-size:12px;font-weight:800}.decision-badge.accepte{color:#176338;background:#e9f7ef}.decision-badge.avec-reserves{color:#7d520d;background:#fff4dd}.decision-badge.refuse{color:#8d2c25;background:#fdeceb}.report-grid{background:#dce4e8;border:1px solid #dce4e8;grid-template-columns:repeat(3,1fr);gap:1px;margin:20px 0;display:grid}.report-grid div{background:#fff;gap:5px;padding:13px;display:grid}.report-grid span,.report-footer span{color:#6a7680;text-transform:uppercase;font-size:11px}.control-table{border:1px solid #dce4e8;border-radius:10px;overflow:hidden}.control-table div{border-bottom:1px solid #dce4e8;justify-content:space-between;padding:10px 13px;display:flex}.control-table div:last-child{border:0}.control-table strong{font-size:12px}.control-table .conforme{color:#176338}.control-table .reserve{color:#9a6714}.control-table .non-conforme{color:#a33b32}.notes-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.notes-grid>div{border:1px solid #dce4e8;border-radius:10px;padding:14px}.notes-grid h3{margin-top:0}.notes-grid p{white-space:pre-wrap;color:#46545e;line-height:1.55}.photo-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.photo-grid img{aspect-ratio:4/3;object-fit:cover;border-radius:9px;width:100%}.report-footer{border-top:1px solid #dce4e8;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;padding-top:16px;display:grid}.report-footer div{gap:5px;display:grid}@media (max-width:700px){.admin-head{align-items:flex-start;gap:18px}.stats{grid-template-columns:1fr 1fr}.reception-row{grid-template-columns:8px 1fr 9px}.row-meta{text-align:left;grid-column:2}.report-sheet{padding:18px}.report-header{grid-template-columns:1fr;align-items:flex-start}.report-title{text-align:left}.decision-badge{margin-left:0}.report-grid{grid-template-columns:1fr 1fr}.notes-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}}@media print{@page{size:A4 portrait;margin:7mm}html,body{background:#fff;width:210mm;margin:0;padding:0}.modal-backdrop{background:#fff;padding:0;position:static}.report-sheet{box-shadow:none;zoom:.74;color:#14202b;border:0;border-radius:0;width:264.8mm;max-width:264.8mm;min-height:0;margin:0;padding:0;font-size:9.5px}.report-actions,.admin-edit-form,.photo-lightbox,.verification-audit,.admin-only{display:none!important}.admin-shell>:not(.modal-backdrop){display:none}.report-header{border-bottom:1.1mm solid #0d5d8f;grid-template-columns:46mm 1fr 34mm;align-items:center;gap:5mm;margin-bottom:2.2mm;padding-bottom:2.2mm;display:grid}.report-brand{gap:2mm}.report-company strong{font-size:8.5px}.report-company span{font-size:7px}.report-title{text-align:center}.report-title h1{margin:0 0 2px;font-size:15px}.report-header h2{font-size:13px}.report-header p{margin:1px 0}.report-logo{place-items:center;width:22mm;height:18mm;display:grid}.report-logo img{object-fit:contain;width:21mm;max-width:21mm;height:auto;display:block;position:static}.report-kicker{letter-spacing:.1em;margin:0 0 1mm;font-size:7.5px}.decision-badge{text-align:center;margin-left:0;padding:2mm}.report-sheet h3{margin:6px 0 4px;font-size:11px}.report-grid,.dimension-summary,.notes-grid{gap:7px}.report-grid>div,.dimension-summary>div,.control-table>div,.notes-grid>div,.plan-comparison{padding:5px 7px}.control-table{gap:3px}.notes-grid p{margin:3px 0 0;line-height:1.3}.photo-grid{grid-template-columns:repeat(4,1fr);gap:5px}.photo-grid img{aspect-ratio:auto;break-inside:avoid;border-radius:4px;height:20mm}.report-footer{margin-top:6px;padding-top:5px}.dimension-alert{gap:2px;margin:5px 0 6px;padding:7px 9px}.dimension-alert strong{font-size:11px}.dimension-override{margin:6px 0;padding:6px 8px}.print-dense{zoom:.68;width:288.2mm;max-width:288.2mm}.report-sheet,.report-header,.report-grid,.dimension-summary,.control-table,.notes-grid,.photo-grid,.report-footer{break-inside:avoid}}.technicians-card{margin-bottom:20px}.technician-create{grid-template-columns:1.2fr 1fr 1fr auto;gap:10px;margin:16px 0;display:grid}.technician-list{display:grid}.technician-list>div{border-top:1px solid var(--line);grid-template-columns:1fr 170px auto auto;align-items:center;gap:10px;padding:12px 0;display:grid}.technician-list>div.blocked{opacity:.65}.technician-list span{gap:3px;display:grid}.technician-list small{color:var(--muted)}.technician-list button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:10px;font-weight:800}.technician-list button:disabled{opacity:.45}.technician-list .block-user{color:#a33b32}.technician-list .activate-user{color:#176338}@media (max-width:800px){.technician-create{grid-template-columns:1fr 1fr}.technician-list>div{grid-template-columns:1fr auto}.technician-list input{grid-column:1/-1}}@media (max-width:550px){.technician-create{grid-template-columns:1fr}}.excel-upload{color:var(--blue);cursor:pointer;background:#f7fbfc;border:1px dashed #8ca8b8;border-radius:12px;justify-content:center;align-items:center;padding:12px 16px;display:inline-flex}.excel-upload input{opacity:0;width:1px;position:absolute}.import-review{border:1px solid var(--line);background:#fff;border-radius:16px;margin:18px 0;padding:18px}.import-review-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.import-table{gap:8px;display:grid;overflow:auto}.import-row{grid-template-columns:110px 120px 170px 100px 100px 90px 100px auto;gap:7px;min-width:950px;display:grid}.import-row input{padding:9px}.import-row button{color:#8d2c25;cursor:pointer;background:#fdeceb;border:0;border-radius:9px;padding:8px}@media (max-width:650px){.import-review-head{align-items:stretch;display:grid}.excel-upload{width:100%}}.admin-edit-form{background:#f7fbfc;border:2px solid #b8d2df;border-radius:16px;gap:14px;margin:18px 0;padding:18px;display:grid}.admin-edit-form textarea{min-height:80px}.photo-grid img{cursor:zoom-in}.photo-lightbox{z-index:1000;background:#000000eb;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0;overflow:auto}.photo-lightbox img{object-fit:contain;touch-action:pinch-zoom;max-width:96vw;max-height:92vh}.photo-lightbox button{color:#111;cursor:pointer;background:#fff;border:0;border-radius:50%;width:44px;height:44px;font-size:28px;position:fixed;top:14px;right:18px}.questionnaire-admin{margin-bottom:20px}.question-editor{gap:10px;display:grid}.question-editor-row{grid-template-columns:1fr auto auto;align-items:center;gap:10px;display:grid}.question-required{white-space:nowrap;align-items:center;gap:7px;display:flex}.question-required input{width:18px}.question-buttons{gap:6px;display:flex}.question-buttons button,.questionnaire-actions>button:not(.primary){border:1px solid var(--line);color:var(--blue);background:#fff;border-radius:8px;padding:9px;font-weight:700}.questionnaire-actions{justify-content:space-between;gap:12px;margin-top:14px;display:flex}.admin-control-editor{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px;display:grid}@media (max-width:700px){.question-editor-row,.admin-control-editor{grid-template-columns:1fr}.question-buttons{justify-content:flex-end}.questionnaire-actions{display:grid}}.settings-page{padding-bottom:90px}.settings-intro{grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0;display:grid}.settings-intro a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:15px;gap:5px;padding:16px;text-decoration:none;display:grid}.settings-intro span{color:var(--muted);font-size:12px}.settings-page>div,.settings-reperes{scroll-margin-top:20px}.settings-project{border:1px solid var(--line);background:#fff;border-radius:14px;margin-top:14px;overflow:hidden}.settings-project>summary{cursor:pointer;justify-content:space-between;padding:16px 18px;font-weight:800;display:flex}.settings-project>summary span{color:var(--muted);font-size:12px}.settings-project .opening-index{padding:0 18px 18px}@media (max-width:760px){.settings-intro{grid-template-columns:1fr 1fr}.settings-page .admin-head{align-items:flex-start}.settings-project .opening-index{padding:0 10px 14px}}.verification-filters{gap:9px;margin:0 0 14px;display:flex;overflow:auto}.verification-filters button{white-space:nowrap;color:#46545e;cursor:pointer;background:#fff;border:1px solid #dce4e8;border-radius:999px;align-items:center;gap:8px;padding:9px 13px;font-weight:800;display:flex}.verification-filters button strong{background:#edf1f3;border-radius:999px;place-items:center;min-width:23px;height:23px;padding:0 6px;display:grid}.verification-filters button.active{color:#0d5d8f;background:#edf5f8;border-color:#0d5d8f}.verification-filters button.active.pending{color:#8a5a0d;background:#fff7e8;border-color:#d69a32}.verification-filters button.active.verified{color:#176338;background:#edf8f1;border-color:#52a777}.category-tools{align-items:center;gap:10px;display:flex}.category-tools a{color:#0d5d8f;background:#f7fbfc;border:1px solid #b8d2df;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800;text-decoration:none}.verification-label{font-weight:800}.verification-label.pending{color:#9a6714}.verification-label.verified{color:#176338}.report-actions .verify-button{color:#fff;background:#26844d;border-color:#26844d}.report-actions .verify-button:disabled{opacity:.5}.verified-stamp{color:#176338;background:#e9f7ef;border-radius:10px;align-items:center;padding:10px 13px;font-weight:900;display:inline-flex}.verification-audit{color:#365747;text-align:right;background:#edf8f1;border-radius:10px;margin:-10px 0 18px;padding:11px 14px;font-size:12px}.client-report-action{color:#fff;background:linear-gradient(135deg,#0d5d8f,#08466d);border-radius:14px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex;box-shadow:0 10px 24px #0d5d8f2e}.client-report-action>div:first-child{gap:4px;display:grid}.client-report-action strong{font-size:14px}.client-report-action small{color:#dcecf4;line-height:1.35}.client-report-buttons{flex-wrap:wrap;flex:none;gap:8px;display:flex}.client-report-buttons a,.client-report-buttons button{color:#0d5d8f;font:inherit;cursor:pointer;background:#fff;border:1px solid #ffffffbf;border-radius:10px;padding:11px 15px;font-size:12px;font-weight:900;text-decoration:none}.client-report-buttons button{color:#fff;background:#0b507b}.client-report-buttons button:disabled{cursor:wait;opacity:.7}.share-status{color:#e7f5fc;text-align:right;flex-basis:100%;margin:2px 0 0;font-size:11px;line-height:1.35}@media (max-width:700px){.report-actions{flex-wrap:wrap;justify-content:flex-start}.report-actions button,.verified-stamp{text-align:center;flex:auto;justify-content:center}.category-tools{flex-direction:column;align-items:flex-end}.report-type-folder>summary{align-items:flex-start}.verification-audit{text-align:left}.client-report-action{flex-direction:column;align-items:stretch}.client-report-buttons{grid-template-columns:1fr;display:grid}.client-report-buttons a,.client-report-buttons button{text-align:center;width:100%}.share-status{text-align:left}}.dimension-alert{color:#8d2c25;background:#fff0ef;border:2px solid #d4473b;border-radius:12px;gap:5px;margin:10px 0 12px;padding:13px 15px;display:grid}.dimension-alert strong{font-size:15px}.dimension-alert span,.dimension-alert small{color:#8d2c25}.dimension-summary .measure-alert{background:#fff0ef;border:2px solid #d4473b}.dimension-summary .measure-alert span,.dimension-summary .measure-alert strong{color:#a32620}.dimension-override{color:#68470e;background:#fff7e8;border-left:4px solid #d69a32;margin:12px 0;padding:12px 14px}.dimension-override p{margin:5px 0 0}.general-card{border-left:4px solid #0d5d8f}.grid.three{grid-template-columns:repeat(3,1fr)}.measure-title{color:#0d5d8f;text-transform:uppercase;letter-spacing:.08em;margin:20px 0 10px;font-size:13px}.measure-title:first-of-type{margin-top:0}.segmented .active.oui{color:#176338;background:#e9f7ef;border-color:#a9dbc0}.segmented .active.non{color:#8d2c25;background:#fdeceb;border-color:#e8b4b0}.segmented .active.na{color:#52616b;background:#eef2f4;border-color:#cbd5da}.reception-row{cursor:default!important;grid-template-columns:10px 1fr auto!important;padding:10px 12px!important}.row-open{text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;grid-template-columns:1fr auto;gap:14px;padding:5px;display:grid}.delete-row{color:#9b352d;cursor:pointer;background:#fff5f4;border:1px solid #e8b4b0;border-radius:9px;padding:9px 10px;font-size:11px;font-weight:800}.control-table .oui{color:#176338}.control-table .non{color:#a33b32}.control-table .na{color:#6a7680}.dimension-summary{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px;display:grid}.dimension-summary div{background:#f5f8f9;border:1px solid #dce4e8;border-radius:10px;gap:6px;padding:13px;display:grid}.dimension-summary span{color:#6a7680;text-transform:uppercase;font-size:11px}.fabrication-card{background:#edf5f8;border:1px solid #bdd6e4;border-radius:14px;margin-top:22px;padding:18px}.fabrication-head{justify-content:space-between;align-items:start;gap:12px;margin-bottom:15px;display:flex}.fabrication-head h3{color:#0d5d8f;margin:0 0 4px}.fabrication-head p{color:#6a7680;margin:0;font-size:12px}.fabrication-head>span{color:#0d5d8f;background:#fff;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800}.fabrication-allowances{margin-bottom:14px}.fabrication-result{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fabrication-result div{background:#fff;border-radius:11px;gap:5px;padding:14px;display:grid}.fabrication-result span{color:#6a7680;text-transform:uppercase;font-size:11px}.fabrication-result strong{color:#0d5d8f;font-size:21px}@media (max-width:700px){.grid.three{grid-template-columns:repeat(3,1fr);gap:8px}.reception-row{grid-template-columns:8px 1fr auto!important}.row-open{grid-template-columns:1fr}.row-meta{text-align:left;grid-column:auto!important}.dimension-summary,.fabrication-result{grid-template-columns:1fr}.fabrication-head{display:grid}.delete-row{padding:8px 7px}}.official-logo{background:#fff;border-radius:14px;flex:none;width:78px;height:68px;position:relative;overflow:hidden}.official-logo img{width:255px;max-width:none;position:absolute;top:-113px;left:-93px}.logo-centered{margin:0 auto 12px}.admin-branding{align-items:center;gap:16px;display:flex}.report-logo{border-radius:0;width:85px;height:72px}.report-logo img{width:266px;top:-117px;left:-96px}@media (max-width:600px){.official-logo{width:66px;height:58px}.official-logo img{width:204px;top:-88px;left:-73px}.admin-branding{align-items:flex-start}.report-logo{width:75px;height:64px}.report-logo img{width:230px;top:-101px;left:-83px}}.plans-shell{max-width:900px;margin:auto;padding:32px 18px 80px}.plans-head{align-items:center;gap:18px;margin-bottom:24px;display:flex}.project-plans{gap:14px;display:grid}.project-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px}.project-card h2{margin-bottom:12px}.plan-link{border-top:1px solid var(--line);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;text-decoration:none;display:grid}.pdf-icon{color:#a33b32;background:#fdeceb;border-radius:8px;padding:7px;font-size:11px;font-weight:900}.plan-link span:nth-child(2){gap:3px;display:grid}.plan-link small{color:var(--muted)}.plan-link b{color:var(--blue);font-size:13px}.plans-nav{justify-content:space-between;margin-top:22px;display:flex}.plans-nav a,.secondary-link{color:var(--blue);font-size:13px;font-weight:800;text-decoration:none}.plans-admin{margin:0 0 20px}.plans-admin-title{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.success-message{color:#176338;background:#e9f7ef;border-radius:10px;padding:11px}.empty.compact{padding:18px}.create-project-form{grid-template-columns:1fr auto;gap:12px;margin:18px 0;display:grid}.project-folders{gap:14px;margin-top:18px;display:grid}.project-folder{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.project-folder>header{background:#f5f8f9;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.project-folder>header>div{align-items:center;gap:9px;display:flex}.project-folder header small{color:var(--muted)}.folder-icon{color:#d59b24;font-size:20px}.danger-link{color:#a33b32;cursor:pointer;background:0 0;border:0;font-weight:800}.folder-upload{grid-template-columns:1fr auto;gap:10px;padding:14px;display:grid}.folder-plan{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.folder-plan span{gap:3px;display:grid}.folder-plan small{color:var(--muted)}.folder-plan a,.folder-plan button{color:var(--blue);cursor:pointer;background:0 0;border:0;font-weight:800;text-decoration:none}.folder-plan button{color:#a33b32}@media (max-width:700px){.plans-admin-title{display:grid}.plans-head{align-items:flex-start}.plan-link{grid-template-columns:auto 1fr}.plan-link b{grid-column:2}.create-project-form,.folder-upload{grid-template-columns:1fr}.project-folder>header{align-items:flex-start}.project-folder>header>div{flex-wrap:wrap;align-items:flex-start}.folder-plan{grid-template-columns:1fr auto}.folder-plan button{grid-column:2}}.single-plan-shell{background:#eef3f5;min-height:100vh;padding:18px}.single-plan-shell>header{justify-content:space-between;align-items:center;gap:16px;max-width:1320px;margin:0 auto 14px;display:flex}.single-plan-shell h1{margin:3px 0;font-size:22px}.single-plan-actions{gap:9px;display:flex}.single-plan-actions button,.single-plan-actions a{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;border-radius:10px;padding:10px 14px;font-weight:800;text-decoration:none}.single-plan-canvas{text-align:center;max-width:1320px;margin:auto;overflow:auto}.single-plan-canvas canvas{background:#fff;max-width:100%;height:auto;box-shadow:0 8px 30px #1728361f}.single-plan-status{text-align:center;color:var(--muted);padding:30px}@media (max-width:650px){.single-plan-shell>header{align-items:flex-start;display:grid}.single-plan-actions{width:100%}.single-plan-actions>*{text-align:center;flex:1}}.admin-actions{align-items:center;gap:14px;display:flex}.index-project{margin-bottom:16px}.opening-index{margin-top:16px}.auto-index{background:#edf5f8;border:1px solid #c8dce6;border-radius:15px;grid-template-columns:1fr minmax(210px,280px) auto;align-items:end;gap:12px;padding:18px;display:grid}.auto-index h3{margin:0 0 5px}.analysis-progress{background:#d8e5eb;border-radius:99px;grid-column:1/-1;height:7px;overflow:hidden}.analysis-progress span{background:var(--blue);height:100%;transition:width .2s;display:block}.warning-message{color:#7d520d;background:#fff4dd;border-radius:10px;padding:11px}.manual-opening{margin:16px 0}.manual-opening summary{color:var(--blue);cursor:pointer;font-weight:800}.opening-form{grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;display:grid}.opening-form .primary{grid-column:1/-1}.opening-list{display:grid}.opening-list>div{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:11px 0;display:grid}.opening-list span{gap:3px;display:grid}.opening-list small{color:var(--muted)}.opening-list a,.opening-list button{color:var(--blue);cursor:pointer;background:0 0;border:0;font-weight:800;text-decoration:none}.opening-list button{color:#a33b32}.plan-reference,.plan-comparison{background:#edf5f8;border:1px solid #c8dce6;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px;display:flex}.plan-reference div,.plan-comparison div{gap:4px;display:grid}.plan-reference span,.plan-comparison span{color:var(--muted);font-size:12px}.plan-reference a,.plan-comparison a{color:var(--blue);font-size:13px;font-weight:800;text-decoration:none}@media (max-width:850px){.auto-index{grid-template-columns:1fr 1fr}.auto-index>div:first-child{grid-column:1/-1}}@media (max-width:700px){.admin-actions{align-items:stretch;display:grid}.auto-index{grid-template-columns:1fr}.auto-index>div:first-child{grid-column:auto}.opening-form{grid-template-columns:1fr}.opening-list>div{grid-template-columns:1fr auto}.opening-list button{grid-column:2}.plan-reference,.plan-comparison{align-items:flex-start;display:grid}}.mode-choice{grid-template-columns:1fr;gap:12px;margin:12px 0 24px;display:grid}.conditional-fields{margin-top:16px}.status-note{color:#53636e;background:#f4f8fa;border-radius:10px;margin:14px 0 0;padding:12px;font-size:13px;line-height:1.45}.roller-card{border-left:4px solid #0d5d8f}.mode-choice button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:22px;grid-template-columns:auto auto 1fr auto;align-items:center;gap:16px;min-height:112px;padding:18px 20px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 30px #1728360f}.mode-choice button:before{content:"";background:var(--mode-color,#0d5d8f);width:5px;position:absolute;inset:0 auto 0 0}.mode-choice button:hover{border-color:#c8d8df;transform:translateY(-2px);box-shadow:0 14px 34px #1728361a}.mode-choice button:active{transform:scale(.99)}.preframe-mode{--mode-color:#167d8d;--mode-pale:#e7f5f5}.reception-mode{--mode-color:#0d5d8f;--mode-pale:#edf5f8}.measurement-mode{--mode-color:#a97820;--mode-pale:#fff5df}.mode-choice .mode-number{color:#9aa6ad;letter-spacing:.12em;align-self:start;font-size:11px;font-weight:900}.mode-choice .mode-icon{background:var(--mode-pale);width:48px;height:48px;color:var(--mode-color);border-radius:15px;place-items:center;font-size:21px;font-weight:900;display:grid}.mode-choice .mode-copy{gap:6px;line-height:1.25;display:grid}.mode-choice .mode-copy strong{color:var(--ink);font-size:18px}.mode-choice .mode-copy small{color:var(--muted);font-size:13px;line-height:1.45}.mode-choice .mode-arrow{width:34px;height:34px;color:var(--mode-color);background:#f3f6f7;border-radius:50%;place-items:center;font-size:18px;transition:transform .18s;display:grid}.mode-choice button:hover .mode-arrow{transform:translate(3px)}.workflow-intro{justify-content:space-between;align-items:flex-end;margin:4px 2px 12px;padding-top:2px;display:flex}.workflow-intro span{color:#87939b;letter-spacing:.16em;font-size:10px;font-weight:900}.workflow-intro strong{color:#3a4953;font-size:13px}.home-heading{flex:1;min-width:0}.home-app-line{justify-content:space-between;align-items:center;gap:12px;margin-bottom:5px;display:flex}.home-app-line .eyebrow{margin:0}.connected-badge{text-overflow:ellipsis;white-space:nowrap;color:#176338;background:#e9f7ef;border-radius:999px;max-width:48%;padding:6px 9px;font-size:10px;font-weight:800;overflow:hidden}.hero:has(.home-heading){padding:16px 2px 22px}.hero:has(.home-heading) h1{font-size:30px}.hero:has(.home-heading) .subtitle{font-size:14px;line-height:1.45}.change-mode{color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.export-card{grid-template-columns:1fr minmax(220px,280px) auto auto;align-items:end;gap:14px;margin-bottom:20px;display:grid}.secondary-action{border:1px solid var(--blue);color:var(--blue);text-align:center;border-radius:12px;padding:14px 18px;font-weight:800}.disabled-link{opacity:.5;pointer-events:none}@media (max-width:900px){.export-card{grid-template-columns:1fr 1fr}.export-card>div{grid-column:1/-1}}@media (max-width:700px){.mode-choice,.export-card{grid-template-columns:1fr}.export-card>div{grid-column:auto}.mode-choice button{gap:11px;min-height:102px;padding:16px 14px}.mode-choice .mode-number{display:none}.mode-choice .mode-icon{border-radius:13px;width:43px;height:43px}.mode-choice .mode-copy strong{font-size:16px}.mode-choice .mode-copy small{font-size:12px}.mode-choice .mode-arrow{width:30px;height:30px}.home-app-line{align-items:flex-start;display:grid}.connected-badge{max-width:100%}.hero:has(.home-heading){align-items:center}.hero:has(.home-heading) h1{font-size:25px}}.technician-login{margin:auto}.logout-link{color:#a33b32;cursor:pointer;background:0 0;border:0;margin:18px auto 0;font-weight:800;display:block}.mobile-nav,.form-action-bar{z-index:30;left:50%;bottom:max(10px,env(safe-area-inset-bottom));border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-radius:18px;grid-template-columns:repeat(4,1fr);gap:5px;width:min(720px,100% - 24px);padding:7px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 12px 36px #14202b2e}.mobile-nav a,.mobile-nav button,.form-action-bar a,.form-action-bar button{color:#66737d;min-width:0;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;gap:3px;padding:7px 3px;font-size:11px;font-weight:800;text-decoration:none;display:grid}.mobile-nav span,.form-action-bar span{font-size:19px;line-height:1}.mobile-nav .active{color:var(--blue);background:var(--pale)}.mobile-nav .nav-main{color:#fff;background:var(--blue)}.form-action-bar{grid-template-columns:1fr 1.7fr 1fr}.form-action-bar .save-action{color:#fff;background:var(--blue);font-size:12px}.form-action-bar .save-action:disabled{opacity:.5}.success-actions{justify-content:center;gap:18px;margin-top:22px;display:flex}.success-actions a,.success-actions button{color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:800;text-decoration:none}.shell{padding-bottom:112px}.my-report-list{gap:10px;margin:16px 0;display:grid}.my-report-row{text-align:left;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:15px;justify-content:space-between;gap:12px;padding:16px;display:flex}.my-report-row span{gap:5px;display:grid}.my-report-row span:last-child{text-align:right}.my-report-row small{color:var(--muted)}.decision-text.accepte{color:#176338}.decision-text.avec-reserves{color:#8a5b0b}.decision-text.refuse{color:var(--red)}.technician-report{border:1px solid var(--line);background:#fff;border-radius:18px;padding:24px}.tech-report-head{border-bottom:3px solid var(--blue);justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;padding-bottom:16px;display:flex}.tech-report-head img{object-fit:contain;width:155px;max-height:72px}.tech-report-head div{text-align:right}.tech-report-head p{color:var(--muted);text-transform:uppercase;margin:0;font-size:12px}.tech-report-head h1{margin:4px 0;font-size:20px}.tech-report-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:18px;display:grid}.tech-report-grid div{background:#fff;gap:4px;padding:12px;display:grid}.tech-report-grid span{text-transform:uppercase;color:var(--muted);font-size:11px}.measure-report{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 18px;display:grid}.measure-report span,.report-notes{background:#f5f8f9;border-radius:9px;padding:11px;font-size:13px}.tech-photos{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.tech-photos img{object-fit:cover;border-radius:8px;width:100%;height:130px}.profile-card{text-align:center;max-width:420px;margin:auto}.profile-avatar{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 14px;font-size:28px;font-weight:800;display:grid}.profile-card p{color:var(--muted)}.logout-button{width:100%;color:var(--red);background:#fff5f4;border:1px solid #e3b5b1;border-radius:11px;margin-top:18px;padding:13px;font-weight:800}.admin-mobile-nav{z-index:30;border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,1fr);width:min(100%,880px);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 25px #14202b14}.admin-mobile-nav a{text-align:center;color:var(--muted);padding:14px 5px;font-size:12px;font-weight:700;text-decoration:none}.admin-mobile-nav a.active{color:var(--blue);background:var(--pale)}@media (max-width:600px){.my-report-row{padding:13px}.tech-report-grid,.measure-report{grid-template-columns:1fr 1fr}.technician-report{padding:14px}.tech-report-head img{width:110px}.tech-report-head h1{font-size:16px}.tech-photos{grid-template-columns:1fr 1fr}}@media print{@page{size:A4;margin:8mm}.reports-page>.hero,.reports-page>.mobile-nav,.technician-report .report-actions{display:none!important}.reports-page{max-width:none!important;padding:0!important}.technician-report{border:0!important;border-radius:0!important;padding:0!important}.tech-report-head{margin-bottom:10px}.tech-report-grid div{padding:8px}.technician-report h2{font-size:14px}.tech-photos img{height:85px}.report-notes{padding:8px}.admin-mobile-nav{display:none!important}}:root{--ink:#14202b;--muted:#6a7680;--blue:#0d5d8f;--pale:#edf5f8;--line:#dce4e8;--red:#a33b32;--amber:#a26914}*{box-sizing:border-box}body{color:var(--ink);background:#f2f5f6;margin:0;font-family:Arial,Helvetica,sans-serif}.shell{max-width:780px;margin:auto;padding:24px 16px 72px}.hero{align-items:center;gap:18px;padding:12px 2px 28px;display:flex}.brand{background:var(--blue);color:#fff;letter-spacing:-1px;border-radius:18px;place-items:center;width:64px;height:64px;font-size:22px;font-weight:900;display:grid}.eyebrow{color:var(--blue);text-transform:uppercase;letter-spacing:.14em;margin:0 0 5px;font-size:12px;font-weight:800}h1{letter-spacing:-.04em;margin:0;font-size:28px}h2{margin:0;font-size:19px}.subtitle,.section-title p{color:var(--muted);margin:5px 0 0;font-size:14px}.form-stack{gap:16px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;box-shadow:0 8px 30px #1728360d}.section-title{align-items:center;gap:12px;margin-bottom:20px;display:flex}.section-title>span{color:var(--blue);background:var(--pale);border-radius:10px;padding:8px;font-size:12px;font-weight:800}.grid{gap:16px;display:grid}.grid.two{grid-template-columns:1fr 1fr}label{color:#35424c;gap:7px;font-size:13px;font-weight:700;display:grid}input,select,textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #ccd6db;border-radius:11px;outline:none;padding:12px 13px;font-weight:400}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0d5d8f1a}textarea{resize:vertical}.checks{gap:14px;display:grid}fieldset{border:0;margin:0;padding:0}legend{margin-bottom:8px;font-size:14px;font-weight:700}.segmented{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.segmented label{text-align:center;cursor:pointer;background:#f5f7f8;border:1px solid #0000;border-radius:9px;padding:10px 5px;font-size:12px;display:block}.segmented input{opacity:0;width:1px;position:absolute}.segmented .active.conforme{color:#176338;background:#e9f7ef;border-color:#a9dbc0}.segmented .active.reserve{color:#7d520d;background:#fff4dd;border-color:#eccd8d}.segmented .active.non-conforme{color:#8d2c25;background:#fdeceb;border-color:#e8b4b0}.upload{text-align:center;cursor:pointer;background:#f7fbfc;border:1.5px dashed #9db4c0;border-radius:14px;margin-bottom:16px;padding:22px}.upload input{opacity:0;width:1px;position:absolute}.upload strong{color:var(--blue);font-size:14px}.upload span{color:var(--muted);font-weight:400}.decision{gap:9px;margin-bottom:18px;display:grid}.decision label{border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.decision input,.consent input{width:18px;height:18px;accent-color:var(--blue)}.decision span{color:var(--muted);gap:3px;font-weight:400;display:grid}.decision strong{color:var(--ink)}.consent{grid-column:1/-1;align-items:flex-start;gap:9px;margin-top:18px;line-height:1.5;display:flex}.primary{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:13px;padding:15px 20px;font-size:15px;font-weight:800}.submit{width:100%;box-shadow:0 8px 22px #0d5d8f38}.primary:disabled{opacity:.65}.error{color:var(--red);background:#fdeceb;border-radius:10px;margin:0;padding:12px}.footer-note{text-align:center;color:var(--muted);margin:0;font-size:12px}.success-card{text-align:center;border:1px solid var(--line);background:#fff;border-radius:22px;margin-top:12vh;padding:38px 26px}.success-card p:not(.eyebrow){color:var(--muted);line-height:1.6}.success-icon{color:#176338;background:#e9f7ef;border-radius:50%;place-items:center;width:60px;height:60px;margin:0 auto 18px;font-size:28px;font-weight:700;display:grid}@media (max-width:600px){.shell{padding:18px 12px 60px}.grid.two{grid-template-columns:1fr}.card{padding:17px}.hero{align-items:flex-start}.brand{border-radius:15px;width:54px;height:54px}h1{font-size:24px}.segmented label{padding:10px 3px;font-size:11px}}
