.gzb2b-dashboard{
	margin:24px 0;
}

.gzb2b-dashboard h2{
	margin:0 0 18px;
}

.gzb2b-card{
	background:#fff;
	border:1px solid #e3e3e3;
	border-radius:10px;
	padding:16px;
	margin:0 0 18px;
	box-shadow:0 1px 2px rgba(0,0,0,.04);
}

.gzb2b-card h3{
	margin:0 0 12px;
}

.gzb2b-inline-form{
	display:flex;
	gap:10px;
	align-items:center;
	flex-wrap:wrap;
}

.gzb2b-inline-form select{
	min-width:280px;
	max-width:100%;
}

.gzb2b-form-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:12px;
	margin:14px 0;
}

.gzb2b-form-grid label span{
	display:block;
	font-size:12px;
	font-weight:600;
	margin-bottom:4px;
}

.gzb2b-form-grid input{
	width:100%;
}

.gzb2b-checkbox{
	display:block;
	margin:8px 0;
}

.gzb2b-table-wrap{
	width:100%;
	overflow:auto;
}

.gzb2b-table{
	width:100%;
	border-collapse:collapse;
	font-size:14px;
}

.gzb2b-table th,
.gzb2b-table td{
	border-bottom:1px solid #eee;
	padding:8px;
	text-align:left;
	vertical-align:top;
}

.gzb2b-table th{
	background:#fafafa;
	font-weight:700;
	white-space:nowrap;
}

.gzb2b-edit-row td{
	background:#fcfcfc;
}

.gzb2b-mini-form{
	margin:0;
}

.gzb2b-origin{
	display:inline-block;
	padding:3px 7px;
	border-radius:99px;
	font-size:12px;
	background:#f2f2f2;
}

.gzb2b-origin-commercial_for_client{
	background:#e7f5ff;
}

.gzb2b-origin-client_direct{
	background:#edf7ed;
}

.gzb2b-active-client-notice{
	margin:12px 0;
	padding:12px 14px;
	border-left:4px solid #2271b1;
	background:#f0f6fc;
}

.gzb2b-active-client-notice a{
	margin-left:8px;
}

@media(max-width:700px){
	.gzb2b-form-grid{
		grid-template-columns:1fr;
	}

	.gzb2b-inline-form{
		display:block;
	}

	.gzb2b-inline-form select,
	.gzb2b-inline-form button{
		width:100%;
		margin-top:8px;
	}
}


/* v1.1 production */
.gzb2b-card details > summary{
	cursor:pointer;
}
.gzb2b-client-form button,
.gzb2b-inline-form button{
	cursor:pointer;
}
.gzb2b-active-client-notice{
	position:relative;
	z-index:2;
}


/* v1.2 — shortcode séparé de sélection client */
.gzb2b-client-search-label{
	display:block;
	margin-bottom:14px;
}

.gzb2b-client-search-label span{
	display:block;
	font-size:13px;
	font-weight:700;
	margin-bottom:5px;
}

.gzb2b-client-search{
	width:100%;
	max-width:560px;
}

.gzb2b-client-choice-list{
	display:grid;
	gap:9px;
}

.gzb2b-client-choice{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	padding:11px;
	border:1px solid #e6e6e6;
	border-radius:8px;
	background:#fff;
}

.gzb2b-client-choice[hidden]{
	display:none!important;
}

.gzb2b-client-choice-info{
	display:flex;
	flex-direction:column;
	min-width:0;
}

.gzb2b-client-choice-info small{
	opacity:.72;
	overflow-wrap:anywhere;
}

@media(max-width:700px){
	.gzb2b-client-choice{
		align-items:stretch;
		flex-direction:column;
	}

	.gzb2b-client-choice button{
		width:100%;
	}
}


/* v1.3 — validation commerciale et livraison */
.gzb2b-delivery-box{
	margin:18px 0;
	padding:15px;
	border:1px solid #e3e3e3;
	border-radius:9px;
	background:#fafafa;
}

.gzb2b-delivery-box h3{
	margin:0 0 10px;
}

.gzb2b-delivery-choice{
	display:block;
	margin:7px 0;
}

.gzb2b-delivery-date-wrap{
	margin-top:10px;
}

.gzb2b-delivery-date-wrap label{
	display:block;
	font-weight:700;
	margin-bottom:5px;
}

.gzb2b-approval{
	display:inline-block;
	padding:4px 8px;
	border-radius:999px;
	font-size:12px;
	font-weight:700;
	white-space:nowrap;
}

