:root{--paper:#fff;--ink:#252b36;--muted:#66707d;--line:#e6e9ee;--accent:#365ed1;--accent-hover:#2649ad;--green:#398060;--amber:#a06a21;--radius:7px;--side:224px;--demo:36px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:14px;font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper);line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}button{color:inherit}input,select,textarea{min-width:0;max-width:100%;background:#fff;color:var(--ink)}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:31px;line-height:1.23;font-weight:600;letter-spacing:-1px}h2{font-size:18px;font-weight:600;letter-spacing:-.35px}h3{font-size:15px;font-weight:600}small{font-size:12px}strong{font-weight:600}.muted{color:var(--muted)}.sub{display:block;color:var(--muted);font-size:12px;margin-top:4px}.caps{font-size:10px;letter-spacing:1.2px;font-weight:600;text-transform:uppercase;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:12px;border:1px solid var(--accent)}.skip:focus{top:10px}.demo-bar{height:var(--demo);position:fixed;inset:0 0 auto;z-index:50;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:12px;font-size:11px;color:var(--muted)}.demo-bar label{display:flex;align-items:center;gap:7px}.demo-bar select{font-size:11px;border:none;color:var(--ink);padding:2px 23px 2px 4px;max-width:160px;cursor:pointer}.demo-bar .divider{height:12px;border-left:1px solid var(--line)}.sidebar{width:var(--side);position:fixed;top:var(--demo);bottom:0;left:0;border-right:1px solid var(--line);background:#fff;padding:29px 19px 20px;display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:11px;padding:0 9px}.brand svg{height:33px;width:33px;color:var(--accent);stroke-width:1.45}.brand-name{font-size:14px;font-weight:600;line-height:1.23;letter-spacing:-.3px}.nav-caption{margin:45px 12px 12px}.nav{display:flex;flex-direction:column;gap:7px}.nav-link{display:flex;gap:12px;align-items:center;position:relative;width:100%;text-align:left;min-height:44px;padding:11px 12px;background:#fff;border:0;border-radius:5px;color:#606977;font-size:13px}.nav-link:hover{color:var(--accent)}.nav-link.active{background:var(--accent);color:#fff}.nav-count{font-size:11px;min-width:18px;text-align:center;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:35px}.sidebar-help{border-top:1px solid var(--line);padding:18px 10px 21px}.sidebar-help p{font-size:12px;line-height:1.65;color:var(--muted)}.sidebar-help strong{display:block;font-size:12px;margin-bottom:5px}.user-block{display:flex;gap:9px;align-items:center;padding:16px 7px 0;border-top:1px solid var(--line);font-size:12px}.user-icon{height:32px;width:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.user-icon svg{height:16px;width:16px}.user-block small{display:block;color:var(--muted);font-size:10px}.settings{margin-left:auto;background:#fff;border:0;padding:5px;display:grid;place-items:center}.workspace{margin-left:var(--side);padding-top:var(--demo);min-height:100vh}.topbar{height:69px;padding:0 39px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff}.breadcrumb{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.breadcrumb .slash{color:#abb0b7}.breadcrumb strong{font-weight:500;color:var(--ink)}.topnote{color:var(--muted);font-size:11px;display:flex;gap:7px;align-items:center}.topnote svg{width:14px;height:14px}.mobile-menu{display:none;background:#fff;border:0;padding:6px}.content{max-width:1370px;margin:auto;padding:38px 40px 26px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}.page-heading p{color:var(--muted);font-size:13px;margin-top:9px}.button{border:1px solid var(--line);border-radius:var(--radius);padding:10px 15px;min-height:41px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:500;font-size:12px;white-space:nowrap;background:#fff}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button:not(.primary):hover{border-color:var(--accent);color:var(--accent)}.button svg{width:16px;height:16px}.button.small{font-size:11px;padding:7px 12px;min-height:34px}.button.wide{width:100%}.link-button{border:0;background:#fff;padding:5px 0;display:inline-flex;align-items:center;gap:7px;color:var(--accent);font-size:12px;text-align:left}.link-button:hover{text-decoration:underline}.link-button svg{height:14px;width:14px}.back{margin-bottom:19px;color:var(--muted);font-size:12px}.back svg{height:14px;width:14px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);margin:10px 0 35px;max-width:850px}.metric{padding:0 27px 0 0;margin-right:27px;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric-line{display:block;width:26px;height:2px;background:var(--accent);margin-bottom:12px}.metric.amber .metric-line{background:var(--amber)}.metric.green .metric-line{background:var(--green)}.metric-row{display:flex;gap:12px;align-items:baseline}.metric-value{font-size:29px;letter-spacing:-1px;font-weight:500;line-height:1.2}.metric-label{font-size:12px;color:var(--muted)}.tabs{display:flex;border-bottom:1px solid var(--line);gap:25px;overflow-x:auto;scrollbar-width:thin}.tab{border:0;border-bottom:2px solid transparent;border-radius:0;background:#fff;color:var(--muted);padding:12px 0 13px;white-space:nowrap;font-size:12px;display:inline-flex;align-items:center;gap:9px}.tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tab-count{font-size:10px;min-width:17px;text-align:center;color:var(--muted)}.filters{display:flex;justify-content:space-between;align-items:center;padding:22px 0 18px;gap:14px}.filter-left{display:flex;align-items:center;gap:10px;flex:1}.search{max-width:305px;min-width:160px;width:100%;position:relative}.search svg{position:absolute;left:12px;top:11px;width:16px;height:16px;color:#7b8490}.search input{width:100%;border:1px solid var(--line);border-radius:6px;padding:10px 12px 10px 36px;font-size:12px;height:39px}.filters select{border:1px solid var(--line);border-radius:6px;padding:9px 31px 9px 12px;height:39px;font-size:12px}.result-count{white-space:nowrap;color:var(--muted);font-size:11px}.list-table{width:100%;border-collapse:collapse;text-align:left}.list-table th{font-size:11px;font-weight:500;color:var(--muted);padding:11px 14px;border-bottom:1px solid var(--line);background:#fff}.list-table td{padding:21px 14px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:middle}.list-table th:first-child,.list-table td:first-child{padding-left:0}.list-table th:last-child,.list-table td:last-child{padding-right:0;text-align:right}.project-cell{display:flex;align-items:center;gap:12px}.project-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;color:#697784;flex-shrink:0}.project-cell strong{font-size:13px;font-weight:550}.list-table .sub{font-size:11px}.state{display:inline-flex;align-items:center;gap:7px;font-size:11px;white-space:nowrap}.state::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.state.amber::before{background:var(--amber)}.state.green::before{background:var(--green)}.state.gray::before{background:#8f97a4}.progress-small{display:flex;gap:4px;max-width:62px;margin-bottom:5px}.progress-small i{display:block;width:18px;height:2px;background:var(--line)}.progress-small i.filled{background:var(--accent)}.progress-caption{font-size:10px;color:var(--muted)}.list-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:11px;color:var(--muted);margin-top:15px}.inline-note{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.inline-note svg{height:14px;width:14px}.next-meeting{display:flex;align-items:center;gap:15px;margin-top:34px;padding:23px 0 0;border-top:1px solid var(--line)}.date-square{min-width:43px;width:43px;height:48px;border:1px solid var(--line);border-top:2px solid var(--accent);border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center}.date-square small{font-size:9px;color:var(--muted)}.date-square strong{font-size:19px;font-weight:500;line-height:1.2}.next-meeting p{font-size:12px}.next-meeting .link-button{margin-left:auto}.fine-footer{margin-top:39px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:14px}.fine-footer button{font-size:10px}.empty{padding:45px 20px;text-align:center;border-bottom:1px solid var(--line);color:var(--muted)}.empty svg{height:24px;width:24px;margin-bottom:12px}.empty p{margin-top:5px;font-size:12px}.empty h2{font-size:17px;color:var(--ink)}.split{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:39px;margin-top:26px}.split .aside{border-left:1px solid var(--line);padding-left:28px}.section{padding-bottom:25px;margin-bottom:25px;border-bottom:1px solid var(--line)}.section:last-child{border-bottom:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.section-heading h2{font-size:16px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 32px}.datum dt{font-size:11px;color:var(--muted);margin-bottom:5px}.datum dd{margin:0;font-size:13px}.datum.full{grid-column:1/-1}.line-note{border-left:2px solid var(--accent);padding:1px 0 1px 15px;color:var(--muted);font-size:12px;line-height:1.75;margin:18px 0 25px}.line-note strong{display:block;color:var(--ink);margin-bottom:4px}.line-note.amber{border-color:var(--amber)}.aside h3{margin-bottom:12px}.aside p{font-size:12px;color:var(--muted);line-height:1.7}.aside .button{margin-top:18px}.aside hr{border:none;border-top:1px solid var(--line);margin:26px 0}.checks{display:flex;flex-direction:column;gap:14px;margin:19px 0}.check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;cursor:pointer}.check input{margin:3px 0 0;accent-color:var(--accent);width:15px;height:15px;flex-shrink:0}.check-label{display:block;font-size:11px;color:var(--muted);margin-top:2px}.file-row{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.file-row>svg{color:var(--muted)}.file-row .button,.file-row .link-button{margin-left:auto}.file-row:last-child{border:0}.private-label{font-size:11px;font-weight:400;color:var(--muted);display:inline-flex;align-items:center;gap:5px}.private-label svg{width:13px;height:13px}.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;list-style:none;margin:8px 0 35px}.step{position:relative;padding:18px 15px 0 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.step.done,.step.current{border-top:2px solid var(--accent);padding-top:17px}.step strong{display:block;font-size:12px;font-weight:500;margin-bottom:5px}.step.done strong,.step.current strong{color:var(--ink)}.step small{font-size:11px}.step-number{border:1px solid var(--line);width:23px;height:23px;border-radius:50%;display:grid;place-items:center;position:absolute;top:-12px;right:22px;background:#fff;font-size:10px}.step.done .step-number,.step.current .step-number{border-color:var(--accent);color:var(--accent)}.step-number svg{width:12px;height:12px}.project-overview{padding:25px 0;margin-bottom:20px;border-bottom:1px solid var(--line)}.project-overview h2{font-size:20px}.summary-trio{display:grid;grid-template-columns:repeat(3,1fr);margin:26px 0 10px;gap:15px}.summary-trio dt{color:var(--muted);font-size:11px;margin-bottom:6px}.summary-trio dd{margin:0;font-size:14px}.action-line{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0 24px}.action-line p{font-size:12px;color:var(--muted);margin-top:5px}.amount{font-size:29px;letter-spacing:-1px;white-space:nowrap;font-weight:500}.quote-table{width:100%;border-collapse:collapse;margin-top:23px;text-align:left}.quote-table th,.quote-table td{padding:19px 20px;border-bottom:1px solid var(--line);vertical-align:top;font-size:12px}.quote-table th{font-weight:500;min-width:205px}.quote-table th:first-child,.quote-table td:first-child{padding-left:0;font-size:11px;color:var(--muted);min-width:130px;width:160px}.quote-table th:not(:first-child){border-top:2px solid var(--accent)}.quote-table td+td,.quote-table th+th{border-left:1px solid var(--line)}.quote-table .amount{font-size:24px;display:block}.quote-table p{white-space:pre-line;line-height:1.8}.scroll-table{overflow-x:auto}.scroll-hint{display:none;font-size:11px;color:var(--muted);margin-top:20px}.quote-selected{color:var(--green);font-size:11px;margin-top:8px;display:block}.form-width{max-width:720px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}.field{display:flex;flex-direction:column;gap:8px;font-size:12px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:500}.field input,.field select,.field textarea{width:100%;border:1px solid #dfe3e9;border-radius:6px;padding:11px 12px;min-height:43px;font-size:13px}.field textarea{resize:vertical;min-height:99px}.field small{font-size:11px;color:var(--muted)}.field input[type=file]{font-size:11px;line-height:2;cursor:pointer}.field input[type=file]::file-selector-button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:4px;padding:5px 10px;font-size:11px;margin-right:12px}.form-section{margin-bottom:29px;padding-bottom:28px;border-bottom:1px solid var(--line)}.form-section h2{font-size:16px;margin-bottom:20px}.form-actions{display:flex;justify-content:space-between;align-items:center;margin:30px 0;gap:15px}.choice-row{display:flex;gap:12px}.choice{flex:1;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:7px;padding:17px 15px;font-size:12px;cursor:pointer}.choice:has(input:checked){border-color:var(--accent)}.choice input{accent-color:var(--accent);margin-top:3px;flex-shrink:0}.choice strong{display:block;font-size:13px}.choice small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.form-error{color:#ad3232;font-size:12px;margin:14px 0;border-left:2px solid #ad3232;padding-left:12px}.activity{padding:14px 0;border-bottom:1px solid var(--line)}.activity p{font-size:12px}.activity small{font-size:10px;color:var(--muted)}.assignment{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);gap:14px;font-size:12px}.assignment:last-child{border:0}.contract-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:28px 0}.contract-numbers dt{font-size:11px;color:var(--muted);margin-bottom:10px}.contract-numbers dd{font-size:25px;letter-spacing:-.5px;margin:0;font-weight:500}.public-shell{padding-top:var(--demo)}.public-header{max-width:1100px;display:flex;align-items:center;justify-content:space-between;padding:28px 24px;margin:auto;border-bottom:1px solid var(--line)}.public-content{max-width:920px;margin:65px auto 0;padding:0 24px}.public-content h1{font-size:43px;max-width:660px;line-height:1.18;letter-spacing:-1.65px;margin:20px 0}.public-content>.muted{max-width:520px;font-size:15px;line-height:1.9}.eyebrow-line{width:32px;height:2px;display:block;background:var(--accent);margin-bottom:20px}.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:43px}.entry{border:1px solid var(--line);border-radius:8px;padding:29px}.entry>svg{color:var(--accent);width:27px;height:27px;margin-bottom:22px}.entry h2{font-size:19px;margin-bottom:12px}.entry p{color:var(--muted);font-size:13px;line-height:1.8;min-height:69px}.entry .button{margin-top:23px}.public-foot{margin:40px 0;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;line-height:1.9}.dialog{border:1px solid var(--line);border-radius:10px;padding:0;width:540px;max-width:calc(100vw - 32px);max-height:88vh;color:var(--ink);background:#fff;box-shadow:0 15px 55px #1f27381a}.dialog::backdrop{background:rgba(255,255,255,.82)}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:24px 26px 15px;gap:15px}.dialog-head h2{font-size:19px}.icon-button{display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;width:32px;height:32px}.dialog-body{padding:0 26px 26px}.dialog-body>p{color:var(--muted);font-size:13px;line-height:1.8;margin:7px 0 20px}.dialog .field-grid{gap:18px}.dialog .form-actions{margin-bottom:0;justify-content:flex-end}.toast{position:fixed;bottom:24px;right:24px;max-width:420px;padding:16px 19px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px;box-shadow:0 4px 18px #1f273814;z-index:100;font-size:12px;line-height:1.6;display:none}.toast.show{display:block}.nav-scrim{display:none}
@media(min-width:1500px){.content{padding-top:48px}.list-table td{padding-top:25px;padding-bottom:25px}}
@media(max-width:1150px){:root{--side:205px}.sidebar{padding-left:13px;padding-right:13px}.content{padding:30px 28px}.topbar{padding:0 28px}.list-table td{padding-left:8px;padding-right:8px}.list-table th{padding-left:8px;padding-right:8px}.project-icon{display:none}.split{grid-template-columns:minmax(0,1fr) 240px;gap:24px}.split .aside{padding-left:20px}.nav-link{font-size:12px}.quote-table .amount{font-size:21px}}
@media(max-width:900px){:root{--side:0px}.sidebar{transform:translateX(-100%);width:235px;transition:transform .15s ease}.sidebar.open{transform:translateX(0)}.nav-scrim.visible{display:block;position:fixed;inset:var(--demo) 0 0;background:#ffffffbd;z-index:35}.mobile-menu{display:grid;place-items:center}.topbar{height:60px;padding:0 22px}.breadcrumb{margin-right:auto}.content{padding:28px 25px}.topnote{font-size:10px}.split{grid-template-columns:minmax(0,1fr) 245px}.page-heading{gap:15px}.sidebar-bottom{padding-top:24px}}
@media(max-width:680px){:root{--demo:40px}.demo-bar{font-size:10px;justify-content:space-between;padding:0 14px;gap:6px}.demo-bar .long,.demo-bar .divider,.demo-bar label>span{display:none}.demo-bar select{font-size:11px;max-width:145px}.topbar{padding:0 15px;gap:10px}.topnote{display:none}.content{padding:26px 20px}.page-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:30px}h1{font-size:27px;letter-spacing:-.8px}.page-heading p{font-size:12px;line-height:1.75}.page-heading>.button{align-self:flex-start}.metrics{margin:7px 0 25px;gap:12px}.metric{margin:0;padding:0 10px 0 0}.metric-row{flex-direction:column;gap:5px}.metric-value{font-size:26px}.metric-label{font-size:10px;line-height:1.5}.metric-line{margin-bottom:10px}.tabs{gap:23px}.tab{font-size:11px;padding-top:11px}.filters{flex-direction:column;align-items:stretch;gap:10px;padding-top:18px}.filter-left{gap:7px}.filters .search{min-width:100px}.filters select{max-width:147px;font-size:11px;padding-left:8px;padding-right:16px}.search input{font-size:11px}.result-count{font-size:10px}.list-table{display:block}.list-table thead{display:none}.list-table tbody{display:block}.list-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 15px;border-bottom:1px solid var(--line);padding:20px 0}.list-table td{padding:0!important;border:0!important;text-align:left!important}.list-table td .sub{font-size:11px}.list-table td.buyer-cell{display:none}.list-table td.project-col{grid-column:1}.list-table td.state-col{grid-column:1;grid-row:2}.list-table td.count-col{grid-column:2;grid-row:1;text-align:right!important}.list-table td.action-col{grid-column:2;grid-row:2;text-align:right!important}.list-table .project-cell strong{font-size:13px}.list-table .progress-small{margin-left:auto}.list-table .button.small{padding:5px 10px;font-size:10px;min-height:30px}.list-footer{font-size:10px;align-items:flex-start;line-height:1.6}.list-footer>span:last-child{display:none}.next-meeting{gap:11px;flex-wrap:wrap;margin-top:26px}.next-meeting .link-button{margin-left:54px;margin-top:0}.next-meeting p{font-size:11px}.fine-footer{font-size:9px;flex-direction:column;gap:5px;margin-top:30px}.split{grid-template-columns:1fr;gap:15px;margin-top:21px}.split .aside{border-left:0;border-top:1px solid var(--line);padding:23px 0 0}.detail-grid{gap:20px}.datum dd{font-size:12px}.stepper{gap:0;margin-top:12px;margin-bottom:24px}.step{padding-right:12px}.step strong{font-size:10px}.step small{font-size:9px}.step-number{right:12px;width:20px;height:20px;top:-11px;font-size:9px}.project-overview{padding-top:16px}.project-overview h2{font-size:18px}.summary-trio{gap:13px;margin-top:22px}.summary-trio dt{font-size:10px}.summary-trio dd{font-size:12px}.action-line{align-items:flex-start;flex-direction:column;gap:16px}.action-line h2{font-size:17px}.quote-table th{min-width:190px}.quote-table th:first-child,.quote-table td:first-child{min-width:108px;padding-right:15px}.quote-table td,.quote-table th{padding:18px 14px}.quote-table .amount{font-size:21px}.scroll-hint{display:block}.field-grid{grid-template-columns:1fr;gap:18px}.field.full{grid-column:auto}.choice-row{flex-direction:column}.choice{padding:16px}.contract-numbers{grid-template-columns:1fr;gap:23px}.contract-numbers dd{font-size:23px}.public-header{padding:22px 20px}.public-content{margin-top:39px;padding:0 22px}.public-content h1{font-size:33px;letter-spacing:-1px}.public-content>.muted{font-size:13px}.entry-grid{grid-template-columns:1fr;gap:20px;margin-top:32px}.entry{padding:24px}.entry p{min-height:0}.entry h2{font-size:18px}.public-header .button{font-size:10px;padding:7px 10px}.brand-name{font-size:12px}.brand svg{height:28px;width:28px}.dialog-head{padding:21px 20px 12px}.dialog-body{padding:0 20px 22px}.dialog-head h2{font-size:18px}.toast{inset:auto 16px 16px;max-width:none;font-size:11px}.assignment{align-items:flex-start}.assignment strong{font-size:12px}.assignment .button{white-space:normal}.form-actions .button{white-space:normal}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.demo-bar,.sidebar,.topbar,.fine-footer,.button,.link-button{display:none}.workspace{margin:0;padding:0}.content{padding:0}.split{display:block}.page-heading{margin-top:0}body{font-size:11px}}

/* Adaptation de l’interface approuvée à l’essai connecté. */
.pilot-bar{position:fixed;top:0;left:0;right:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);height:36px;padding:8px 18px;text-align:center;color:var(--muted);font-size:11px}.line-note{border-left:2px solid var(--accent);padding:9px 15px;margin:19px 0;color:var(--muted);font-size:13px;line-height:1.8}.section{margin-top:30px;border-top:1px solid var(--line);padding-top:25px}.section>h2{margin-bottom:17px}.section>p{margin:12px 0;line-height:1.8}.actions-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.document-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.document-row strong{overflow-wrap:anywhere}.check-line{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.7;margin:17px 0}.check-line input{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0;margin-top:3px}.check-line span{max-width:720px}fieldset{border:0;border-top:1px solid var(--line);margin:25px 0;padding:15px 0}legend{font-size:15px;font-weight:600;padding-right:15px}.page-foot{max-width:1050px;margin:35px auto;padding:24px;display:flex;gap:20px;align-items:center;justify-content:space-between}.public-content .form-width{margin:28px 0}.wizard-progress{margin:22px 0;color:var(--muted);border-top:2px solid var(--accent);padding-top:14px}.wizard-step h2{margin-bottom:25px}.wizard-step .field-grid+#plex-fields{margin-top:22px}.field-grid{margin-top:20px}.preline{white-space:pre-wrap;overflow-wrap:anywhere}.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1050px}.filter-grid select{max-width:100%;width:100%}.table-wrap{width:100%;overflow-x:auto}.list-table strong,.list-table td{overflow-wrap:anywhere}.list-table .button{white-space:normal}.quote-table td p{min-width:140px;overflow-wrap:anywhere}.quote-table td .button{white-space:normal}.quote-table td .button+.button{margin-top:9px}.content{max-width:1240px}.sidebar-bottom>.button{margin:20px 0 0;width:100%}.form-width{max-width:780px}.datum dd{margin-left:0}.dialog-body>form>.field+.field{margin-top:15px}.loading-note{max-width:720px;margin:80px auto;padding:24px;font-family:Arial,sans-serif}.dialog-body{overflow-wrap:anywhere}.dialog p{line-height:1.7}.public-header{gap:15px}.quote-table th:first-child{width:155px}.quote-table .amount{margin:12px 0}.quote-table td{min-width:210px}.pilot-bar+.sidebar{top:36px}.public-content{margin-bottom:45px}
@media(max-width:680px){.pilot-bar{height:40px;font-size:10px;padding:5px 10px;line-height:1.5}.pilot-bar+.sidebar{top:40px}.filter-grid{grid-template-columns:1fr;gap:9px}.filter-grid .field{gap:3px}.list-table tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.list-table td:first-child{grid-column:1/-1}.list-table td:last-child{grid-column:1/-1;text-align:left!important}.list-table td .sub{overflow-wrap:anywhere}.document-row{flex-direction:column;align-items:flex-start;gap:12px}.page-foot{flex-direction:column;align-items:flex-start}.public-content{margin-top:30px}.wizard-step h2{font-size:19px}.stepper{display:grid;grid-template-columns:1fr 1fr;row-gap:15px}.step{border:0;padding:0 10px 10px 0}.contract-numbers{grid-template-columns:1fr}.dialog .button{white-space:normal}.topbar .breadcrumb{font-size:11px}.button{min-height:44px}.field label{font-size:13px}}

