/* Build360 Classic — espace commercial inspiré des usages du modèle de référence.
   L'identité, les données et les parcours métier restent ceux de Build360. */
.cc-workspace{--cc-canvas:#f4f7fb;--cc-surface:#fff;--cc-line:#dce5ef;--cc-text:#17365f;--cc-muted:#6b7f98;--cc-blue:var(--bp-blue,#1d5fbf);--cc-orange:var(--bp-orange,#ff6a00);min-height:calc(100vh - 150px);max-width:100%;margin:-8px;padding:8px;overflow:hidden;border-radius:18px;background:var(--cc-canvas);color:var(--cc-text)}
.cc-workspace .page-head{align-items:center;margin:6px 4px 18px}.cc-workspace .page-title{font-size:clamp(24px,2.2vw,34px);letter-spacing:-.025em}.cc-workspace .page-sub{max-width:720px;color:var(--cc-muted)}
.cc-workspace .card{border:1px solid rgba(220,229,239,.8);border-radius:15px;background:var(--cc-surface);box-shadow:0 8px 24px rgba(23,54,95,.07)}
.cc-workspace .btn{border-radius:999px}.cc-workspace .btn--primary{border-color:var(--cc-orange);background:var(--cc-orange)}.cc-workspace .btn--primary:hover{background:#e85d00}

.cc-suite-nav{display:flex;align-items:center;gap:22px;margin:0 0 22px;padding:11px 14px;border:1px solid rgba(220,229,239,.9);border-radius:15px;background:rgba(255,255,255,.96);box-shadow:0 8px 22px rgba(23,54,95,.06)}
.cc-suite-nav>div:first-child{display:flex;min-width:175px;flex-direction:column}.cc-suite-nav__eyebrow,.cc-ref{color:var(--cc-orange);font:700 10px/1.3 var(--bp-data,monospace);letter-spacing:.08em;text-transform:uppercase}.cc-suite-nav>div:first-child b{font-size:15px}.cc-suite-nav__links{display:flex;gap:3px;overflow:auto;padding:2px;scrollbar-width:thin}.cc-suite-nav__links a{display:flex;min-height:42px;align-items:center;gap:7px;padding:8px 12px;border:1px solid transparent;border-radius:999px;color:var(--cc-muted);font-weight:750;white-space:nowrap;text-decoration:none}.cc-suite-nav__links a small{color:#91a0b2;font:700 9px var(--bp-data,monospace)}.cc-suite-nav__links a:hover{background:#edf3fa;color:var(--cc-text)}.cc-suite-nav__links a.active{border-color:#bfd2ea;background:#e9f2fc;color:var(--cc-blue)}.cc-suite-nav__links a.active small{color:var(--cc-orange)}

.cc-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.cc-kpi{position:relative;display:flex;min-height:106px;flex-direction:column;justify-content:flex-end;padding:17px;border:1px solid rgba(220,229,239,.8);border-top:4px solid var(--cc-blue);border-radius:15px;background:#fff;box-shadow:0 7px 20px rgba(23,54,95,.06)}.cc-kpi>span{position:absolute;top:13px;right:14px;color:#a0adbc;font:700 9px var(--bp-data,monospace)}.cc-kpi small{margin-bottom:5px;color:var(--cc-muted);font-size:12px;font-weight:700}.cc-kpi b{color:var(--cc-text);font-size:clamp(20px,2vw,28px);font-weight:850}.cc-kpi--green{border-top-color:var(--bp-success,#059669)}.cc-kpi--orange{border-top-color:var(--cc-orange)}.cc-kpi--red{border-top-color:var(--bp-danger,#dc2626)}.cc-kpi--muted{border-top-color:#94a3b8}

.cc-filter-pills{display:flex;gap:7px;overflow:auto;padding:2px 2px 12px;scrollbar-width:none}.cc-filter-pills::-webkit-scrollbar{display:none}.cc-filter-pills button{min-height:40px;padding:8px 15px;border:1px solid #cdd9e7;border-radius:999px;background:#fff;color:var(--cc-muted);font-weight:750;white-space:nowrap;cursor:pointer}.cc-filter-pills button:hover{border-color:#9eb9d9;color:var(--cc-blue)}.cc-filter-pills button.active{border-color:var(--cc-blue);background:var(--cc-blue);color:#fff;box-shadow:0 5px 14px rgba(29,95,191,.18)}
.cc-toolbar{display:flex;min-height:60px;align-items:center;gap:12px;padding:9px 11px;border:1px solid rgba(220,229,239,.9);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(23,54,95,.045)}.cc-toolbar form{display:flex;flex:1;gap:8px}.cc-toolbar input,.cc-toolbar select,.cc-line-actions select{min-height:44px;padding:9px 12px;border:1px solid #cbd8e7;border-radius:10px;background:#fff;color:var(--cc-text)}.cc-toolbar input{min-width:220px;flex:1}.cc-toolbar input:focus,.cc-toolbar select:focus{outline:3px solid rgba(29,95,191,.14);border-color:var(--cc-blue)}.cc-toolbar>span{color:var(--cc-muted);font-size:11px;white-space:nowrap}.cc-check{display:flex;min-height:44px;align-items:center;gap:7px;padding:0 8px;white-space:nowrap}.cc-check input{min-width:auto;min-height:auto}

.cc-list-card{overflow:hidden}.cc-list-card>.card__body{padding:0!important}.cc-table-wrap{width:100%;overflow:auto}.cc-table{width:100%;min-width:780px;border-collapse:collapse}.cc-table th{padding:13px 14px;border-bottom:1px solid var(--cc-line);background:#f8fafc;color:var(--cc-muted);font-size:10px;font-weight:800;letter-spacing:.035em;text-align:left;text-transform:uppercase}.cc-table td{padding:14px;border-bottom:1px solid #edf1f6;vertical-align:middle}.cc-table tbody tr{transition:background .16s ease}.cc-table tbody tr[onclick]{cursor:pointer}.cc-table tbody tr:hover{background:#f3f7fc}.cc-table tbody tr:last-child td{border-bottom:0}.cc-table .num{text-align:right}.cc-row-muted{opacity:.62}.cc-danger{color:var(--bp-danger,#dc2626)!important}.cc-empty{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--cc-muted);text-align:center}.cc-empty b{color:var(--cc-text);font-size:17px}
.cc-table tr.cc-payment-overdue{background:#fff4f3}.cc-table tr.cc-payment-overdue:hover{background:#ffebe9}
.cc-progress{height:7px;min-width:110px;overflow:hidden;border-radius:99px;background:#e6edf5}.cc-progress span{display:block;height:100%;border-radius:inherit;background:var(--bp-success,#059669)}.cc-progress--large{height:10px;margin:8px 0 18px}.cc-payment-list{display:grid;gap:6px}.cc-payment-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px;border:1px solid var(--cc-line);border-radius:10px;background:#f8fafc}.cc-payment-list span{display:flex;flex-direction:column}.cc-payment-list small{color:var(--cc-muted)}

.cc-editor{display:grid;min-width:0;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);gap:18px;align-items:start}.cc-editor-main,.cc-live-panel,.cc-paper,.cc-detail-side{min-width:0;border:1px solid rgba(220,229,239,.9);border-radius:15px;background:#fff;box-shadow:0 9px 26px rgba(23,54,95,.07)}.cc-editor-main{padding:20px}.cc-live-panel{position:sticky;top:82px;padding:14px;background:#eef3f8}.cc-live-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 12px}.cc-live-panel__head>span:first-child{display:grid}.cc-live-panel__head small{color:var(--cc-blue);font:700 9px var(--bp-data,monospace)}.cc-live-panel__head b{font-size:15px}.cc-live-panel>p{margin:10px 4px 1px;color:var(--cc-muted);font-size:11px}.cc-form-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.cc-form-grid label{display:flex;min-width:0;flex-direction:column;gap:6px}.cc-form-grid label>span{color:var(--cc-muted);font-size:10px;font-weight:800;text-transform:uppercase}.cc-form-grid input,.cc-form-grid select,.cc-form-grid textarea{width:100%;min-height:44px;padding:9px 11px;border:1px solid #cbd8e7;border-radius:10px;background:#fff;color:var(--cc-text)}.cc-form-grid input:focus,.cc-form-grid select:focus,.cc-form-grid textarea:focus{outline:3px solid rgba(29,95,191,.13);border-color:var(--cc-blue)}.cc-form-grid textarea{resize:vertical}.cc-form-grid--bottom{margin-top:19px}.cc-span-2{grid-column:1/-1}.cc-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:25px 0 10px;padding-bottom:9px;border-bottom:1px solid var(--cc-line)}.cc-section-title>div{display:flex;flex-direction:column}.cc-section-title span{color:var(--cc-orange);font:700 10px var(--bp-data,monospace)}.cc-section-title b{font-size:18px}.cc-section-title small{color:var(--cc-muted)}
.cc-line-head,.cc-line{display:grid;grid-template-columns:76px minmax(200px,1fr) 60px 72px 105px 85px 110px 44px;gap:6px;align-items:center}.cc-line-head{padding:7px;color:var(--cc-muted);font-size:9px;font-weight:800;text-transform:uppercase}.cc-lines{display:grid;gap:8px}.cc-line{padding:8px;border:1px solid #e1e8f1;border-radius:11px;background:#f9fbfd}.cc-line input,.cc-line select{width:100%;min-width:0;min-height:40px;padding:7px;border:1px solid #cbd8e7;border-radius:8px;background:#fff}.cc-line>b{text-align:right;font:700 11px var(--bp-data,monospace)}.cc-icon-btn{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid #d6e0eb;border-radius:10px;background:#fff;color:var(--bp-danger,#dc2626);font-size:20px;cursor:pointer}.cc-icon-btn:hover{background:#feecec}.cc-line-actions,.cc-form-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px}.cc-form-actions{justify-content:flex-end}.cc-line-actions select{min-width:240px;flex:1}
.cc-editor .cc-line-head{display:none}.cc-editor .cc-line{grid-template-columns:76px minmax(160px,1fr) 58px 72px}.cc-editor .cc-line>*:nth-child(7){text-align:left}
.cc-totals{display:grid;gap:7px}.cc-totals>div{display:flex;justify-content:space-between;gap:14px;padding-bottom:7px;border-bottom:1px solid #e8edf3}.cc-totals span{color:var(--cc-muted)}.cc-total-grand{margin-top:5px;padding:11px!important;border:0!important;border-radius:8px;background:var(--cc-blue);color:#fff}.cc-total-grand span,.cc-total-grand b{color:#fff}

.cc-document-preview{overflow:hidden;border:1px solid #d7e0ea;border-radius:6px;background:#fff;box-shadow:0 12px 30px rgba(23,54,95,.11);color:#1e3049}.cc-document-preview>header{display:flex;justify-content:space-between;gap:16px;padding:19px 20px;border-bottom:2px solid var(--cc-text)}.cc-document-brand{display:flex;align-items:center;gap:10px}.cc-document-brand img{max-width:105px;max-height:46px;object-fit:contain}.cc-document-brand span,.cc-document-id{display:grid;gap:2px}.cc-document-brand small,.cc-document-id small{color:#718197;font-size:10px}.cc-document-id{text-align:right}.cc-document-id strong{font-size:20px;letter-spacing:.08em}.cc-document-id b{color:var(--cc-blue);font-size:10px}.cc-document-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px 20px}.cc-document-meta div{display:grid;gap:3px}.cc-document-meta span{color:#718197;font-size:9px;font-weight:800;text-transform:uppercase}.cc-document-meta b{font-size:11px}.cc-document-preview table{width:100%;border-collapse:collapse;font-size:10px}.cc-document-preview th{padding:8px;background:var(--cc-text);color:#fff;text-align:left;font-size:8px;text-transform:uppercase}.cc-document-preview td{padding:8px;border-bottom:1px solid #e7edf4}.cc-document-preview .num{text-align:right;white-space:nowrap}.cc-preview-empty{padding:28px!important;color:#8392a5;text-align:center!important}.cc-document-bottom{display:grid;grid-template-columns:1fr minmax(190px,42%);gap:18px;padding:17px 20px}.cc-document-bottom p{margin:5px 0;color:#718197;font-size:9px;white-space:pre-line}.cc-document-bottom .cc-totals{font-size:9px}.cc-document-preview>footer{margin:0 20px;padding:10px 0 15px;border-top:1px solid #dfe6ef;color:#78879a;font-size:8px}

.cc-detail{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.cc-paper{padding:24px}.cc-paper>header{display:flex;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:2px solid var(--cc-text)}.cc-paper>header>div{display:flex;flex-direction:column}.cc-paper>header>div:last-child{text-align:right}.cc-paper>header span{color:var(--cc-muted);font-size:9px;font-weight:800}.cc-paper>header b{font-size:16px}.cc-paper>header small{color:var(--cc-muted)}.cc-paper h2{margin:22px 0;font-size:22px}.cc-paper-bottom{display:grid;grid-template-columns:1fr minmax(230px,34%);gap:30px;margin-top:24px}.cc-paper-bottom p{color:var(--cc-muted);white-space:pre-line}.cc-detail-side{position:sticky;top:82px;padding:18px}.cc-detail-side h3{margin:15px 0 8px;color:var(--cc-text)}.cc-detail-side p{color:var(--cc-muted);font-size:12px;line-height:1.55}.cc-detail-side dl{display:grid;gap:8px}.cc-detail-side dl>div{display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--cc-line)}.cc-detail-side dt{color:var(--cc-muted)}.cc-detail-side dd{font-weight:800}.cc-supplier-form{border-top:4px solid var(--cc-orange)!important}

/* Devis : mêmes outils avancés, présentation plus proche d'un logiciel de devis. */
.cc-workspace .b360-fin-nav{margin:0 0 12px;padding:0;border:0;background:transparent;box-shadow:none}.cc-workspace .b360-fin-primary{flex:0 1 auto;gap:7px}.cc-workspace .b360-fin-primary button{min-height:40px;flex:0 0 auto;padding:8px 15px;border:1px solid #cdd9e7;border-radius:999px;background:#fff;box-shadow:none;color:var(--cc-muted)}.cc-workspace .b360-fin-primary button.active{border-color:var(--cc-blue);background:var(--cc-blue);color:#fff;box-shadow:0 5px 14px rgba(29,95,191,.18)}.cc-workspace .b360-est-selector{margin-bottom:14px;padding:10px 12px;border:1px solid var(--cc-line);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(23,54,95,.045)}.cc-workspace .b360-est-selector select{border-radius:10px}.cc-workspace .b360-list-table th{padding:13px 12px;background:#f8fafc;color:var(--cc-muted);font-size:10px;text-transform:uppercase}.cc-workspace .b360-list-table td{padding:14px 12px;border-bottom:1px solid #edf1f6}.cc-workspace .b360-list-table tbody tr:hover{background:#f3f7fc!important}.cc-workspace .b360-quote-sheet,.cc-workspace .b360-price-base{border-color:var(--cc-line);border-radius:15px;box-shadow:0 9px 26px rgba(23,54,95,.07)}.cc-workspace .b360-quote-sheet__toolbar,.cc-workspace .b360-price-base__head{background:#fff}.cc-workspace .b360-quote-table th,.cc-workspace .b360-price-table th{background:var(--cc-text)}.cc-workspace .b360-client-paper{border-radius:6px;box-shadow:0 14px 34px rgba(23,54,95,.11)}
.cc-quote-editor{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);gap:18px;align-items:start}.cc-quote-preview{position:sticky;top:82px;min-width:0;padding:14px;border:1px solid var(--cc-line);border-radius:15px;background:#eef3f8;box-shadow:0 9px 26px rgba(23,54,95,.07)}.cc-quote-preview>p{margin:10px 3px 0;color:var(--cc-muted);font-size:10px}.cc-quote-preview__paper{overflow:hidden;border:1px solid #d7e0ea;border-radius:5px;background:#fff;box-shadow:0 12px 28px rgba(23,54,95,.1)}.cc-quote-preview__paper>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px;border-bottom:2px solid var(--cc-text)}.cc-quote-preview__paper>header>div{display:flex;align-items:center;gap:8px}.cc-quote-preview__paper>header img{max-width:90px;max-height:42px;object-fit:contain}.cc-quote-preview__paper>header span{display:grid;text-align:right}.cc-quote-preview__paper>header strong{font-size:19px;letter-spacing:.08em}.cc-quote-preview__paper>header span b{color:var(--cc-blue);font-size:9px}.cc-quote-preview__meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px}.cc-quote-preview__meta span{display:grid}.cc-quote-preview__meta span:last-child{grid-column:1/-1}.cc-quote-preview__meta small{color:var(--cc-muted);font-size:8px;font-weight:800;text-transform:uppercase}.cc-quote-preview__meta b{font-size:10px}.cc-quote-preview table{width:100%;border-collapse:collapse;font-size:9px}.cc-quote-preview th{padding:7px;background:var(--cc-text);color:#fff;text-align:left;font-size:7px;text-transform:uppercase}.cc-quote-preview td{padding:7px;border-bottom:1px solid #e7edf4}.cc-quote-preview .num{text-align:right;white-space:nowrap}.cc-quote-preview__more{margin:8px 12px;color:var(--cc-muted);font-size:8px;text-align:center}.cc-quote-preview__totals{display:grid;gap:6px;margin:14px 18px;padding-left:35%;font-size:9px}.cc-quote-preview__totals span{display:flex;justify-content:space-between;padding-bottom:5px;border-bottom:1px solid #e4eaf1}.cc-quote-preview__totals .grand{padding:8px;border:0;border-radius:5px;background:var(--cc-blue);color:#fff;font-weight:800}

@media(max-width:1280px){.cc-quote-editor{grid-template-columns:1fr}.cc-quote-preview{position:static}.cc-quote-preview__paper{max-width:720px;margin:auto}}
@media(max-width:1200px){.cc-editor,.cc-detail{grid-template-columns:1fr}.cc-live-panel,.cc-detail-side{position:static}.cc-line-head{display:none}.cc-line{grid-template-columns:70px minmax(180px,1fr) 60px 70px 100px 82px 100px 44px;overflow:auto}.cc-suite-nav{align-items:flex-start;flex-direction:column;gap:8px}.cc-suite-nav>div:first-child{min-width:0}}
@media(max-width:760px){.cc-workspace{margin:-3px;padding:3px;background:#f5f7fa}.cc-kpis{grid-template-columns:1fr 1fr}.cc-kpi{min-height:96px;padding:14px}.cc-toolbar{align-items:stretch;flex-direction:column}.cc-toolbar form{flex-direction:column}.cc-toolbar input{min-width:0;width:100%}.cc-form-grid{grid-template-columns:1fr}.cc-span-2{grid-column:auto}.cc-editor-main,.cc-paper{padding:14px}.cc-editor .cc-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;overflow:visible}.cc-line>*:nth-child(2){grid-column:1/-1}.cc-line>*:nth-child(7){align-self:center;text-align:left}.cc-line>*:nth-child(8){justify-self:end}.cc-line input,.cc-line select{min-height:44px}.cc-line-actions{align-items:stretch;flex-direction:column}.cc-line-actions>*{width:100%}.cc-paper>header,.cc-paper-bottom{flex-direction:column;grid-template-columns:1fr}.cc-paper>header>div:last-child{text-align:left}.cc-suite-nav{margin:0 0 15px;padding:10px}.cc-suite-nav__links{width:100%}.cc-suite-nav__links a{min-width:max-content}.cc-document-preview>header{padding:15px}.cc-document-meta{grid-template-columns:1fr;padding:13px 15px}.cc-document-bottom{grid-template-columns:1fr;padding:15px}.cc-document-preview{min-width:0}.cc-document-preview th:nth-child(1),.cc-document-preview td:nth-child(1),.cc-document-preview th:nth-child(3),.cc-document-preview td:nth-child(3),.cc-document-preview th:nth-child(5),.cc-document-preview td:nth-child(5){display:none}.cc-workspace .b360-fin-primary{width:100%;overflow:auto}.cc-workspace .b360-fin-primary button{min-width:max-content}}
@media(max-width:520px){.cc-kpis{grid-template-columns:1fr}.cc-kpi{min-height:90px}.cc-workspace .page-title{font-size:23px}}
@media(prefers-reduced-motion:reduce){.cc-table tbody tr,.cc-suite-nav__links a,.cc-filter-pills button{transition:none}}
@media print{.cc-suite-nav,.sidebar,.topbar,.appfoot,.page-head,.cc-detail-side{display:none!important}.cc-workspace{margin:0;padding:0;background:#fff}.main,.content{margin:0!important;padding:0!important}.cc-detail{display:block}.cc-paper{border:0;box-shadow:none}}
