		html, body {
			width: 100%;
			height: 100%;
			margin: 0;
		}

		/* Centre horizontalement */
		.center-wrapper {
			display: flex;
			justify-content: center;
			height: 100%;
		}

		/* Largeur fixe + hauteur max */
		.grid-container {
			width: 600px;
			height: 100%;
			margin: 25px;
			display: flex;
			flex-direction: column;
		}
		
		.theme-bar {
			display: flex;
			justify-content: flex-end;
			align-items: center;   /* 👈 centrage vertical */
			padding: 4px 0;
		}
		
		.datagrid-filter-row td,
		.datagrid-filter-row .textbox-text,
		.datagrid-filter-row .datagrid-editable-input{
			background: #e6f9ff;
		}
		
		.datagrid-header-row, .datagrid-row{
			height:26px !important;
			line-height: 26px !important;
		}
		
		.datagrid-filter{
			height: 25px !important;
			line-height: 25px !important;
		}
		
		/*.numberbox, .textbox, .textbox-focused, .textbox.combo, .textbox-text.validatebox-text{
			height: 25px !important;
			line-height: 25px !important;
		}*/
		
		/* Règle globale pour textbox normaux */
		.numberbox, 
		.textbox-focused, 
		.textbox.combo, 
		.textbox-text.validatebox-text {
			height: 25px !important;
			line-height: 25px !important;
		}

		/* Textbox normaux (pas multilignes) */
		.textbox:not(:has(textarea)) {
			height: 25px !important;
		}

		/* ✅ Conteneur des textbox multilignes */
		.textbox:has(textarea) {
			height: auto !important;
			/*min-height: 200px !important;*/ /* ou la hauteur que tu veux par défaut */
		}

		/* ✅ Label aligné en haut */
		.textbox:has(textarea) .textbox-label {
			height: auto !important;
			line-height: normal !important;
			padding-top: 6px !important;
		}

		/* ✅ Le textarea remplit tout l'espace disponible */
		.textbox:has(textarea) textarea.textbox-text {
			height: 100% !important;
			/*min-height: 180px !important; /* hauteur - padding */
			/*line-height: 2.5 !important;*/
			box-sizing: border-box !important;
		}
		
		.combobox-item{
			height: 25px !important;
			line-height: 25px !important;
			padding:0px !important;
			padding-left:5px !important;
		}
		
		.combobox-item-selected{
			height: 25px !important;
			line-height: 25px !important;
			padding:0px !important;
			padding-left:5px !important;
		}
		
		.combobox-item-hover{
			height: 25px !important;
			line-height: 25px !important;
		}
		
		.datagrid-editable-input{
			height: 25px !important;
			line-height: 25px !important;
		}
		
		.north-bar {
			display: flex;
			align-items: center;
			height:40px;
			position: relative; /* important */
		}

		.north-title {
			position: absolute;
			left: 50%;
			transform: translateX(-50%);
			margin: 0; /* on retire le margin: 0 auto */
			white-space: nowrap;
		}

		.north-side {
			flex: 1; /* chaque side prend 1 part égale */
		}

		.north-side.right {
			display: flex;
			justify-content: flex-end; /* colle à droite */
			margin-right: 5px; /* on retire ton margin-left: auto */
		}
		
		.north-side.left {
			display: flex;
			justify-content: flex-start; /* colle à gauche */
			padding-left: 5px;
		}