.gzb2b-approval-pending{
	background:#fff2df;
	color:#9a5800;
}

.gzb2b-approval-approved{
	background:#e8f7ed;
	color:#147a36;
}


/* v1.4 — filtre et tri des commandes par client */
.gzb2b-orders-toolbar{
	display:flex;
	align-items:flex-end;
	gap:10px;
	flex-wrap:wrap;
	margin:0 0 14px;
	padding:11px;
	background:#fafafa;
	border:1px solid #ececec;
	border-radius:8px;
}

.gzb2b-orders-toolbar label span{
	display:block;
	margin-bottom:4px;
	font-size:12px;
	font-weight:700;
}

.gzb2b-orders-client-filter{
	min-width:260px;
	max-width:100%;
}

.gzb2b-orders-count{
	font-size:13px;
	opacity:.72;
	margin-left:auto;
}

.gzb2b-sort-client{
	display:inline-flex;
	align-items:center;
	gap:5px;
	border:0;
	background:transparent;
	padding:0;
	font:inherit;
	font-weight:700;
	color:inherit;
	cursor:pointer;
}

.gzb2b-orders-table tr[hidden]{
	display:none!important;
}

.gzb2b-orders-empty-filter{
	padding:12px;
	background:#fff7e8;
	border-radius:7px;
}

@media(max-width:700px){
	.gzb2b-orders-toolbar{
		align-items:stretch;
		flex-direction:column;
	}

	.gzb2b-orders-client-filter,
	.gzb2b-orders-reset-filter{
		width:100%;
	}

	.gzb2b-orders-count{
		margin-left:0;
	}
}


/* v1.5 — bouton coloré création client */
.gzb2b-create-client-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	padding:10px 16px;
	border-radius:7px;
	background:#2271b1;
	color:#fff;
	font-weight:700;
	cursor:pointer;
	list-style:none;
	transition:filter .18s ease, transform .18s ease;
}

.gzb2b-create-client-button::-webkit-details-marker{
	display:none;
}

.gzb2b-create-client-button::after{
	content:"+";
	font-size:18px;
	line-height:1;
	font-weight:700;
}

details[open] > .gzb2b-create-client-button::after{
	content:"−";
}

.gzb2b-create-client-button:hover{
	filter:brightness(.92);
	transform:translateY(-1px);
}

details[open] > .gzb2b-create-client-button{
	margin-bottom:14px;
}

@media(max-width:700px){
	.gzb2b-create-client-button{
		width:100%;
	}
}


/* v1.8 — déconnexion et sections repliables */
.gzb2b-dashboard-header{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	flex-wrap:wrap;
	margin-bottom:18px;
}

.gzb2b-dashboard-header h2{
	margin:0 0 4px;
}

.gzb2b-commercial-identity{
	margin:0;
	opacity:.75;
}

.gzb2b-logout-button{
	background:#b32d2e!important;
	border-color:#b32d2e!important;
	color:#fff!important;
	text-decoration:none!important;
}

.gzb2b-logout-button:hover{
	filter:brightness(.92);
}

.gzb2b-collapsible-section{
	padding:0!important;
	overflow:hidden;
}

.gzb2b-section-summary{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:18px 20px;
	font-size:1.15em;
	font-weight:700;
	cursor:pointer;
	list-style:none;
	user-select:none;
}

.gzb2b-section-summary::-webkit-details-marker{
	display:none;
}

.gzb2b-section-arrow{
	width:11px;
	height:11px;
	border-right:2px solid currentColor;
	border-bottom:2px solid currentColor;
	transform:rotate(45deg);
	transition:transform .2s ease;
	flex:0 0 auto;
	margin-top:-5px;
}

.gzb2b-collapsible-section[open] > .gzb2b-section-summary .gzb2b-section-arrow{
	transform:rotate(225deg);
	margin-top:5px;
}

.gzb2b-section-content{
	padding:0 20px 20px;
}

.gzb2b-section-summary:hover{
	background:rgba(0,0,0,.025);
}

@media(max-width:700px){
	.gzb2b-dashboard-header{
		align-items:stretch;
		flex-direction:column;
	}

	.gzb2b-logout-button{
		width:100%;
		text-align:center;
	}

	.gzb2b-section-summary{
		padding:15px;
	}

	.gzb2b-section-content{
		padding:0 15px 15px;
	}
}


/* v1.9 — création rapide d’un client */
.gzb2b-form-help{
	margin:16px 0;
	padding:12px 14px;
	background:rgba(0,0,0,.035);
	border-radius:6px;
	line-height:1.5;
}