/* Accueil public : surfaces blanches, repères fins et actions bleues. */
.sc-container{width:min(1160px,calc(100% - 80px));margin-left:auto;margin-right:auto}
.sc-public-header{height:90px;border-bottom:1px solid var(--line);background:#fff}
.sc-header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.sc-public-header .brand{padding:0}.sc-public-header .brand-name{font-size:16px}.sc-public-header .brand svg{width:35px;height:35px}
.sc-public-nav{display:flex;align-items:center;gap:29px}.sc-text-link{font-size:13px;color:var(--muted)}.sc-text-link:hover{color:var(--accent)}
.sc-public-header .button{font-size:13px;min-height:44px;padding:10px 18px}
.sc-pilot-status{display:flex;align-items:center;gap:10px;margin:23px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.sc-pilot-status>span{width:20px;border-top:2px solid var(--accent);flex-shrink:0}
.sc-notification{border-left:2px solid var(--accent);padding:9px 14px;margin:15px 0;color:var(--ink);background:#fff;line-height:1.6}
.sc-home{outline:none}.sc-home [tabindex="-1"]{scroll-margin-top:28px;outline:none}
.sc-hero{display:grid;grid-template-columns:minmax(0,1fr) 242px;gap:80px;align-items:center;padding:61px 0 55px}
.sc-eyebrow{font-size:11px;font-weight:600;letter-spacing:1.25px;text-transform:uppercase;color:var(--accent);line-height:1.8}
.sc-hero h1{margin-top:17px;font-size:51px;line-height:1.14;font-weight:600;letter-spacing:-1.9px;max-width:770px}
.sc-hero h1 span{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:9px}
.sc-hero-description{font-size:16px;line-height:1.8;color:var(--muted);max-width:590px;margin:25px 0 19px}
.sc-hero-note{font-size:12px;color:var(--muted)}.sc-hero-note span{color:var(--ink);margin-left:10px}
.sc-principle{border-left:1px solid var(--line);padding:3px 0 3px 29px}.sc-principle .sc-eyebrow{font-size:10px;color:var(--muted);margin-bottom:7px;letter-spacing:1px}
.sc-principle>div{display:flex;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.sc-principle>div:last-child{border:0;padding-bottom:6px}
.sc-principle strong{font-size:34px;line-height:1.2;font-weight:500;letter-spacing:-1px;min-width:24px}.sc-principle div p{font-size:12px;color:var(--muted);line-height:1.5}
.sc-portals{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:31px 0 32px;gap:0}
.sc-portal{position:relative;padding-right:48px}.sc-portal+.sc-portal{padding-left:48px;padding-right:0;border-left:1px solid var(--line)}
.sc-portal h2{font-size:24px;line-height:1.3;letter-spacing:-.7px;margin:9px 0 13px}.sc-portal>p:not(.sc-eyebrow):not(.sc-existing){font-size:14px;color:var(--muted);line-height:1.75;max-width:465px;min-height:50px}
.sc-main-action{font-size:13px;min-height:46px;padding:12px 18px;margin:23px 0 13px;white-space:normal;text-align:center}
.sc-main-action svg{width:17px;height:17px}.sc-existing{font-size:12px;line-height:1.7;color:var(--muted)}.sc-existing a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.sc-section{padding:58px 0}.sc-section-heading{margin-bottom:29px}.sc-section-heading h2{font-size:30px;font-weight:600;line-height:1.3;letter-spacing:-1px;margin-top:9px}
.sc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.sc-step-number{display:block;font-size:12px;color:var(--accent);font-weight:600;margin-bottom:15px;border-top:2px solid var(--accent);padding-top:8px;width:27px}
.sc-steps h3{font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.2px;margin-bottom:8px}.sc-steps p{font-size:13px;color:var(--muted);line-height:1.85}
.sc-contact-note{font-size:12px;color:var(--muted);line-height:1.7;border-left:2px solid var(--accent);padding-left:14px;margin-top:33px}
.sc-territory{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:360px 1fr;align-items:center;gap:55px}
.sc-territory h2{font-size:21px;letter-spacing:-.5px;margin-top:4px}.sc-territory>p{font-size:13px;color:var(--muted);line-height:2.3}.sc-territory>p span{color:var(--accent);padding:0 7px}
.sc-faq{display:grid;grid-template-columns:360px 1fr;gap:55px;padding-bottom:66px}.sc-faq .sc-section-heading h2{max-width:300px}
.sc-faq-list details{border-bottom:1px solid var(--line)}.sc-faq-list details:first-child{border-top:1px solid var(--line)}
.sc-faq-list summary{cursor:pointer;padding:18px 25px 18px 0;font-size:14px;font-weight:500;list-style:none;position:relative;line-height:1.6}.sc-faq-list summary::-webkit-details-marker{display:none}.sc-faq-list summary::after{content:'+';position:absolute;right:3px;top:17px;color:var(--accent);font-size:18px;font-weight:400}.sc-faq-list details[open] summary::after{content:'−'}.sc-faq-list summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.sc-faq-list details p{font-size:13px;color:var(--muted);padding:0 24px 21px 0;line-height:1.85}.sc-faq-list strong{color:var(--ink)}
.sc-footer{border-top:1px solid var(--line);padding:25px 0 22px;background:#fff}.sc-footer-inner{display:flex;justify-content:space-between;gap:32px;align-items:flex-start}.sc-footer strong{font-size:13px;font-weight:600}.sc-footer p{font-size:11px;color:var(--muted);margin-top:7px;line-height:1.7}.sc-footer nav{display:flex;gap:22px;font-size:11px;color:var(--muted);line-height:1.8}.sc-footer a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.sc-footer .sc-release{margin-top:18px;font-size:10px}
.sc-auth{min-height:calc(100vh - 208px);padding-bottom:50px}.sc-auth .page-heading{margin-top:42px}.sc-auth .form-width{max-width:650px}.sc-auth .actions-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.sc-auth .button{white-space:normal;text-align:center}.sc-auth .form-error{line-height:1.7}
@media(min-width:1600px){.sc-hero h1{font-size:55px}}
@media(max-width:1100px){.sc-hero{gap:38px;grid-template-columns:minmax(0,1fr) 214px}.sc-hero h1{font-size:44px;letter-spacing:-1.5px}.sc-principle{padding-left:22px}.sc-portal{padding-right:30px}.sc-portal+.sc-portal{padding-left:30px}.sc-faq,.sc-territory{grid-template-columns:290px 1fr;gap:35px}.sc-steps{gap:30px}}
@media(max-width:800px){.sc-container{width:calc(100% - 44px)}.sc-public-header{height:78px}.sc-nav-detail{display:none}.sc-hero{grid-template-columns:1fr;padding:38px 0 33px;gap:27px}.sc-hero h1{font-size:46px}.sc-hero-description{max-width:630px}.sc-principle{display:grid;grid-template-columns:repeat(3,1fr);border-left:0;border-top:1px solid var(--line);padding:18px 0 0;gap:20px}.sc-principle .sc-eyebrow{display:none}.sc-principle>div{padding:0 0 0 20px;border-bottom:0;border-left:1px solid var(--line);gap:12px}.sc-principle>div:first-of-type{border-left:0;padding-left:0}.sc-principle>div:last-child{padding-bottom:0;border-left:1px solid var(--line)}.sc-principle strong{font-size:29px}.sc-principle div p{font-size:11px}.sc-portals{padding:27px 0}.sc-portal{padding-right:23px}.sc-portal+.sc-portal{padding-left:23px}.sc-portal h2{font-size:21px}.sc-portal>p:not(.sc-eyebrow):not(.sc-existing){min-height:96px;font-size:13px}.sc-main-action{font-size:12px;width:100%;padding:10px 12px;min-height:48px}.sc-faq,.sc-territory{grid-template-columns:1fr;gap:23px}.sc-faq .sc-section-heading{margin-bottom:0}.sc-faq .sc-section-heading h2{max-width:none}.sc-steps{gap:22px}.sc-section-heading h2{font-size:27px}.sc-territory{gap:13px}.sc-footer-inner{flex-wrap:wrap;gap:20px}}
@media(max-width:540px){.sc-container{width:calc(100% - 40px)}.sc-public-header .brand-name{font-size:13px}.sc-public-header .brand svg{width:29px;height:29px}.sc-public-header .brand{gap:8px}.sc-header-inner{gap:12px}.sc-public-header .button{font-size:11px;padding:9px 11px;min-height:42px}.sc-public-header .button svg{display:none}.sc-pilot-status{font-size:10px;margin-top:18px}.sc-hero{padding-top:33px;padding-bottom:29px}.sc-hero h1{font-size:35px;line-height:1.17;letter-spacing:-1.15px;margin-top:13px}.sc-hero h1 span{text-underline-offset:7px}.sc-eyebrow{font-size:9px;letter-spacing:1px}.sc-hero-description{font-size:14px;line-height:1.85;margin-top:21px;margin-bottom:16px}.sc-hero-note{font-size:11px;line-height:1.8}.sc-hero-note span{display:block;margin-left:0}.sc-principle{gap:12px}.sc-principle>div,.sc-principle>div:last-child{flex-direction:column;align-items:flex-start;gap:4px;padding-left:12px}.sc-principle>div:first-of-type{padding-left:0}.sc-principle strong{font-size:26px}.sc-principle div p{font-size:10px;line-height:1.65}.sc-portals{grid-template-columns:1fr;padding:0}.sc-portal{padding:27px 0!important;border-left:0!important}.sc-portal+.sc-portal{border-top:1px solid var(--line)}.sc-portal h2{font-size:22px;margin-bottom:11px}.sc-portal>p:not(.sc-eyebrow):not(.sc-existing){min-height:0;font-size:13px}.sc-main-action{font-size:13px;width:100%;margin-top:20px;min-height:48px}.sc-existing{font-size:11px}.sc-section{padding:39px 0}.sc-section-heading h2{font-size:26px;letter-spacing:-.8px}.sc-steps{grid-template-columns:1fr;gap:28px}.sc-steps h3{font-size:16px}.sc-step-number{margin-bottom:10px}.sc-steps p{font-size:13px}.sc-contact-note{font-size:11px;margin-top:27px}.sc-territory{padding:27px 0}.sc-territory h2{font-size:22px}.sc-territory>p{font-size:12px}.sc-territory>p span{padding:0 4px}.sc-faq{gap:18px}.sc-faq-list summary{font-size:13px;padding-top:17px;padding-bottom:17px}.sc-faq-list details p{font-size:12px;padding-right:10px}.sc-footer{padding:23px 0}.sc-footer nav{gap:15px;flex-wrap:wrap;font-size:10px}.sc-footer p{max-width:310px}.sc-footer .sc-release{font-size:10px}.sc-auth .page-heading{margin-top:29px}.sc-auth h1{font-size:27px}.sc-auth .actions-row>.button{flex:1}.sc-auth .form-width{max-width:100%}}
@media(max-width:360px){.sc-container{width:calc(100% - 32px)}.sc-hero h1{font-size:30px}.sc-public-header .brand-name{font-size:12px}.sc-public-header .button{font-size:10px;padding:9px}.sc-portal h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Clearly separated login and registration; these elements do not grant permissions. */
.sc-account-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;max-width:1000px;margin:28px 0 48px}
.sc-account-layout h2{font-size:20px;letter-spacing:-.4px;margin:0 0 20px;line-height:1.3}
.sc-login-section .field-grid{grid-template-columns:1fr}
.sc-login-section .form-actions{margin-top:24px}
.sc-login-section .button.primary{min-height:48px;min-width:176px}
.sc-forgot-link{display:inline-block;margin-top:16px;font-size:14px;color:#155dba;text-underline-offset:3px}
.sc-create-account{border-left:1px solid #dce4ee;padding:0 0 0 36px;background:#fff}
.sc-create-account p{font-size:15px;line-height:1.65;color:#526580;max-width:390px;margin:0 0 22px}
.sc-create-account>.button{border:1px solid #1166c8;color:#075abc;min-height:48px;padding:12px 24px;margin:0 0 18px}
.sc-create-account>.button:hover{background:#f6faff}
.sc-create-account .sc-registration-caption{font-size:12px;line-height:1.6;margin:0 0 10px}
.sc-registration-note{border-left:2px solid #2471c3;padding:0 0 0 16px;color:#526580;font-size:14px;line-height:1.65;margin:0 0 26px}
.sc-registration-note strong{display:block;color:#163c6a;font-weight:650}
.sc-form-help{font-size:13px;color:#526580;line-height:1.5;margin:12px 0 18px}
.sc-auth-return{font-size:14px;line-height:1.6;margin:26px 0 0;color:#526580}
.sc-auth-return a{color:#075abc;text-underline-offset:3px;font-weight:600}
@media(max-width:650px){.sc-account-layout{grid-template-columns:1fr;gap:30px;margin-top:24px}.sc-create-account{border-left:0;border-top:1px solid #dce4ee;padding:26px 0 0}.sc-login-section .button.primary,.sc-create-account>.button{width:100%;min-height:48px}.sc-account-layout h2{font-size:19px;margin-bottom:16px}}

.sc-auth-help-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}.sc-auth-help-links .sc-forgot-link{margin-top:0}


/* CRM / Funnel */
.crm-summary{display:flex;align-items:baseline;gap:9px;margin:-8px 0 24px;color:var(--muted)}
.crm-summary strong{font-size:30px;color:var(--ink);font-weight:550;letter-spacing:-1px}.crm-summary span{font-size:12px}
.crm-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:14px;overflow-x:auto;padding:2px 2px 16px;scrollbar-width:thin}
.crm-column{min-height:330px;border:1px solid var(--line);border-radius:8px;background:#fbfcfe;padding:12px}.crm-column>header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:2px 2px 11px;border-bottom:1px solid var(--line)}.crm-column>header h2{font-size:13px}.crm-column>header span{font-size:11px;color:var(--muted)}
.crm-cards{display:flex;flex-direction:column;gap:9px;padding-top:10px}.crm-card{display:block;background:#fff;border:1px solid var(--line);border-radius:7px;padding:12px;transition:border-color .15s ease,transform .15s ease}.crm-card:hover{border-color:var(--accent);transform:translateY(-1px)}.crm-card strong{display:block;font-size:12px}.crm-card span,.crm-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px;line-height:1.45}.crm-empty{color:var(--muted);font-size:11px;padding:10px 2px}.crm-control{border-left:2px solid var(--accent);padding-left:18px}
@media(max-width:760px){.crm-board{grid-auto-columns:minmax(250px,84vw)}.crm-control{padding-left:13px}}

.crm-column.drag-over{outline:2px solid var(--accent);outline-offset:-2px;background:#f4f8fd}.crm-card[draggable="true"]{cursor:grab}.crm-card[draggable="true"]:active{cursor:grabbing}.field .sub{display:block;margin-top:6px}.muted{color:var(--muted)}
@media(max-width:980px){.filter-grid{grid-template-columns:1fr 1fr}}

/* Portail entrepreneur — état de vérification et opportunités */
.contractor-status-card{margin:0 0 28px;padding:26px;border:1px solid var(--border,#dfe5ec);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(20,35,55,.06)}
.contractor-status-card.is-pending{border-left:5px solid #d49a22}.contractor-status-card.is-ready{border-left:5px solid #2d8a57}
.contractor-status-card h2,.opportunity-toolbar h2{margin:.35rem 0 .45rem}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.09em;color:#6b7480}
.verification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.verification-item{display:grid;grid-template-columns:24px 1fr;gap:2px 8px;align-items:center;padding:12px;border:1px solid #e5e9ef;border-radius:12px}.verification-item span{grid-row:1/3;font-size:1.15rem}.verification-item small{color:#6e7782}
.status-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#f1f4f8;font-weight:700}
.opportunity-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin:10px 0 16px}.opportunity-stats{display:flex;gap:10px}.opportunity-stats div{min-width:115px;padding:14px 16px;border:1px solid #e1e6ec;border-radius:14px;background:#fff;text-align:center}.opportunity-stats strong{display:block;font-size:1.7rem}.opportunity-stats span{font-size:.82rem;color:#69727d}.alert-preferences-summary{margin:10px 0 18px;padding:12px 14px;border-radius:12px;background:#f7f9fb}
@media(max-width:800px){.verification-grid{grid-template-columns:1fr 1fr}.opportunity-toolbar{display:block}.opportunity-stats{margin-top:14px}.opportunity-stats div{flex:1}}
@media(max-width:520px){.verification-grid{grid-template-columns:1fr}}

.nav-label{flex:1}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#d7263d;color:#fff;font-size:.72rem;font-weight:800;line-height:1}.contractor-verification-alert{display:flex;gap:10px;align-items:flex-start;margin:0 0 16px;padding:14px 16px;border:2px solid #c91f37;border-radius:12px;background:#fff0f2;color:#99152a}.contractor-verification-alert strong{white-space:nowrap}.contractor-verification-alert span{font-weight:650}.contractor-status-card.is-pending{border-left-color:#c91f37}


/* Parcours client sans portail préalable */
.guest-request-form{max-width:980px;margin:0 auto 48px}.guest-step-labels{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:14px 0 28px;font-size:.78rem;color:#64748b}.guest-step-labels span{border-top:2px solid #dbe5ef;padding-top:8px}.verification-box{display:grid;grid-template-columns:1fr minmax(280px,420px);gap:24px;align-items:center;padding:22px;border:1px solid #dbe5ef;border-radius:14px;margin:14px 0;background:#fff}.verification-box h3{margin:0 0 6px}.verification-box p{margin:0;color:#536579}.verification-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.code-entry{display:flex;align-items:flex-end;gap:10px}.code-entry .field{margin:0;min-width:150px}.verification-note,.verification-hint{font-size:.9rem;color:#64748b}.request-review{padding:20px;border-radius:14px;background:#f2f7fc;border:1px solid #dbe7f2;margin-bottom:20px}.submission-result{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:44px;max-width:1180px;margin:22px auto 50px}.submission-steps{padding:28px 24px;border-right:1px solid #e2e8f0}.submission-steps h1{font-size:1.65rem;margin:6px 0 26px}.result-step{display:grid;grid-template-columns:42px 1fr;gap:12px;position:relative;padding:0 0 26px}.result-step:not(:last-child):before{content:"";position:absolute;left:20px;top:38px;bottom:0;width:2px;background:#e2e8f0}.result-step.active:not(:last-child):before{background:#2f67d8}.result-step>span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:2px solid #dbe3ed;color:#8b99aa;background:#fff;font-weight:800}.result-step.active>span{background:#2f67d8;border-color:#2f67d8;color:white}.result-step strong{display:block;margin:4px 0 5px}.result-step p{margin:0;color:#607085;font-size:.92rem}.submission-main{display:grid;gap:20px}.submission-confirm h2{font-size:2rem;margin:4px 0 10px}.portal-create-card,.project-summary-card{padding:26px;border:1px solid #dce5ee;border-radius:16px;background:#fff}.portal-create-card{background:#eef6ff;border-color:#d4e7fb}.summary-head{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #e5e9ee;padding-bottom:14px;margin-bottom:18px}.summary-head h2{margin:0}.summary-head span{font-size:.85rem;padding:6px 10px;border:1px solid #d7e0ea;border-radius:8px;background:#f8fafc}.submission-main .form-width{max-width:none}
@media(max-width:800px){.guest-step-labels{grid-template-columns:repeat(3,1fr)}.verification-box{grid-template-columns:1fr}.submission-result{grid-template-columns:1fr;gap:18px}.submission-steps{border-right:0;border-bottom:1px solid #e2e8f0}.code-entry{align-items:stretch;flex-direction:column}.verification-actions{align-items:stretch}}

/* === Premium portal polish · 2026-10-12 === */
:root{
  --paper:#f7f9fc;
  --surface:#ffffff;
  --surface-soft:#f9fbff;
  --ink:#172033;
  --muted:#6d778a;
  --line:#e5eaf2;
  --line-strong:#d7deea;
  --accent:#315fd6;
  --accent-hover:#244db8;
  --accent-soft:#edf3ff;
  --accent-soft-2:#f5f8ff;
  --green:#2f8a63;
  --green-soft:#eef9f4;
  --amber:#b3751b;
  --amber-soft:#fff7e8;
  --red:#c93c3c;
  --red-soft:#fff1f1;
  --radius:12px;
  --shadow-sm:0 1px 2px rgba(20,31,55,.04),0 4px 16px rgba(35,58,105,.04);
  --shadow-md:0 8px 30px rgba(30,49,91,.08);
}
body{background:var(--paper)}
.demo-bar{background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.sidebar{background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);border-right:1px solid var(--line);padding:25px 17px 18px;box-shadow:5px 0 24px rgba(36,59,105,.025)}
.brand{padding:4px 10px 10px}.brand svg{height:36px;width:36px}.brand-name{font-size:15px;font-weight:700;color:#172033}
.nav-caption{margin:34px 12px 11px;color:#8a94a6;font-size:9px;letter-spacing:1.5px}
.nav{gap:5px}.nav-link{min-height:46px;padding:11px 13px;border-radius:10px;font-size:13px;font-weight:500;transition:.18s ease;color:#5f697c}
.nav-link:hover{background:#f3f6fc;color:var(--accent)}.nav-link.active{background:linear-gradient(135deg,#315fd6,#416fde);box-shadow:0 8px 22px rgba(49,95,214,.18);color:#fff}
.nav-link.active svg{stroke-width:1.9}.nav-count{padding:2px 7px;border-radius:999px;background:#eef2f8;color:#536078;font-weight:700}.nav-link.active .nav-count{background:rgba(255,255,255,.18);color:#fff}
.sidebar-help{border:1px solid var(--line);background:#fff;border-radius:12px;padding:15px;margin:0 2px 15px;box-shadow:var(--shadow-sm)}
.sidebar-help strong{font-size:12px;color:var(--ink)}.sidebar-help p{line-height:1.55}
.user-block{border-top:0;background:#f5f7fb;border-radius:12px;padding:11px}.user-icon{background:#fff;border-color:#dde3ee}.settings{background:transparent}
.workspace{background:var(--paper)}
.topbar{height:70px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--line);padding:0 40px;position:sticky;top:var(--demo);z-index:25}
.breadcrumb strong{font-weight:600}.topnote{background:#f7f9fc;border:1px solid var(--line);border-radius:999px;padding:6px 10px}
.content{max-width:1440px;padding:42px 44px 35px}
.page-heading{margin-bottom:28px;align-items:flex-start}.page-heading h1{font-size:34px;line-height:1.1;font-weight:700;letter-spacing:-1.25px;color:#172033}.page-heading p{font-size:13px;line-height:1.65;max-width:760px}
.button{border-color:var(--line-strong);border-radius:10px;padding:10px 16px;min-height:42px;font-weight:600;background:#fff;box-shadow:0 1px 1px rgba(31,47,78,.02);transition:.18s ease}
.button:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.button.primary{background:linear-gradient(135deg,#315fd6,#416fde);box-shadow:0 7px 18px rgba(49,95,214,.18)}.button.primary:hover{background:linear-gradient(135deg,#2a56ca,#365fce)}
.link-button{background:transparent;font-weight:600}.link-button:hover{text-decoration:none;color:#244db8}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:none;margin:0 0 28px}.metric{padding:20px 22px;margin:0;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.metric:last-child{border:1px solid var(--line)}
.metric-line{width:32px;height:3px;border-radius:3px;margin-bottom:14px}.metric-value{font-size:31px;font-weight:700;color:#1e2a41}.metric-label{font-size:12px}
.tabs{gap:8px;border-bottom:0;background:#eef2f8;padding:4px;border-radius:11px;width:max-content;max-width:100%}.tab{padding:9px 13px;border:0;border-radius:8px;background:transparent}.tab.active{background:#fff;color:var(--accent);box-shadow:0 1px 4px rgba(31,47,78,.08);border:0}
.filters{padding:18px 0 20px}.search input,.filters select,.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:10px;background:#fff;transition:.15s ease;box-shadow:0 1px 2px rgba(31,47,78,.02)}
.search input:focus,.filters select:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#8eabf4;box-shadow:0 0 0 3px rgba(49,95,214,.09);outline:none}
.list-table{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm);border-collapse:separate;border-spacing:0}.list-table th{background:#f8fafe;padding:13px 16px}.list-table td{padding:18px 16px}.list-table th:first-child,.list-table td:first-child{padding-left:18px}.list-table th:last-child,.list-table td:last-child{padding-right:18px}.list-table tr:last-child td{border-bottom:0}.list-table tbody tr{transition:.15s ease}.list-table tbody tr:hover{background:#fbfcff}
.project-icon{width:38px;height:38px;border-radius:10px;background:var(--accent-soft);border-color:#dbe6ff;color:var(--accent)}
.state{padding:5px 8px;border-radius:999px;background:#f5f7fa}.state.green{background:var(--green-soft)}.state.amber{background:var(--amber-soft)}
.empty{border:1px dashed #dbe1ec;border-radius:14px;background:#fbfcfe;padding:54px 24px}.empty h2{font-size:18px}.empty p{max-width:520px;margin:7px auto 0}
.split{gap:28px}.split .aside{border-left:0}.split .aside>.section,.section,.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.section:last-child{border-bottom:1px solid var(--line)}
.section-heading{margin-bottom:14px}.section h2{font-size:17px;color:#1c2940}.section h3{color:#26344d}
.field{gap:7px}.field label,.field-label{font-size:11px;font-weight:650;color:#4f5c73}.field input,.field select,.field textarea{padding:11px 12px;min-height:42px}.field textarea{min-height:110px;resize:vertical}
.field-grid{gap:16px}.checkbox{background:#fbfcff;border:1px solid var(--line);padding:12px 13px;border-radius:10px}.checkbox:hover{border-color:#cdd8ee}
.note{border-radius:12px;border:1px solid #dbe5fb;background:#f5f8ff;padding:14px 16px;line-height:1.55}.note.warning,.warning-note{border-color:#f0b6b6;background:var(--red-soft);color:#a42f2f}.note.success{border-color:#cde8db;background:var(--green-soft);color:#286e52}
.document-row,.activity{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 16px;margin-bottom:10px}.document-row:hover{border-color:#cad7ef;box-shadow:var(--shadow-sm)}
.crm-summary{display:inline-flex;align-items:baseline;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:16px;box-shadow:var(--shadow-sm)}.crm-summary strong{font-size:23px;color:var(--accent)}
.crm-board{gap:14px;padding-bottom:12px}.crm-column{background:#f2f5fa;border:1px solid var(--line);border-radius:14px;min-width:265px;padding:11px}.crm-column header{padding:4px 5px 10px}.crm-column header h2{font-size:12px;text-transform:uppercase;letter-spacing:.55px;color:#59657a}.crm-column header span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:2px 7px;font-size:10px}
.crm-cards{gap:9px}.crm-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:0 2px 10px rgba(31,47,78,.045);transition:.16s ease}.crm-card:hover{transform:translateY(-2px);border-color:#c7d5f3;box-shadow:0 8px 22px rgba(31,47,78,.09)}.crm-card strong{font-size:13px;color:#1d2940}.crm-card span{color:#5e6a7d}.crm-empty{border:1px dashed #d6dce7;border-radius:10px;background:rgba(255,255,255,.6)}
.fine-footer{border-top:1px solid var(--line);padding-top:20px;margin-top:28px}.next-meeting{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-top:20px;box-shadow:var(--shadow-sm)}
.date-square{border-radius:9px;background:#f8faff}.progress-small i{height:3px;border-radius:3px}

/* direct request + post-submit portal cards */
.request-shell,.guest-request,.success-layout{max-width:1180px;margin:0 auto}.request-progress{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;box-shadow:var(--shadow-sm)}
.success-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:28px;align-items:start}.success-steps{position:sticky;top:128px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow-sm)}.success-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:var(--shadow-md)}

@media(max-width:900px){
  :root{--side:0px}.sidebar{width:min(310px,88vw);transform:translateX(-105%);transition:.2s ease;box-shadow:18px 0 45px rgba(18,31,60,.12)}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.mobile-menu{display:grid}.topbar{padding:0 18px}.content{padding:26px 18px}.page-heading{align-items:flex-start}.page-heading h1{font-size:29px}.metrics{grid-template-columns:1fr}.split{grid-template-columns:1fr}.split .aside{padding-left:0}.success-layout{grid-template-columns:1fr}.success-steps{position:static}.crm-board{padding-bottom:18px}.fine-footer{flex-direction:column}.filters{align-items:stretch;flex-direction:column}.filter-left{flex-wrap:wrap}.search{max-width:none}.list-table{display:block;overflow:auto}}
@media(max-width:600px){.content{padding:22px 14px}.page-heading{display:block}.page-heading .button{margin-top:16px}.field-grid{grid-template-columns:1fr!important}.tabs{width:100%}.metrics{gap:10px}.section,.card{padding:17px}.success-panel,.success-steps{padding:19px}.topnote{display:none}}

/* ===== Soumissions Construction — formulaire enrichi, étapes très visibles ===== */
.guest-request-form .wizard-progress{margin:26px 0 12px;padding:0;border-top:0;display:flex;justify-content:space-between;align-items:center;color:#064fa7;font-size:16px}
.guest-request-form .wizard-progress strong{font-weight:800}
.guest-request-form .sc-progress-caption{font-size:12px;font-weight:650;color:#536b89}
.guest-progress-track{height:8px;width:100%;overflow:hidden;background:#dce7f8;border-radius:999px;margin:0 0 15px}
.guest-progress-fill{height:100%;width:16.67%;background:#075ac5;border-radius:999px;transition:width .18s ease}
.guest-step-labels{gap:10px;margin:0 0 32px;font-size:13px;color:#697990}
.guest-step-labels>span{position:relative;border-top:4px solid #d3dfef;padding:12px 9px 13px;border-radius:0 0 8px 8px;font-weight:650;transition:color .18s ease,border-color .18s ease,background .18s ease}
.guest-step-labels>span.is-complete{border-top-color:#3e8fe7;color:#0957b4;background:#f2f7ff}
.guest-step-labels>span.is-current{border-top-color:#004fba;color:#003e96;background:#e5f0ff;font-weight:850;box-shadow:inset 0 0 0 1px #cae0ff}
.guest-step-labels>span.is-current:before{content:"";position:absolute;top:-9px;left:8px;background:#005ac9;width:14px;height:14px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #b8d5fe}
.sc-field-section-title{grid-column:1/-1;margin:26px 0 0;padding:10px 0;border-bottom:2px solid #b9d4f8;font-size:15px;letter-spacing:-.15px;color:#004da5;font-weight:800}
.guest-request-form .wizard-step .field label{font-weight:660;color:#394e68}
.sc-address-field{position:relative;z-index:3}
.sc-address-field input{border-color:#b4cbe7}
.sc-address-field input:focus{border-color:#0862cd}
.sc-address-suggestions{position:absolute;top:calc(100% - 10px);left:0;right:0;max-height:275px;overflow-y:auto;z-index:30;border:1px solid #bdd4f1;border-radius:10px;background:#fff;box-shadow:0 12px 28px rgba(13,54,106,.16);padding:5px}
.sc-address-suggestions[hidden]{display:none!important}
.sc-address-suggestion{display:block;text-align:left;width:100%;padding:12px 13px;background:white;color:#1f344d;border:0;border-bottom:1px solid #edf2f7;border-radius:6px;font-size:13px;white-space:normal}
.sc-address-suggestion:last-child{border-bottom:0}
.sc-address-suggestion:hover,.sc-address-suggestion.is-highlighted,.sc-address-suggestion:focus-visible{background:#e7f1ff;color:#004ea4;outline:0}
.sc-address-field small{line-height:1.5}
.sc-address-attribution{font-size:10px!important;color:#73869d}.sc-address-attribution a{color:#1c5d9e;text-decoration:underline}
@media(max-width:800px){.guest-step-labels{font-size:12px;gap:7px}.guest-step-labels>span{padding:9px 8px 11px}.guest-step-labels>span.is-current:before{left:8px}}
@media(max-width:520px){.guest-step-labels{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.guest-step-labels>span{min-width:0;font-size:11px}.guest-request-form .wizard-progress{font-size:14px}.guest-request-form .sc-progress-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.guest-progress-fill,.guest-step-labels>span{transition:none}}

/* 2026-10-12 — progression sobre : aucun point ni barre épaisse en haut */
.guest-request-form .guest-progress-track{display:none!important}
.guest-request-form .guest-step-labels>span.is-current::before,
.guest-request-form .guest-step-labels>span.is-current:before{content:none!important;display:none!important}
.guest-request-form .guest-step-labels>span{border-top-width:2px}
.guest-request-form .guest-step-labels>span.is-current{border-top-width:2px}

/* 12 octobre — vérification du courriel sous Coordonnées et validation visible en rouge. */
.guest-request-form .guest-step-labels{grid-template-columns:repeat(5,minmax(0,1fr))}
.sc-field-section-title{grid-column:1/-1}
.sc-exterior-field{margin:0;padding:14px 16px 16px;border:1px solid #ccd8e5;border-radius:11px;min-width:0;background:#fbfdff}
.sc-exterior-field legend{font-size:14px;font-weight:780;color:#314c68;padding:0 7px}
.sc-exterior-help{font-size:12px;color:#5b6f86;margin:2px 0 13px}
.sc-exterior-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.sc-exterior-option{display:flex;gap:8px;align-items:center;min-height:44px;padding:9px 11px;border:1px solid #dbe5f0;border-radius:8px;background:#fff;color:#1c344f;font-size:13px;line-height:1.35;cursor:pointer}
.sc-exterior-option:has(input:checked){background:#e6f1ff;border-color:#3479d0;color:#003f95;font-weight:680}
.sc-exterior-option input{width:17px;height:17px;flex-shrink:0;accent-color:#0b61c8}
.sc-email-verification-field{min-width:0}
.sc-email-verification-block{margin-top:10px;padding:13px 14px;border:1px solid #d5e5f5;border-radius:10px;background:#f4f9ff;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}
.sc-email-verification-block .sc-verify-status{font-size:12px;line-height:1.45;color:#3c526b;flex:1 1 185px}
.sc-email-verification-block .sc-verify-status.is-verified{color:#126a46;font-weight:750}
.sc-email-verification-block .sc-email-send-button{background:#fff;border-color:#7ba7db;color:#0756ad;font-weight:760;min-height:38px}
.sc-email-code-entry{display:flex;gap:10px;align-items:flex-end;flex:1 1 100%;flex-wrap:wrap;padding-top:4px}
.sc-email-code-entry .field{margin:0;max-width:260px;flex:1 1 160px}
.sc-email-code-entry .button{flex-shrink:0}
.guest-request-form [data-form-error].is-error,.guest-request-form .form-error,.sc-notification.is-error,.line-note.is-error{border-left:5px solid #cd1730!important;background:#fff0f2!important;color:#911322!important;padding:13px 16px!important;border-radius:0 8px 8px 0!important;font-weight:680!important;line-height:1.5!important;box-shadow:none!important}
.guest-request-form [aria-invalid="true"]{outline:2px solid #d21a34!important;outline-offset:1px;border-color:#d21a34!important}
@media(max-width:760px){.sc-exterior-options{grid-template-columns:repeat(2,minmax(0,1fr))}.sc-email-code-entry{align-items:stretch}.sc-email-code-entry .button{max-width:none}}
@media(max-width:480px){.guest-request-form .guest-step-labels{grid-template-columns:repeat(3,minmax(0,1fr))}.sc-exterior-options{grid-template-columns:1fr}.sc-email-verification-block{display:block}.sc-email-verification-block .sc-email-send-button{margin-top:12px}.sc-email-code-entry .field{max-width:none}}
/* Portail entrepreneur — CRM simplifié, sans toucher au 3D public */
.contractor-alert{margin:16px 0 24px;display:flex;gap:14px;align-items:center;border:1px solid #ead0d0;border-left:4px solid #c73442;background:#fff9f9;border-radius:12px;padding:18px 20px;color:#492229}
.contractor-alert-icon{font-size:20px;font-weight:800;display:grid;place-items:center;color:#b91c1c;background:#fee2e2;flex:0 0 34px;height:34px;border-radius:50%}
.contractor-alert div{flex:1;min-width:0}.contractor-alert strong{font-size:14px;display:block;margin-bottom:4px}.contractor-alert p{font-size:12.5px;line-height:1.65;color:#704b50}.contractor-alert .button{white-space:normal}
.contractor-ready{background:#f7fbfa;border:1px solid #cce2d8;border-left:4px solid #2a8a69;color:#205c49;padding:18px 20px;border-radius:12px}
.contractor-ready .contractor-alert-icon{background:#dceee6;color:#228462}.contractor-ready p{color:#39715a}
.contractor-not-ready{background:#fff8f8;border:1px solid #edc9cc;border-left:4px solid #c73442;color:#692c34;padding:18px 20px;border-radius:12px;line-height:1.65}
.contractor-not-ready p{margin-top:5px;font-size:13px}
.contractor-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 26px}
.contractor-metrics article{border:1px solid #e2e9f3;padding:20px 22px;border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(17,52,96,.03)}
.contractor-metrics strong{display:block;font-size:30px;font-weight:750;color:#145bb8;letter-spacing:-1px;line-height:1.18}
.contractor-metrics span{display:block;color:#61718b;font-size:12px;margin-top:7px}
.contractor-opportunities{border:1px solid #e4eaf3;background:#fff;padding:24px;border-radius:15px}
.opportunity-heading{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:22px}.opportunity-heading h2{font-size:21px;font-weight:750;letter-spacing:-.55px;color:#142e55}.opportunity-heading p{font-size:12px;line-height:1.65;margin-top:6px;color:#687b96}
.opportunity-filters{display:grid;grid-template-columns:minmax(160px,1.45fr) repeat(4,minmax(110px,1fr));gap:11px;margin-bottom:13px}
.opportunity-filters .field{margin:0}.opportunity-filters .field label{font-size:11px;font-weight:700;color:#3a5b86}.opportunity-filters input,.opportunity-filters select{width:100%;border-radius:9px;min-height:41px;background:#fff;padding:8px 12px;border:1px solid #d6e0ef;color:#213d63;font-size:12px}
.opportunity-count{font-size:11.5px;color:#65778e;margin:8px 0 17px}.opportunity-list{display:grid;gap:13px}
.opportunity-card{border:1px solid #e3e9f3;border-radius:13px;padding:19px 20px;background:#fff;box-shadow:0 3px 12px rgba(18,62,107,.035);transition:border-color .15s,box-shadow .15s}
.opportunity-card:hover{border-color:#b8d1ef;box-shadow:0 9px 24px rgba(26,77,135,.075)}.opportunity-top,.opportunity-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px}
.opportunity-top{align-items:start}.opportunity-ref{font-size:10px;color:#7e8ea4;font-weight:700;letter-spacing:.85px;display:block;margin-bottom:6px}.opportunity-top h3{font-size:17px;color:#183b70;letter-spacing:-.35px}
.opportunity-pill{border:1px solid #b9d8f8;background:#f1f7ff;color:#2460a5;border-radius:999px;padding:5px 12px;font-size:10.5px;white-space:nowrap;font-weight:750;align-self:start}
.opportunity-pill.is-selected{color:#297050;border-color:#aad8c2;background:#eaf9f0}.opportunity-pill.is-waiting{color:#995d17;border-color:#efd4a5;background:#fff8eb}
.opportunity-details{display:flex;flex-wrap:wrap;gap:12px 24px;margin:17px 0;font-size:12px;color:#52657d}.opportunity-details span{display:flex;align-items:center;gap:6px}.opportunity-details svg{height:16px;width:16px;stroke:#2473bb;stroke-width:1.75;fill:none}
.opportunity-bottom{border-top:1px solid #ecf0f5;padding-top:14px}.opportunity-slots{color:#506a83;font-weight:700;font-size:11px}.opportunity-actions{display:flex;gap:9px;flex-wrap:wrap}.opportunity-actions .button{font-size:11px;min-height:36px;padding:8px 13px;border-radius:8px}
.opportunity-empty{border:1px dashed #d3ddea;border-radius:12px;padding:28px;text-align:center;background:#fbfdff}.opportunity-empty h3{font-size:16px;color:#294d78}.opportunity-empty p{font-size:12px;line-height:1.7;color:#657a94;margin-top:10px}.opportunity-no-result{font-size:12px;color:#5c6e84;padding:16px}
.my-quote-card{border:1px solid #e3eaf3;border-radius:13px;background:#fff;padding:20px 23px;display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:14px}.my-quote-card h3{font-size:25px;color:#1c59a1;margin:8px 0}.my-quote-card h3 small{font-size:11px;font-weight:500;color:#65788d}.my-quote-card p{color:#5f6e81;font-size:12px;line-height:1.6}
.agreement-intro{border:1px solid #dce7f4;background:#fafdff;border-radius:14px;padding:24px 26px;margin:18px 0 22px}.agreement-intro h2{font-size:22px;color:#1a4a7d;letter-spacing:-.5px;margin:13px 0}.agreement-intro p{font-size:13px;color:#61768c;line-height:1.75;margin:12px 0}.agreement-text{border:1px solid #d8e5f2;padding:24px 26px;border-radius:12px;background:#fff;margin-bottom:18px}.agreement-text pre.legal-text{font-family:inherit;font-size:12px;white-space:pre-wrap;line-height:1.85;max-height:440px;overflow:auto;color:#263c56}.signature-form{margin:20px 0;padding:22px;border-radius:12px;border:1px solid #d7e5f5}.signature-form h2{font-size:18px}.signature-form>p{margin-top:8px;color:#627991;font-size:12px}
@media(max-width:1200px){.opportunity-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.opportunity-filters .field:first-child{grid-column:span 3}}
@media(max-width:740px){.contractor-alert{align-items:flex-start;flex-wrap:wrap;padding:15px}.contractor-alert .button{width:100%}.contractor-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.contractor-metrics article{padding:15px 12px}.contractor-metrics strong{font-size:24px}.contractor-metrics span{font-size:10px;line-height:1.45}.contractor-opportunities{padding:15px;border-radius:12px}.opportunity-heading{flex-direction:column}.opportunity-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.opportunity-filters .field:first-child{grid-column:span 2}.opportunity-card{padding:15px}.opportunity-top h3{font-size:15px}.opportunity-details{gap:10px 15px;font-size:11.5px}.opportunity-bottom{flex-direction:column;align-items:stretch}.opportunity-actions .button{flex:1;text-align:center}.my-quote-card{flex-direction:column;align-items:flex-start;padding:16px}}
@media(max-width:420px){.contractor-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.contractor-metrics article:last-child{grid-column:span 2}.opportunity-filters{grid-template-columns:1fr}.opportunity-filters .field:first-child{grid-column:span 1}.opportunity-top{flex-direction:column;gap:10px}}

/* Responsable signataire et avertissement d'entente obligatoire — 2026-10-12 */
.contractor-signing-warning{border:1px solid #e9a5a5;border-left:6px solid #b91c1c;background:#fff0f0;box-shadow:0 5px 18px rgba(153,27,27,.055);color:#681b24;margin:0 0 23px;padding:18px 21px}
.contractor-signing-warning .contractor-alert-icon{background:#b91c1c;color:#fff;font-size:18px;flex:0 0 37px;height:37px}
.contractor-signing-warning strong{color:#981b1b;font-size:15px;font-weight:800;line-height:1.45}
.contractor-signing-warning p{color:#69252a;font-size:13px;line-height:1.65}
.contractor-signing-warning .button{background:#fff;border:1px solid #bd3232;color:#8c1d1d;font-weight:750;min-height:39px;text-decoration:none}
.contractor-signing-warning .button:hover,.contractor-signing-warning .button:focus-visible{background:#fff8f8;border-color:#861818}
.signer-privacy-hint{margin:14px 0 18px;border-left:3px solid #2c67be;padding:10px 13px;font-size:12.5px;color:#45617e;background:#f5f9ff;line-height:1.65}
@media(max-width:740px){.contractor-signing-warning{margin:0 0 18px;padding:16px}.contractor-signing-warning .button{width:100%;text-align:center}}
/* Qualification — rôle équipe seulement, aucune donnée exposée aux entrepreneurs. */
.qualification-section{border-left:3px solid #2764ce}
.qualification-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.qualification-heading h2{margin:0}
.qualification-tag,.crm-qual-status{display:inline-block;border-radius:100px;background:#fff2d8;color:#79510c;border:1px solid #e8c481;padding:5px 12px;font-size:.8rem;font-weight:700}
.qualification-tag.is-qualified,.crm-qual-status.is-qualified{background:#e8f5ee;border-color:#a3d8ba;color:#146447}
.qualification-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;padding:12px 0}
.crm-qual-status{font-size:.72rem;padding:3px 9px;margin-top:6px;max-width:100%}
@media(max-width:700px){.qualification-checks{grid-template-columns:1fr}}

/* Entrepreneur practice-mode verification: simulated only, never grants real RBQ/GCR approval. */
.demo-sidebar-help{background:#f2fbf6;border-color:#b9ddc9;}
.demo-sidebar-help strong{color:#207448;}
.demo-sidebar-help p{color:#446856;}
.demo-company-note{padding:18px 20px;background:#f2fbf6;border:1px solid #b9ddc9;border-left:4px solid #258657;border-radius:10px;margin:0 0 25px;color:#205a3e;}
.demo-company-note strong{font-size:14px;}
.demo-company-note p{margin:8px 0 0;font-size:13px;line-height:1.6;}
.demo-company-note .button{margin-top:12px;}


/* Fiche de projet professionnelle – portail entrepreneur */
.project-report{background:#fff;border:1px solid #dce5f3;border-radius:18px;overflow:hidden;box-shadow:0 12px 32px rgba(19,54,103,.075);margin:24px 0 30px;color:#173052}
.project-report-head{background:linear-gradient(125deg,#103a7d,#1c60c5);color:#fff;padding:34px 38px;position:relative}
.project-report-eyebrow{font-size:11px;letter-spacing:.115em;font-weight:800;color:#c9ddff;margin-bottom:13px}
.project-report-head h2{font-size:clamp(24px,3vw,34px);line-height:1.15;margin:0 0 10px;color:#fff}
.project-report-head p{margin:0 0 18px;color:#e2eeff;font-size:15px}
.project-report-status{display:inline-block;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.3);border-radius:100px;padding:7px 13px;font-size:12px;font-weight:750;color:white}
.project-report-body{padding:12px 38px 34px}
.project-report-body h3{font-size:15px;color:#16488d;letter-spacing:.035em;text-transform:uppercase;margin:33px 0 16px;border-bottom:1px solid #e2e9f4;padding-bottom:12px}
.project-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 26px}
.project-report-field{display:flex;flex-direction:column;gap:5px;padding:10px 0;border-bottom:1px solid #edf1f7;min-width:0}
.project-report-field span{font-size:12px;color:#667a97}
.project-report-field strong{font-size:15px;font-weight:700;color:#1b355a;overflow-wrap:anywhere}
.project-report-copy{line-height:1.8;white-space:pre-wrap;color:#253d5f;background:#f5f8ff;border-left:3px solid #3479df;border-radius:5px;padding:18px}
.project-report-muted{color:#667a97;line-height:1.65}
.project-report-footer{margin-top:32px;padding:22px 24px;background:#f1f6ff;border:1px solid #e2ecfb;border-radius:12px}
.project-report-footer strong{font-size:17px;color:#18498c}
.project-report-footer p{line-height:1.65;margin:8px 0 13px}
.project-report-footer small{display:block;font-size:12px;color:#5f7392;line-height:1.6}
@media(max-width:650px){.project-report-head{padding:26px 22px}.project-report-body{padding:5px 22px 25px}.project-report-grid{grid-template-columns:1fr}}


/* CRM : titres de colonnes repliables */
.crm-collapsible > .crm-column-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:15px 16px;user-select:none}
.crm-collapsible > .crm-column-toggle::-webkit-details-marker{display:none}
.crm-column-toggle strong{font-size:15px;flex:1;color:inherit}
.crm-column-count{font-size:12px;font-weight:800;padding:4px 9px;border-radius:30px;background:#edf3fd;color:#2058a8}
.crm-column-chevron{font-size:19px;color:#53729c;transition:transform .18s ease}
.crm-collapsible:not([open]) .crm-column-chevron{transform:rotate(-90deg)}
.crm-collapsible > .crm-column-toggle:focus-visible{outline:3px solid #3477d7;outline-offset:-3px;border-radius:8px}
.crm-collapsible:not([open]){align-self:start}

/* Pastille de nouvelles demandes CRM */
.nav-badge-red{background:#dc263f!important;color:#fff!important;border:1px solid #c51c31!important;font-weight:800;min-width:23px;text-align:center}

/* Avertissement explicite avant dérogation d'accès complet entrepreneur. */
.contractor-override-warning{border:2px solid #b42318;border-radius:12px;background:#fff2f0;color:#7a1912;padding:18px;margin:18px 0}
.contractor-override-warning strong{display:block;color:#9d1c13;font-size:15px;margin-bottom:7px}
.contractor-override-warning p{color:#7a1912;line-height:1.5}
