.asscw-wrap{max-width:1280px;margin:20px auto;font-family:Arial,sans-serif}
.asscw-search-panel,.asscw-card{background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:14px;padding:16px;margin-bottom:18px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.asscw-label{display:block;font-weight:600;margin-bottom:8px}
.asscw-search-input-wrap{position:relative}
.asscw-search-input{width:100%;padding:12px 44px 12px 14px;border:1px solid rgba(207,207,207,.8);border-radius:10px;font-size:16px;background:rgba(255,255,255,.75);box-sizing:border-box}
.asscw-clear-search{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:none;border-radius:50%;background:rgba(0,0,0,.08);color:#384759;font-size:20px;line-height:28px;text-align:center;cursor:pointer;display:none;padding:0}
.asscw-clear-search:hover{background:rgba(0,0,0,.14)}
.asscw-search-results{margin-top:10px;border:1px solid rgba(229,229,229,.7);border-radius:10px;overflow:hidden;background:rgba(255,255,255,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.asscw-result-item{padding:12px 14px;border-bottom:1px solid rgba(238,238,238,.8);cursor:pointer;transition:background .18s ease,border-left-color .18s ease,box-shadow .18s ease;border-left:4px solid transparent}
.asscw-result-item:last-child{border-bottom:0}
.asscw-result-item:hover{background:rgba(248,248,248,.75)}
.asscw-result-item.asscw-selected{background:rgba(242,145,27,.12);border-left-color:#F2911B;box-shadow:inset 0 0 0 1px rgba(242,145,27,.18)}
.asscw-result-title{font-weight:700;margin-bottom:4px}
.asscw-result-meta{font-size:13px;color:#384759}
.asscw-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.asscw-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.asscw-empty,.asscw-loading,.asscw-error{color:#666}
.asscw-info-grid{display:grid;grid-template-columns:170px 1fr;gap:8px 12px}
.asscw-info-label{font-weight:700}
.asscw-lines{margin:0;padding-left:18px}
.asscw-actions{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px}
.asscw-order-top-actions{display:flex;flex-wrap:wrap;gap:10px}
.asscw-order-actions{display:flex;flex-wrap:wrap;gap:8px}
.asscw-button{display:inline-flex;align-items:center;justify-content:center;background:#3270A6 !important;color:#fff !important;border:1px solid #3270A6 !important;border-radius:20px;padding:10px 14px;cursor:pointer;text-decoration:none;font-size:14px;font-weight:600;line-height:1.2;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}
.asscw-button:hover{background:#255d8f;border-color:#255d8f;color:#fff}
.asscw-button:focus{outline:none;box-shadow:0 0 0 3px rgba(242,145,27,.18)}
.asscw-button[disabled]{opacity:.6;cursor:not-allowed}
.asscw-button-secondary{background:#fff;color:#3270A6;border:2px solid #3270A6}
.asscw-button-secondary:hover{background:#eef3f9;border-color:#255d8f;color:#255d8f}
.asscw-button-small{padding:4px 10px !important;font-size:12px !important;border-radius:16px !important;white-space:nowrap !important;line-height:1.3 !important}
.asscw-orders-table,.asscw-editor-table{width:100%;border-collapse:collapse;table-layout:auto}
.asscw-orders-table th,.asscw-orders-table td,.asscw-editor-table th,.asscw-editor-table td{padding:10px 8px;border-bottom:1px solid rgba(238,238,238,.8);text-align:left;font-size:14px;vertical-align:top}
.asscw-editor-table td:first-child{min-width:0;word-break:break-word;max-width:0}
.asscw-editor-table td:nth-child(2){width:70px;white-space:nowrap}
.asscw-editor-table td:nth-child(3){width:90px;white-space:nowrap}
.asscw-editor-table td:nth-child(4){width:160px}
.asscw-order-actions{display:flex;flex-direction:column;align-items:stretch;gap:4px;min-width:90px}
.asscw-orders-table th,.asscw-editor-table th{font-weight:700}
.asscw-muted{color:#5a5a5a;font-size:13px}
.asscw-order-layout{display:grid !important;grid-template-columns:1.15fr .85fr !important;gap:18px;align-items:start}.asscw-order-layout>*{min-width:0;overflow:clip}
.asscw-panel{border:1px solid rgba(229,229,229,.9);border-radius:12px;padding:14px;background:rgba(255,255,255,.6)}
.asscw-panel h4{margin:0 0 10px 0}
.asscw-inline-input{width:90px;padding:8px;border:1px solid #BFAC95;border-radius:8px;box-sizing:border-box}
.asscw-note{width:100%;min-height:110px;padding:10px;border:1px solid #BFAC95;border-radius:10px;box-sizing:border-box}
.asscw-product-search-wrap{display:flex;flex-direction:column;gap:8px}
.asscw-product-results{border:1px solid rgba(229,229,229,.9);border-radius:10px;overflow:hidden;background:#fff;max-height:320px;overflow-y:auto}
.asscw-product-result{padding:10px 12px;border-bottom:1px solid rgba(238,238,238,.9);display:flex;align-items:center;justify-content:space-between;gap:10px}
.asscw-product-result:last-child{border-bottom:0}
.asscw-product-meta{font-size:12px;color:#666}

.asscw-product-result-main,.asscw-order-item-main{display:flex;align-items:flex-start;gap:10px;min-width:0}
.asscw-product-thumb{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:44px !important;height:44px !important;padding:0 !important;border:1px solid rgba(216,161,139,.8) !important;border-radius:10px !important;background:#fff !important;overflow:hidden !important;cursor:pointer !important;flex:0 0 44px !important;box-sizing:border-box !important}
.asscw-product-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.asscw-product-thumb:hover{box-shadow:0 0 0 3px rgba(242,145,27,.12)}
.asscw-product-thumb.is-inline{align-self:flex-start}
@media (max-width:980px){.asscw-product-thumb{width:40px;height:40px;flex-basis:40px}}
.asscw-editor-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.asscw-status-badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#F2E4D8;color:#c47a10;font-size:12px;font-weight:700}
.asscw-notice{margin-bottom:14px;padding:12px 14px;border-radius:10px;font-size:14px;border:1px solid transparent;display:flex;align-items:center;justify-content:space-between;gap:10px}
.asscw-notice.is-success{background:#eef8f1;border-color:#9ed2ac;color:#1b5e20}
.asscw-notice.is-error{background:#fff1f0;border-color:#f0b8b3;color:#a61b1b}
.asscw-notice-close{background:none;border:none;cursor:pointer;font-size:18px;line-height:1;padding:0 2px;flex-shrink:0;opacity:.6;color:inherit}
.asscw-notice-close:hover{opacity:1}
.asscw-frequent-products{margin-top:20px;padding-top:16px;border-top:1px solid rgba(229,229,229,.9)}
.asscw-frequent-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.asscw-frequent-product,#ass-client-workspace .asscw-frequent-product{background:#fff !important;border:2px solid #F2911B !important;color:#F2911B !important;border-radius:999px !important;padding:4px 12px !important;cursor:pointer;font-size:12px !important;line-height:1.3 !important}
.asscw-frequent-product:hover,#ass-client-workspace .asscw-frequent-product:hover{background:#F2E4D8 !important;color:#c47a10 !important;border-color:#c47a10 !important}
.asscw-stock-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}
.asscw-stock-badge.instock{background:#edf9f0;color:#237a3b}
.asscw-stock-badge.onbackorder{background:#fff7e8;color:#9a6500}
.asscw-stock-badge.outofstock{background:#fff1f0;color:#a61b1b}
@media (max-width:980px){.asscw-main-grid,.asscw-order-layout,.asscw-editor-summary{grid-template-columns:1fr}.asscw-info-grid{grid-template-columns:1fr}.asscw-card-header{flex-direction:column;align-items:flex-start}}

.asscw-search-shortcuts{margin-top:10px;color:#5a5a5a;font-size:13px}
.asscw-selected-client-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;padding:10px 12px;border:1px solid rgba(216,161,139,.9);border-radius:10px;background:#F2E4D8;color:#c47a10}
.asscw-selected-client-label{font-weight:700}
.asscw-selected-client-name{font-weight:600}

.asscw-frequent-product-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.asscw-product-preview-panel{margin-top:14px;position:relative;box-sizing:border-box;max-width:100%;width:100%}
.asscw-product-preview-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.asscw-product-preview-close{border:none;background:rgba(0,0,0,.06);width:32px;height:32px;border-radius:999px;cursor:pointer;font-size:22px;line-height:1}
.asscw-product-preview-close:hover{background:rgba(0,0,0,.12)}
.asscw-product-preview-image{margin-bottom:12px}
.asscw-product-preview-image img{max-width:180px;height:auto;border-radius:10px;border:1px solid rgba(229,229,229,.9)}
/* Mention "image non contractuelle" dans le panneau preview produit (Q15-B :
   affichee uniquement sur le visuel detaille, pas sur les vignettes inline). */
.asscw-product-preview-disclaimer{display:block;margin-top:6px;font-size:11px;font-style:italic;color:#9aa3ad;line-height:1.3;max-width:180px}
.asscw-product-preview-meta,.asscw-product-preview-attrs,.asscw-product-preview-text{margin-top:12px}
.asscw-product-preview-meta>div,.asscw-product-preview-attrs>div{margin-top:6px}

.asscw-product-preview-host{display:flex;flex-direction:column;gap:14px;margin-bottom:14px;min-width:0;max-width:100%;overflow:hidden}
.asscw-order-layout.has-product-preview{align-items:start}
.asscw-product-preview-panel{margin-top:0;position:relative;box-sizing:border-box;max-width:100%;width:100%}
.asscw-product-preview-panel.is-side-drawer{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto;overflow-x:hidden;box-shadow:0 12px 30px rgba(0,0,0,.10);width:100%;max-width:100%;box-sizing:border-box;overflow-wrap:break-word}
.asscw-product-preview-panel.is-bottom-sheet{position:fixed;left:12px;right:12px;bottom:12px;z-index:9999;max-height:72vh;overflow:auto;box-shadow:0 18px 40px rgba(0,0,0,.18);border:1px solid rgba(216,161,139,.95)}
.asscw-product-preview-panel.is-bottom-sheet .asscw-product-preview-close{position:sticky;top:0}
.asscw-product-preview-body{padding-bottom:4px}
.asscw-product-preview-image img{width:100%;max-width:220px}
.asscw-product-preview-disclaimer{max-width:220px}
@media (min-width:981px) and (orientation:landscape){
  .asscw-order-layout{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}
}
@media (max-width:980px), (orientation:portrait){
  .asscw-product-preview-host{display:block;height:0;margin:0}
  .asscw-order-layout.has-product-preview{padding-bottom:38vh}
}

.asscw-product-thumb.is-placeholder{background:#f7f3f1;color:#c47a10;font-size:11px;font-weight:700}
.asscw-product-thumb-fallback{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:9px;color:#999;text-align:center;word-break:break-word;overflow:hidden;padding:2px}
.asscw-conditioning-badge{display:inline-block;margin-top:6px;padding:3px 8px;border-radius:999px;background:#f3efe9;color:#6d523f;font-size:11px;font-weight:700;line-height:1.2}
.asscw-product-name-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}

.asscw-form-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
	margin-bottom:12px;
}
@media (max-width:900px){
	.asscw-form-grid{
		grid-template-columns:1fr;
	}
}

.asscw-tabs{
	display:flex;
	gap:8px;
	margin-bottom:14px;
	flex-wrap:wrap;
}

.asscw-tab-button{
	border:1px solid rgba(0,0,0,.12);
	background:#fff;
	border-radius:8px;
	padding:8px 12px;
	cursor:pointer;
	font-weight:600;
}

.asscw-tab-button.is-active{
	background:#2271b1;
	color:#fff;
	border-color:#2271b1;
}

.asscw-tab-panel{
	margin-top:6px;
}

.asscw-form-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
	margin-bottom:12px;
}

.asscw-stacked-list{
	display:grid;
	gap:10px;
}

.asscw-stacked-item{
	border:1px solid rgba(0,0,0,.08);
	border-radius:10px;
	padding:12px;
	background:rgba(255,255,255,.6);
}

@media (max-width:900px){
	.asscw-form-grid{
		grid-template-columns:1fr;
	}
}

.asscw-tabs{
	display:flex;
	gap:8px;
	margin-bottom:14px;
	flex-wrap:wrap;
}

.asscw-tab-button{
	border:1px solid rgba(0,0,0,.12);
	background:#fff;
	border-radius:8px;
	padding:8px 12px;
	cursor:pointer;
	font-weight:600;
}

.asscw-tab-button.is-active{
	background:#2271b1;
	color:#fff;
	border-color:#2271b1;
}

.asscw-tab-panel{
	margin-top:6px;
}

.asscw-form-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
	margin-bottom:12px;
}

.asscw-stacked-list{
	display:grid;
	gap:10px;
}

.asscw-stacked-item{
	border:1px solid rgba(0,0,0,.08);
	border-radius:10px;
	padding:12px;
	background:rgba(255,255,255,.6);
}

.asscw-stacked-item .asscw-form-grid{
	margin-bottom:10px;
}

@media (max-width:900px){
	.asscw-form-grid{
		grid-template-columns:1fr;
	}
}

.asscw-item-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}


.asscw-tabs-primary{margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid rgba(229,229,229,.9)}
.asscw-summary-grid{display:grid;grid-template-columns:1fr;gap:14px}
.asscw-summary-section{border:1px solid rgba(229,229,229,.9);border-radius:12px;padding:14px;background:rgba(255,255,255,.55);margin-bottom:14px}
.asscw-summary-section h4{margin:0 0 10px 0}
.asscw-tab-panel .asscw-frequent-products{margin-top:0;padding-top:0;border-top:0}
.asscw-tab-panel .asscw-actions:last-child{margin-top:16px}
@media (min-width:1100px){.asscw-summary-grid{grid-template-columns:1fr 1fr}}

.asscw-order-bonus{margin:20px 0 12px;padding:14px 16px;border-radius:10px;background:#FFF4CC;color:#9A6500;font-weight:600}
.asscw-order-bonus.is-reached{background:#EAF7EE;color:#237A3B}

.asscw-order-transport-info{margin:8px 0 12px;padding:12px 16px;border-radius:10px;background:#EEF4FF;color:#1A4FA0;font-weight:500}

.asscw-editor-summary-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.asscw-editor-summary-row--totals{align-items:start}
@media (max-width:980px){.asscw-editor-summary-row{grid-template-columns:1fr}}

.asscw-totals-stack{display:flex;flex-direction:column;gap:6px;grid-template-columns:none}
.asscw-totals-stack .asscw-total-line{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:4px 0;color:#384759}
.asscw-totals-stack .asscw-total-line strong{font-weight:600}
.asscw-totals-stack .asscw-total-line span{font-variant-numeric:tabular-nums;white-space:nowrap}
.asscw-totals-stack .asscw-total-line--bonus{color:#3270A6}
.asscw-totals-stack .asscw-total-line--bonus span{font-weight:600}
.asscw-totals-stack .asscw-total-line--final{border-top:1px solid #BFAC95;margin-top:4px;padding-top:8px;font-size:1.05em}
.asscw-totals-stack .asscw-total-line--final strong,.asscw-totals-stack .asscw-total-line--final span{font-weight:700;color:#384759}

.asscw-orders-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:2px solid #e5e7eb}
.asscw-orders-tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:9px 18px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:color .15s,border-color .15s;border-radius:4px 4px 0 0}
.asscw-orders-tab:hover{color:#374151;background:rgba(0,0,0,.03)}
.asscw-orders-tab--active{background:#2271b1;color:#fff;border-bottom-color:#2271b1;font-weight:600;border-radius:6px 6px 0 0}
.asscw-tab-badge{display:inline-flex;align-items:center;justify-content:center;background:#c0392b;color:#fff;font-size:11px;font-weight:700;border-radius:10px;min-width:18px;height:18px;padding:0 5px;margin-left:5px;vertical-align:middle}
#asscw-orders .asscw-actions{margin-top:0;margin-bottom:16px}

#ass-client-workspace button{font-family:inherit}
#ass-client-workspace .asscw-button,
#ass-client-workspace a.asscw-button{color:#fff;text-decoration:none}
#ass-client-workspace .asscw-button:visited,
#ass-client-workspace a.asscw-button:visited{color:#fff}
#ass-client-workspace .asscw-button:hover,
#ass-client-workspace a.asscw-button:hover{color:#fff;text-decoration:none}
#ass-client-workspace .asscw-button-secondary,
#ass-client-workspace a.asscw-button-secondary{background:#fff;color:#3270A6;border:2px solid #3270A6;text-decoration:none}
#ass-client-workspace .asscw-button-secondary:visited,
#ass-client-workspace a.asscw-button-secondary:visited{color:#3270A6}
#ass-client-workspace .asscw-button-secondary:hover,
#ass-client-workspace a.asscw-button-secondary:hover{background:#eef3f9;color:#255d8f;border-color:#255d8f}
#ass-client-workspace .asscw-button{padding:10px 14px;font-size:14px;font-weight:600;line-height:1.2}
#ass-client-workspace .asscw-button-small{padding:4px 10px;font-size:12px;line-height:1.3;border-radius:16px}
#ass-client-workspace .asscw-order-actions .asscw-button,
#ass-client-workspace .asscw-order-actions .asscw-button-secondary{background:#fff !important;color:#3270A6 !important;border:2px solid #3270A6 !important}
#ass-client-workspace .asscw-order-actions .asscw-button:hover,
#ass-client-workspace .asscw-order-actions .asscw-button-secondary:hover{background:#eef3f9 !important;color:#255d8f !important;border-color:#255d8f !important}
#ass-client-workspace .asscw-orders-tab--active{background:#2271b1;color:#fff;border-bottom-color:#2271b1}
#ass-client-workspace .asscw-orders-tab--active:hover{background:#1a5a96;color:#fff}

/* Largeurs colonnes tableau produits éditeur */
.asscw-editor-table th:nth-child(1),
.asscw-editor-table td:nth-child(1){ width:55%; }
.asscw-editor-table th:nth-child(2),
.asscw-editor-table td:nth-child(2){ width:90px; min-width:90px; }
.asscw-editor-table th:nth-child(3),
.asscw-editor-table td:nth-child(3){ width:110px; }
.asscw-editor-table th:nth-child(4),
.asscw-editor-table td:nth-child(4){ width:80px; }

/* ==========================================================================
   Section Découvrir — grille produits (mode client)
   ========================================================================== */

.asscw-discover-section {
    margin-bottom: 32px;
}

.asscw-discover-block {
    margin-bottom: 28px;
}

.asscw-discover-title {
    font-size: 1.1em;
    font-weight: 700;
    color: #1a2e4a;
    margin: 0 0 14px 0;
    padding-bottom: 8px;
    border-bottom: 2px solid #e8edf2;
}

.asscw-discover-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 16px;
}

.asscw-discover-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e8edf2;
    border-radius: 8px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: box-shadow .2s, transform .2s;
}

.asscw-discover-card:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,.1);
    transform: translateY(-2px);
    text-decoration: none;
    color: inherit;
}

.asscw-discover-card__img {
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f5f7fa;
}

.asscw-discover-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.asscw-discover-card__badge {
    position: absolute;
    top: 8px;
    left: 8px;
    background: #c0392b;
    color: #fff;
    font-size: .72em;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

/* Mention "image non contractuelle" dans les cartes Decouvrir / Promotions
   (rendu PHP server-side via render_discover_section). */
.asscw-discover-card__disclaimer {
    display: block;
    font-size: 10px;
    font-style: italic;
    color: #9aa3ad;
    text-align: center;
    padding: 4px 8px 0;
    line-height: 1.25;
}

.asscw-discover-card__body {
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
}

.asscw-discover-card__name {
    font-size: .88em;
    font-weight: 600;
    color: #1a2e4a;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.asscw-discover-card__price {
    font-size: .82em;
    color: #384759;
    margin-top: auto;
}

.asscw-discover-card--sale .asscw-discover-card__price {
    color: #c0392b;
    font-weight: 600;
}

@media (max-width: 600px) {
    .asscw-discover-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ==========================================================================
   Bloc "Pour compléter votre commande"
   ========================================================================== */

.asscw-related-products-block {
    margin-top: 0;
    margin-bottom: 0;
    grid-column: 1 / -1;
}

.asscw-related-products-block h4 {
    font-size: 1em;
    font-weight: 700;
    margin: 0 0 12px 0;
    color: #1a2e4a;
}

.asscw-related-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 10px;
}

.asscw-related-card {
    display: flex;
    flex-direction: column;
    border: 1px solid #e8edf2;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
}

.asscw-related-card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
    background: #f5f7fa;
}

.asscw-related-card__no-img {
    aspect-ratio: 1 / 1;
    background: #f5f7fa;
}

/* Mention "image non contractuelle" sous l'image dans les cartes
   "Pour completer votre commande" (recommandations workspace). */
.asscw-related-card__disclaimer {
    display: block;
    font-size: 10px;
    font-style: italic;
    color: #9aa3ad;
    text-align: center;
    padding: 4px 6px 0;
    line-height: 1.25;
}

.asscw-related-card__body {
    padding: 8px 10px 4px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

.asscw-related-card__name {
    font-size: .82em;
    font-weight: 600;
    color: #1a2e4a;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.asscw-related-card__price {
    font-size: .78em;
    color: #5a5a5a;
}

.asscw-related-card .asscw-button {
    margin: 6px 8px 8px;
    width: calc(100% - 16px);
    text-align: center;
    font-size: .8em;
}

/* Prix dans la fiche produit */
.asscw-product-preview-price del {
    color: #999;
    font-size: .9em;
    margin-right: 4px;
}
.asscw-product-preview-price ins {
    color: #c0392b;
    font-weight: 700;
    text-decoration: none;
}

/* Message conditionnement PCB */
.asscw-product-pcb-notice {
    margin-top: 8px;
    padding: 8px 12px;
    background: #fff8e1;
    border-left: 3px solid #f9a825;
    border-radius: 4px;
    font-size: .88em;
    color: #5d4037;
}

/* Bouton tooltip PCB */
.asscw-pcb-tooltip-btn {
    background: #e8f4fd;
    border-color: #3270A6;
    color: #3270A6;
    font-weight: 700;
    min-width: 26px;
    padding: 2px 7px;
    cursor: help;
    position: relative;
}
.asscw-pcb-tooltip-btn:hover {
    background: #3270A6;
    color: #fff;
}

/* =========================================================================
   Écran liste des commandes — mode client
   ========================================================================= */

/* Séparateur entre bloc brouillon et historique */
.asscw-client-orders-separator {
    border: none;
    border-top: 1px solid #BFAC95;
    margin: 18px 0 14px;
}

/* Ligne de filtres dates */
.asscw-client-orders-filter {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    margin-bottom: 16px;
}
.asscw-client-orders-filter-label {
    font-weight: 600;
    font-size: 13px;
    color: #384759;
    white-space: nowrap;
    flex-shrink: 0;
}
.asscw-client-orders-filter-sep {
    color: #BFAC95;
    font-size: 14px;
    flex-shrink: 0;
}
.asscw-date-input {
    border: 1px solid #BFAC95;
    border-radius: 8px;
    padding: 5px 8px;
    font-size: 13px;
    color: #384759;
    background: #fff;
    outline: none;
    transition: border-color .15s;
    width: 140px;
    flex: 0 0 140px;
    box-sizing: border-box;
}
.asscw-date-input:focus {
    border-color: #3270A6;
}

/* Carte brouillon en cours */
.asscw-client-draft-card {
    background: #F2E4D8;
    border: 2px solid #F2911B;
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 4px;
}
.asscw-client-draft-card-header {
    margin-bottom: 10px;
}
.asscw-client-draft-badge {
    display: inline-block;
    background: #F2911B;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-radius: 20px;
    padding: 2px 10px;
}
.asscw-client-draft-card-body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}
.asscw-client-draft-info {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}
.asscw-client-draft-ref {
    font-weight: 700;
    font-size: 15px;
    color: #384759;
}
.asscw-client-draft-date,
.asscw-client-draft-total {
    font-size: 13px;
    color: #384759;
}
.asscw-client-draft-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
}

/* Zone "pas de brouillon" — bouton Nouvelle commande */
.asscw-client-no-draft {
    padding: 6px 0 4px;
}

@media (max-width: 600px) {
    .asscw-client-draft-card-body {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ── Mon compte client (Tranche 2b) ─────────────────────────────────────── */
.asscw-account-block { margin-bottom: 18px; }
.asscw-account-block h4 { margin: 0 0 10px; color: #384759; }
.asscw-account-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 16px; margin-bottom: 12px; }
.asscw-account-note { font-size: 13px; color: #6b7280; margin: 8px 0 12px; }
.asscw-account-fb { margin-left: 10px; font-size: 13px; color: #2c7a2c; }
.asscw-account-readonly { display: flex; flex-direction: column; gap: 6px; }
.asscw-account-ro-row { display: flex; gap: 10px; padding: 6px 0; border-bottom: 1px solid #F2E4D8; }
.asscw-account-ro-label { flex: 0 0 200px; color: #6b7280; font-size: 13px; }
.asscw-account-ro-val { flex: 1; color: #384759; }
.asscw-account-addr { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 10px 12px; border: 1px solid #BFAC95; border-radius: 6px; margin-bottom: 8px; background: #fff; }
.asscw-account-addr-body { font-size: 14px; color: #384759; }
.asscw-account-addr-actions { display: flex; gap: 6px; flex-shrink: 0; }
.asscw-account-addr-form { border: 1px solid #3270A6; border-radius: 6px; padding: 12px 14px; margin: 10px 0; background: #eef4fb; }
@media (max-width: 640px) {
    .asscw-account-grid { grid-template-columns: 1fr; }
    .asscw-account-ro-label { flex-basis: 120px; }
}
